04 février 2011

Never forget

L'ordinateur est devant moi, encore dans son emballage plastique transparent. L'étiquette du scellé contient une information qui m'effraie déjà: une date préhistorique.

Je regarde cette machine avec un brin de nostalgie: il s'agit d'une marque aujourd'hui disparue, datant de l'époque où l'on parlait de machines "compatibles IBM pc". Le processeur est fièrement indiqué sur une étiquette en façade: Intel 286. Je me frotte les yeux.

Je brise le scellé, et j'ouvre l'unité centrale de l'ordinateur. Comme souvent, l'intérieur est très sale, d'une poussière pâteuse brunâtre de mauvais augure. Je regarde les différentes nappes de connexion, et je me demande comment je vais bien pouvoir relier tout cela à mon matériel d'analyse...

Quelques jours auparavant, j'avais reçu un coup de fil d'un magistrat me demandant si j'acceptais une mission d'analyse de contenu de disque dur concernant un dossier dans lequel l'ordinateur avait été mis sous scellé vingt ans auparavant. Une histoire criminelle concernant un mineur. La date de prescription approchant, un nouvel élément invitait le magistrat à réouvrir ce dossier et à demander une expertise sur un point précis à chercher sur l'ordinateur.

Un PC de 20 ans...

J'ai donc commencé par prendre des photos de toutes les étapes du démontage, en particulier du nettoyage, jusqu'à pouvoir extraire le disque dur de l'ordinateur. Je pose celui-ci sur mon bureau et déchiffre les inscriptions de l'étiquette: capacité du disque dur: 40 Mo... avec connecteurs SCSI 1ère génération.

Par acquis de conscience, je branche le vieil ordinateur nettoyé et sans disque pour voir, et bien sur: rien. Ni Bios, ni lueur d'espoir de lire quoique ce soit sur l'écran (vert, non je plaisante, VGA).

Problème: je ne dispose pas de bloqueur d'écriture au format SCSI pour lire ce vieux disque dur sans risque de le modifier.

Là, je me suis dit: c'est quand même bien de travailler dans une école d'ingénieurs ET d'être conservateur. Dès le lendemain, je fouillais dans mes archives professionnelles affectueusement dénommées "mon musée" pour dénicher tout ce qui ressemblait de près ou de loin à des nappes SCSI, des cartes SCSI, des bouchons SCSI, des câbles SCSI, des lecteurs DAT SCSI et même des disques durs SCSI...

De retour à la maison avec mon petit matériel, je me mets en tête de brancher le vieux disque dur sur une machine fonctionnelle. Ma vieille carte contrôleur SCSI étant au format EISA, je trouve dans mon stock de vieux PC une machine à bus éponyme. Je ressors aussi une carte réseau 10Mb/s au même format de bus pour brancher tout mon petit monde à mon réseau actuel. Je précise aux vieux qui me lisent, que j'aurais pu tout aussi bien monter un réseau BNC 10BASE2 avec des résistances de terminaison \O/

J'allume mon vieux 486, je règle le BIOS, je règle les interruptions avec des cavaliers sur les différentes cartes contrôleurs ajoutées. Je branche un vieux disque dur SCSI retrouvé dans mon musée, je branche un vieux lecteur cédérom SCSI récupéré sur une ancienne station de travail (une SGI O2) et je boote sur une (très) vieille distribution linux capable de reconnaître tout mon petit matériel. Instant magique que celui où les différents tests défilent sur l'écran au démarrage. Après plusieurs essais de différentes configuration, me voici avec une machine capable de lire un disque dur SCSI sans écrire dessus. Je précise que cette préparation m'aura pris deux week-ends...

Je fais un test avant/après en calculant les hash SHA1 avant et après prise d'image de mon disque dur de test. Les résultats m'indiquent que le disque dur n'a pas été modifié.

C'est risqué, mais je pense que cela suffira. Je branche le disque dur du scellé.

Après un temps objectif d'une vingtaine de minutes et subjectif de plusieurs heures de transpiration, me voici avec une image binaire identique au disque dur d'origine (secteurs défectueux y compris). Je range le disque dur dans son scellé.

Il y a plusieurs façon d'explorer une image de disque dur, j'en ai plusieurs fois parlé sur ce blog: à l'aide de commandes unix basées sur de jolies expressions régulières (tiens, Wikipédia appelle cela des expressions rationnelles, je le note), ou avec un logiciel inforensique du type EnCase, WinHex, FTK, SMART, TCT, TSK, Safeback, FRED, ou X-Ways (par exemple), ou simplement par conversion sous forme de machine virtuelle (avec LiveView par exemple).

Personnellement, j'essaye toujours d'abord la méthode "boot sous forme de machine virtuelle" qui me permet de "sentir" un peu l'organisation de l'ordinateur que j'ai à analyser.

Et voici que je me retrouve avec une machine sous Windows 3.1!
Vous savez, le système d'exploitation de Microsoft avant Windows 7, avant Vista, avant Windows XP, avant Windows Me, avant Windows 2000, avant Windows 98, avant Windows NT4, avant Windows 95, avant Windows 3.11 et avant Windows NT3.1... Pas facile de démarrer une machine virtuelle là dessus. Sans vouloir faire mon papy show, c'était l'époque des instructions HIMEM et EMM386 dans le fichier Config.sys, des Winsock.dll et autres vtcp.386 (bon, maintenant je sais que je fais très papy). Cela fait quand même très bizarre de ne pas avoir de menu contextuel, et pas une seule image JPEG. Et en fin de compte, les outils de recherche sur les contenus de fichiers ne marchaient pas beaucoup moins bien qu'aujourd'hui.

Mais finalement, j'ai pu mener à bien ma mission et rendre mon rapport. Mon seul regret: ne pas avoir parlé de toute la misère technique rencontrée, le magistrat se moquant bien de cet aspect de mon travail.

C'est une des raisons d'être de ce blog :)

23 commentaires:

  1. Énormément d'admiration et de respect pour l'aspect technique.

    RépondreSupprimer
  2. Wikipedia a raison, on dit bien "expression rationnelle", ce n'est que par erreur de traduction de l'anglais "regular expression" qu'on dit "régulière".

    RépondreSupprimer
  3. Ceci dit, le système d'exploitation était un MS Dos (6.0 normalement, le 3.1 étant incompatible avec le 5.0 si j'ai bonne mémoire au contraire du 3.0). Windows 3.1 n'était qu'une surcouche graphique. D'où les problèmes d'Emm386 et autres HiMem.Sys d'ailleurs !
    Mis à part ça, bravo pour être autant conservateur !

    RépondreSupprimer
  4. Merci !
    Ca m'a rappelé ma jeunesse (si,si, j'avais tout juste dix ans y'a vingt ans....) et mon premier pc.... (combien de fois j'ai pu réinstaller winwin......)
    PS : Faut pas jeter les vieiiles stations du genre de l'O2, c'est trop joli et trop interessant comme matériel pour finir au recyclage.....

    RépondreSupprimer
  5. Et quel est la très vieille distribution Linux qui a permis de faire démarrer ce matériel antique ?

    RépondreSupprimer
  6. Joli. La morale de cette histoire est que les scellés judiciaires de matériels informatiques devraient s'accompagner de scellés numériques sur systèmes sauvegardés.

    Parce que là, déjà, je suis surpris qu'un disque dur vieux de 20 ans accepte de fonctionner.

    RépondreSupprimer
  7. quand l'informatique ressemble à l'archéologie!

    Hasard du calendrier je viens de faire un lien sur mon blog vers une vidéo canadienne montrant de jeunes enfants découvrant des objets informatiques des années 1980-90 (http://ntdroit.wordpress.com/2011/02/04/deux-videos-a-partager/)

    RépondreSupprimer
  8. @jihefge: Ma vieille station SGI O2 trône en bonne place dans mon "musée". Il n'est pas question de la jeter:)

    @Pierre: Une debian Potato. Ce n'est pas la plus vieille distribution, mais c'est la 1ère qui a fonctionné sur le matériel concerné. Je garde dans mes archives un cédérom d'Yggdrasil Linux, mais je n'ai pas eu encore à m'en servir.

    @DM: J'ai beaucoup croisé les doigts, je ne sais pas si cela a aidé. Je n'aime pas faire appel aux sociétés de récupération de données, surtout pour des vieux disques (pour des raisons de coût).

    RépondreSupprimer
  9. @DM ça lui aurait fait une belle jambe de se retrouver avec une centaine de disquettes 5" ¼ ;-)

    RépondreSupprimer
  10. @Nicolas: C'est bien ce que je dis, les données devraient être recopiées sur des systèmes informatiques pérennes et sauvegardés, dès le début de la procédure.

    Comme vous le soulignez, le scellé aurait pu contenir des disques 5.25" démagnétisées!

    RépondreSupprimer
  11. Le magistrat qui a pris la peine d'appeler, avec la précision de l'âge du matos, avant de confier l'expertise devinait je pense un minimum les difficultés... et saura se souvenir de cette réussite.

    De quoi relativiser la déception d'être allé à l'essentiel pour la clarté du rapport!?

    Moi j'aimerais en tout cas bien savoir quelle VM a su faire tourner cette image?

    Quand je pense à tout ce qui est foutu en l'air actuellement par les entreprises, au fur et a mesure des fusions/acquisitions et déménagements qui les accompagnent... bien favorisées par la crise en cours... et qui pourraient être très utiles, à condition d'avoir de la place et l'accord de l'employeur pour récupérer tout cela...

    Des générations de Sun des années 90, récemment encore...

    RépondreSupprimer
  12. Un coté nostalgique.
    Mais avec des machines mille fois plus puissantes et des OS bien plus lourds, on n'en fait pas beaucoup plus aujourd'hui.
    Bravo, ce n'était pas gagné d'avance.

    RépondreSupprimer
  13. Question bête : dans des opérations risquées et ou complexe, avez vous le droit de sous traiter auprès d'un spécialiste de récupération de données ?
    Dans ce cas, qui prend en charge le cout de l'opération ?

    RépondreSupprimer
  14. @ersotrate103: La question est loin d'être bête. Je peux sous-traiter des plusieurs manières: être présent lors des opérations faites par quelqu'un d'autre, demander l'autorisation au magistrat de faire une sous-traitance, ou refuser l'expertise au motif qu'elle est trop complexe pour moi.

    En fonction des cas, de l'urgence et des coûts, je ferai l'avance financière (remboursable à la Saint Glinglin) ou la Justice paiera directement le sous-traitant (à la Saint Glinglin également).

    RépondreSupprimer
  15. bravo pour la performance.
    Mais s'il s'agit de recheche de fichier, pourquoi ne pas se limiter à un dr-dos ou à lire le système de fichiers sous Debian ?

    RépondreSupprimer
  16. Ah je n'y comprends rien, mais j'aimerai éternellement lire ça.

    RépondreSupprimer
  17. Justement que faîtes vous lorsque le DD lâche ?

    Certaines sociétés possèdent des salles blanches où elles proposent démontages et des récupérations de données mais à des tarifs prohibitifs. Avez-vous jamais fait appelle à elles ?

    RépondreSupprimer
  18. @Beldeche: A chaque fois que cela m'est arrivé, j'ai fais faire un devis par une société spécialisée et transmis au magistrat en charge de l'expertise, qui à chaque fois m'a demandé de ne pas pousser plus loin.

    Les charges trouvées par ailleurs suffisaient.

    RépondreSupprimer
  19. Vous est-il arrivé de tomber sur un disque dur entièrement crypté (par ex. avec true crypt), ce qui peut être assez suspect mais risque d'arrêter net les investigations ?

    RépondreSupprimer
  20. @anonyme: A chaque fois que j'ai rencontré un cas comme celui dont vous parlez, j'ai commencé par récupérer tous les mots de passe de l'utilisateur (compte email, login windows, etc). Les fois où cela n'a pas suffi, j'en ai rendu compte aux enquêteurs qui ont demandé gentiment à l'utilisateur son mot de passe. Et à chaque fois, j'ai obtenu le mot de passe. Le jour où je n'aurai pas le fameux sésame, j'en rendrai compte dans mon rapport. N'oubliez pas: "à l'impossible, nul n'est tenu".

    RépondreSupprimer
  21. Hmmm, je croyais qu'il était possible crypter y compris le disque ou réside le système d'exploitation.
    Sinon on a quand même la possibilité d'avoir 2 mots de passe, décryptant de manière totalement différente un disque.

    Pour info la jurisprudence aux EU sur la question (peut-on "obliger" qqun à donner son mot de passe):

    http://arstechnica.com/tech-policy/news/2009/03/court-self-incrimination-privilege-stops-with-passwords.ars

    Et merci pour vos billets intéressants !

    RépondreSupprimer
  22. @Anonyme: Je ne suis jamais tombé sur un dossier où tout le disque était chiffré. Par contre, j'ai déjà eu un cas de container TrueCrypt chiffré avec 2 mots de passe.

    Le premier (fourni spontanément dans le dossier) donnait accès à un très faible nombre de fichiers dont la date de création était plutôt ancienne.

    J'ai demandé le "vrai" mot de passe comme expliqué dans ma réponse précédente. Je l'ai eu, et j'ai pu accéder au bon container.

    RépondreSupprimer

Lectrice, admiratrice, avocate, magistrate, programmeuse, dessinatrice, chère consœur, femmes de tous les pays, lecteur, j'ai toute confiance en vous pour prendre bien soin de vérifier que votre prose est compatible avec les normes orthographiques et grammaticales en vigueur. Et si vous pouviez éviter les propos insultants ou haineux, je vous en serais reconnaissant.
N'hésitez pas à respecter ces quelques règles qui peuvent même s'appliquer en dehors de ce blog.

Les commentaires sur ce blog sont modérés. Votre message apparaîtra sur le blog dès que le modérateur l'aura approuvé. Merci de votre patience.