Disco rígido - elimine "áreas ocultas" como HPA e DCO após infecção por malware


9

Fundo:

Eu tenho algum malware no Windows, possivelmente um rootkit ou bootkit. Eu não queria correr nenhum risco, então, tolamente, limpei minha unidade com DBAN (PRNG, 8 passes). Mais tarde soube que o DBAN não mata o HPA (Área Protegida de Host) ou o DCO (Sobreposição de Configuração de Unidade), que são "áreas ocultas" usadas por alguns discos rígidos.

Vi que o HDDErase fabricado pelo CMRR pode remover o HPA e o DCO, se presente, mas o projeto foi interrompido em 2005 ou 2007. Então, eu vim para o Linux hdparmna esperança de que ele limpe meu HDD 100% para poder instalar o Windows novamente em um disco rígido 100% limpo. Como um aparte, também observei o "BC Wipe Total Wipeout", que faz a remoção de HPA e DCO, mas custa US $ 50.

Eu sou um usuário comum de computador com pouca habilidade no Bash, ou seja, eu realmente não sei o que estou fazendo.

Questões:

Minha unidade é uma unidade Seagate de 320 GB e 7200 RPM.

A saída de sudo hdparm --dco-identify /dev/sda:

/dev/sda:
DCO Revision: 0x0001
The following features can be selectively disabled via DCO:
    Transfer modes:
         mdma0 mdma1 mdma2
         udma0 udma1 udma2 udma3 udma4 udma5 udma6(?)
    Real max sectors: 625142448
    ATA command/feature sets:
         SMART self_test error_log security HPA 48_bit
         (?): selective_test conveyance_test write_read_verify
         (?): WRITE_UNC_EXT
    SATA command/feature sets:
         (?): NCQ interface_power_management SSP
  1. O que essa saída significa? Como garantir que não haja possibilidade de malware permanecer no HPA DCO?

  2. Existe uma maneira de descobrir o tamanho em termos de GB em vez de setores?

  3. Fará hdparmuma limpeza completa de todos os malwares que residem no HPA e no DCO?

Eu também vi isso na página do Wiki e fiquei um pouco preocupado:

O hdparm tem uma desvantagem mais séria: pode travar um computador e tornar os dados em seu disco inacessíveis se certos parâmetros forem mal utilizados. Dos aproximadamente sessenta e sete parâmetros, vários são perigosos e podem resultar em "corrupção massiva do sistema de arquivos" quando usados ​​indiscriminadamente.


O hdd possui UNIDADE DE APAGAMENTO DE SEGURANÇA AUMENTADA. Isso será útil para eliminar o HPA e o DCO?
Deen

3
Você acabou de limpar o disco inteiro, incluindo todos os sistemas de arquivos, e está preocupado com a corrupção do sistema de arquivos?
Hennes

aparentemente o disco rígido está "congelado" para impedir que o malware apague
Deen


@ Henes - desculpe, eu não entendo. Você pode ter perdido que eu sou um usuário médio. por favor, explique o que você disse.
Deen

Respostas:


10

Então, limpe unidade com DBAN tolamente (PRNG, 8 pass). Mais tarde soube que o DBAN não mata o HPA (área protegida do host) e o DCO (sobreposição de configuração da unidade)

Portanto, temos uma admissão básica aqui, a unidade foi limpa, portanto, não há tabela de partição, sistema de arquivos ou dados na unidade. Portanto, não pode haver corrupção de dados ou corrupção do sistema de arquivos, pois não existe, a DBAN garantiu isso e, portanto, o seguinte aviso HDPARM não é aplicável.

O hdparm tem uma desvantagem mais séria: pode travar um computador e tornar os dados em seu disco inacessíveis se certos parâmetros forem mal utilizados. Dos aproximadamente sessenta e sete parâmetros, vários são perigosos e podem resultar em "corrupção massiva do sistema de arquivos" quando usados ​​indiscriminadamente.

Inicie seu disco de inicialização do Linux e execute hdparm


Para usar o HDPARM para limpar o HPA

Para x = dispositivo que você está segmentando, use o seguinte comando HDPARM para mostrar se você tem um HPA ativado.

# hdparm -N /dev/sdx

Ele cuspirá algo como o seguinte se você tiver um HPA definido:

/dev/sdx:
max sectors   = 78125000/78165360, HPA is enabled

Para remover o HPA e expandir a área visível até o tamanho máximo da unidade, use o denominador no relatório acima (área visível / setores máximos):

# hdparm -N p78165360 /dev/sdx

O relatório mostra que a área visível é igual ao máximo de setores e que o HPA está desativado.

/dev/sdx:
setting max visible sectors to 78165360 (permanent)
max sectors   = 78165360/78165360, HPA is disabled

Para usar o HDPARM para verificar se um DCO está no lugar e configurá-lo de volta aos padrões de fábrica

Como o DCO é configurado pelo fabricante, você deve aceitar que mexer com ele possivelmente afetará a unidade. Mas esse é o menor dos seus problemas, se você acha que possui algum malware sofisticado que pode realmente mexer com ele. Para ver o DCO, use o seguinte comando HDPARM.

# hdparm --dco-identify /dev/sdx

No seu exemplo, ele deu a você:

/dev/sda:
DCO Revision: 0x0001
The following features can be selectively disabled via DCO:
    Transfer modes:
         mdma0 mdma1 mdma2
         udma0 udma1 udma2 udma3 udma4 udma5 udma6(?)
    Real max sectors: 625142448
    ATA command/feature sets:
         SMART self_test error_log security HPA 48_bit
         (?): selective_test conveyance_test write_read_verify
         (?): WRITE_UNC_EXT
    SATA command/feature sets:
         (?): NCQ interface_power_management SSP

Portanto, o fabricante da sua unidade usa o DCO para definir os modos de transferência de dados permitidos (MDMA, UDMA), o tamanho real da unidade (setores máximos) e os comandos ATA / SATA que podem ser desativados.

Se você quiser tentar reverter o DCO de volta aos padrões de fábrica, poderá usar o seguinte comando HDPARM:

# hdparm --dco-restore /dev/sdx

Ele retornará o aviso a seguir: a alteração do DCO causará perda total de dados. Pense nisso como alterar o tamanho da partição ou apagar a tabela de partições e restaurá-la com parâmetros incorretos. Em um disco limpo, você já perdeu os dados, não é? Basicamente, lamentamos que você não tenha feito backup dos seus dados antes de continuar, você é SOL se o DCO não corresponder após a execução do comando e você acha que algo será recuperável da unidade devido à reatribuição do tamanho.

/dev/sdx:
Use of --dco-restore is VERY DANGEROUS.
You are trying to deliberately reset your drive configuration back to
the factory defaults.
This may change the apparent capacity and feature set of the drive,
making all data on it inaccessible.
You could lose *everything*.
Please supply the --yes-i-know-what-i-am-doing flag if you really want this.
Program aborted.

De acordo com as instruções, você adiciona a seguinte opção "Eu aceito as consequências":

# hdparm --yes-i-know-what-i-am-doing --dco-restore /dev/sdx

E isso diz a você:

/dev/sdx:
issuing DCO restore command

2
linux.die.net/man/8/hdparm - A página de manual hdparmé a mais assustadora que eu já vi.
9139 LawrenceC

1
Sim, e qualquer coisa que mexa com firmware que não seja explicitamente entendida pode resultar e, em alguns casos , resultará em um tijolo de alumínio com coisas brilhantes discóides redondas e um ímã muito poderoso por dentro.
Fiasco Labs

Como não quero bloquear minha unidade, não executei o comando de restauração do DCO. Vou seguir em frente com uma restauração do Windows e ver o que acontece. Se eu receber malware, jogarei fora o meu disco rígido e adquirirei um novo. Espero que funcione, a menos que seja como o malware "Rakshasa", que alega que pode infectar o BIOS e permanecer muito mais persistente :) google.com/…
Deen

boas informações sobre a recuperação do HPA sem reinicialização (bem como redefinição do DCO): blog.asiantuntijakaveri.fi/2012/07/…
akostadinov

2

Eu tive um problema recente com uma unidade de 1 TB relatada como 1 KB e o Disk Manager não relatou nenhuma mídia. Eu usei um programa gratuito chamado DiskCheckup do Passmark.com.

Depois de executar o programa e selecionar o disco afetado, cliquei na guia 'oculto' para encontrar 3 caixas de entrada. O primeiro 'Max User LBA' mostrou apenas 1: o segundo e o terceiro (Nativo e Disco) mostraram o número correto. Marquei a caixa de seleção para permitir alterações e digitei o número correto na primeira caixa para que todos os 3 mostrassem o mesmo número de LBA. Em seguida, clique no botão 'Aplicar': pronto.

De volta ao Gerenciador de discos, cliquei em 'redigitalizar' no menu Ações e minhas informações completas sobre a partição estavam de volta com acesso total à unidade. Pode ser que você precise substituir o MBR se for uma unidade inicializável usando algo como EasyRE.

Desculpe, estava procurando uma resposta anteriormente e não tinha percebido que era um site Linux e minha resposta se aplica apenas ao Windows.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.