GNU/Linux >> Tutoriels Linux >  >> Linux

Disque dur - effacez les zones cachées telles que HPA et DCO après une infection par un logiciel malveillant

Donc, essuyez bêtement le lecteur avec DBAN (PRNG, 8 pass). Plus tard, j'ai appris que DBAN ne tue pas HPA (zone protégée de l'hôte) et DCO (superposition de configuration de lecteur)

Nous avons donc une admission de base ici, le lecteur a été effacé, il n'y a donc pas de table de partition, de système de fichiers ou de données sur le lecteur. Ainsi, il ne peut y avoir de corruption de données ou de corruption de système de fichiers car aucune n'existe, DBAN l'ayant assuré et donc l'avertissement HDPARM suivant n'est pas applicable.

hdparm a un inconvénient plus sérieux :il peut planter un ordinateur et rendre les données sur son disque inaccessibles si certains paramètres sont mal utilisés. Sur environ soixante-sept paramètres, plusieurs sont dangereux et peuvent entraîner une "corruption massive du système de fichiers" lorsqu'ils sont utilisés sans discernement.

Lancez votre disque de démarrage Linux et exécutez hdparm

Pour utiliser HDPARM pour effacer le HPA

Pour x =appareil que vous ciblez, utilisez la commande HDPARM suivante pour indiquer si vous avez activé un HPA.

# hdparm -N /dev/sdx

Il renverra quelque chose comme ce qui suit si vous avez défini un HPA :

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

Pour supprimer le HPA et étendre la zone visible à la taille totale du lecteur, utilisez le dénominateur dans le rapport ci-dessus (zone visible/secteurs max) :

# hdparm -N p78165360 /dev/sdx

Il recrachera un rapport indiquant que la zone visible est égale au nombre maximal de secteurs et que le HPA est désactivé.

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

Pour utiliser HDPARM pour vérifier si un DCO est en place et le rétablir aux paramètres d'usine

Étant donné que le DCO est mis en place par le fabricant, vous devez accepter que jouer avec lui risque de bloquer le lecteur. Mais c'est le moindre de vos problèmes si vous pensez que vous avez des logiciels malveillants sophistiqués qui pourraient réellement le déranger. Pour voir le DCO, utilisez la commande HDPARM suivante.

# hdparm --dco-identify /dev/sdx

Dans votre exemple, cela vous a donné :

/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

Ainsi, le fabricant de votre disque utilise DCO pour définir les modes de transfert de données autorisés (MDMA, UDMA), la taille réelle du disque (secteurs max) et les commandes ATA/SATA qui peuvent être désactivées.

Si vous souhaitez tenter de rétablir les paramètres d'usine par défaut du DCO, vous pouvez utiliser la commande HDPARM suivante :

# hdparm --dco-restore /dev/sdx

Il vous renverra l'avertissement suivant indiquant que la modification du DCO entraînera une perte totale de données. Considérez cela comme la modification de la taille de la partition ou l'effacement de la table de partition et sa restauration avec des paramètres incorrects. Sur un disque effacé, vous avez déjà perdu les données, hein ? Fondamentalement, un Désolé, vous n'avez pas sauvegardé vos données avant de continuer, vous êtes SOL si le DCO ne correspond pas après l'exécution de la commande et vous pensez que tout sera récupérable à partir du lecteur en raison de la réaffectation de la taille.

/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.

Selon les instructions, vous ajoutez le commutateur "J'accepte les conséquences" suivant :

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

Et il vous dit :

/dev/sdx:
issuing DCO restore command

J'ai eu un problème récent avec un lecteur de 1 To signalé comme 1 Ko et Disk Manager n'a signalé aucun support. J'ai utilisé un programme gratuit appelé DiskCheckup de Passmark.com.

Après avoir exécuté le programme et sélectionné le disque concerné, j'ai cliqué sur l'onglet "caché" pour trouver 3 zones de saisie. Le premier "Max User LBA" n'affichait que 1 :les deuxième et troisième (Native et Disk) affichaient le nombre correct. J'ai coché la case pour permettre la modification et j'ai tapé le bon numéro dans la première case afin que les 3 affichent le même nombre de LBA. Cliquez ensuite sur le bouton "Appliquer" :c'est terminé.

De retour dans le Gestionnaire de disques, j'ai cliqué sur "Réanalyser" dans le menu Actions et mes informations complètes sur la partition étaient de retour avec un accès complet au lecteur. Il se peut que vous deviez remplacer le MBR s'il s'agit d'un lecteur amorçable utilisant quelque chose comme EasyRE.

Désolé, je cherchais une réponse plus tôt et je n'avais pas réalisé qu'il s'agissait d'un site Linux et ma réponse ne s'applique qu'à Windows.


Linux
  1. Différence entre chat et '>' pour mettre à zéro un fichier ?

  2. Comment imprimer les lignes numéro 15 et 25 sur 50 lignes ?

  3. Différences entre volume, partition et lecteur ?

  4. Découvrir ce qui fait tourner le disque dur

  5. Signification des répertoires sur les systèmes Unix et de type Unix

Comment partitionner et formater un disque sous Linux

Comment trouver les détails du disque dur sous Linux

Comment zoomer et dézoomer des vidéos à l'aide de FFmpeg

Surveillance et test de la santé du SSD sous Linux

Comment nettoyer un disque dur en toute sécurité - étape par étape

Comment installer et configurer Linux Malware Detect (LMD) sur Linux