Comment effacer en toute sécurité un disque SATA arbitraire, en utilisant le micrologiciel du disque pour le faire?

2

Le problème avec l'Utilitaire de disque ou dd if=/dev/zeropour effacer un disque est le suivant:

  1. Il applique une usure inutile aux disques SSD.

  2. Il envoie la valeur de la capacité du lecteur de zéros sur l'interface du lecteur. Si vous utilisez un ancien Mac doté de ports USB 2 peu performants, cela prendra beaucoup plus de temps que nécessaire. Cela va également taxer votre processeur et votre sous-système USB en envoyant tous ces zéros.

  3. La suppression sécurisée basée sur un microprogramme peut être beaucoup plus rapide que l'envoi de zéros au lecteur, même sur des lecteurs de plateau en rotation. Pour les lecteurs prenant en charge le cryptage, ce sera presque instantané, car tout ce que le lecteur doit faire est d’écraser les clés de cryptage et les données deviennent inutiles. Sur ces disques et sur les SSD, l’effacement sécurisé devrait prendre entre 1 et 4 minutes (!).

Tous les lecteurs modernes prennent en charge les commandes ATA Secure Erase . Ces commandes permettent au micrologiciel du lecteur d’effacer les données.

Sous Linux, l' utilitaire hdparm expose cette fonctionnalité à l'utilisateur - voir les hdparm --security-helpdétails.

Malheureusement, hdparmOS X n’est pas disponible, car OS X ne fournit aucun moyen à l’utilisateur d’envoyer des commandes SATA arbitraires au lecteur :(

Existe-t-il une solution de contournement facile?

Kuba Ober
la source

Réponses:

1

Il y a trois façons de gérer cela:

  1. OS X fournit un bon accès utilisateur à n’importe quel périphérique USB. Par conséquent, si vous souhaitez associer hdparm à un pilote de stockage USB, il est possible d’utiliser hdparm sur des périphériques connectés par USB pour effectuer un effacement sécurisé.

  2. Vous pouvez également écrire un pilote de noyau pour exposer cette fonctionnalité au domaine utilisateur.

  3. Enfin, vous pouvez utiliser une machine virtuelle exécutant Linux, car VMware Fusion et VirtualBox exposent les périphériques USB à l'invité. Je vais détailler cette dernière solution ici.

Les étapes sont les suivantes:

  1. Achetez un boîtier de disque dur USB 2 ou USB 3. J'ai vérifié que le dock NexStar NST-D306S3 fonctionne parfaitement.

  2. Branchez-le sur un port USB 2. Je ne l'ai jamais eu avec les ports USB 3, à cause de bugs dans le noyau Linux.

  3. Configurez une nouvelle machine virtuelle et associez une image systemrescuecd au lecteur de CD virtuel. La VM n'a pas besoin de disque dur et n'a besoin que de 256 Mo de RAM.

  4. Démarrez la VM. Connectez le lecteur à la machine virtuelle.

  5. Assurez-vous qu'un seul périphérique USB est connecté à la machine virtuelle. Ce périphérique de stockage sera disponible en tant que /dev/sda.

  6. Émettez les commandes suivantes sur la console de sysrescuecd:

    hdparm --user-master u --security-set-pass NULL /dev/sda
    hdparm --user-master u --security-erase NULL /dev/sda
    

    C'est ça. Votre lecteur sera complètement effacé par son propre micrologiciel, sans utiliser une quantité appréciable de bande passante USB, de CPU, ni d'endurance en écriture du lecteur (pour les SSD). Cela fonctionne parfaitement, même sur le premier Mac Intel, et ne ralentira pas la machine. Vous pouvez utiliser VMware Fusion ou VirtualBox, les deux fonctionnent également bien à cet effet.

Kuba Ober
la source