Suicidows
Lucidiot —
Informatique —
2017-10-26
Résultats d'expériences de torture de machine virtuelle.
Un jour, en plein BTS, je m'étais beaucoup ennuyé — comme d'hab. Cependant, j'avais mon laptop, branché sur son chargeur, et deux machines virtuelles, une Debian et une Windows 7. J'ai décidé pour m'occuper un peu de m'amuser à tester la non-résistance de Windows à la perte de fichiers critiques, et puis j'ai continué dans le train.
Méthode
- Démarrage d’une machine virtuelle Debian avec le disque dur de la machine virtuelle Windows 7 en esclave ;
- Restauration des éventuels fichiers détruits précédemment ;
- Copie de sauvegarde du fichier à détruire ;
- Destruction du fichier sur le disque dur esclave ;
- Arrêt de Debian ;
- Démarrage de la machine Windows 7 ;
- Captures d’écran et consignation des résultats.
Résultats
Noyau Windows
Quoi de mieux pour commencer les hostilités que d'arracher le cœur même du système, ce qui le fait fonctionner ? C'est le boulot de ntoskrnl
, qui est le noyau Windows, le petit programme qui s'enclenche au démarrage. En le supprimant, hélas, l'outil de redémarrage système est trop fort et arrive à sauver le système.
winlogon
Winlogon est un programme destiné à gérer la fonction d'authentification du système : appuyer sur Ctrl+Alt+Suppr, détecter des serveurs d'identifiants Active Directory sur le réseau, charger le profil utilisateur à la connexion, etc. Il est parfois mal aimé des versions pirates puisqu'il vérifie la licence de Windows depuis Windows XP. En le supprimant, on a un écran bleu et l'outil de redémarrage système s'ouvre.
explorer
Encore un autre programme que tout le monde connaît : l'explorateur Windows. Il se charge également d'afficher les icônes sur le Bureau et d'afficher la barre des tâches. L'appui de Ctrl+Alt+Suppr n'est pas géré par lui, ce qui permet de le réexécuter sans redémarrer quand il plante, mais le raccourci Ctrl+Shift+Échap dans les versions les plus récentes de Windows l'est. En supprimant l'explorateur, le bureau est simplement vide. Tout fonctionne, même des boîtes de dialogue d'ouverture par exemple, à condition de savoir les ouvrir sans l'explorateur de fichiers.
shell32.dll
Toutes les personnes qui ont essayé de modifier l'icône d'un dossier pour y mettre le magnifique arbre connaissent SHELL32.dll
: la bibliothèque d'icônes de l'interface utilisateur de Windows, et ce depuis le début de Windows. Sa suppression est assez amusante ! On obtient des messages d'erreur un peu partout, le bureau ne s'affiche pas, et les options de sécurité (le menu s'affichant avec Ctrl+Alt+Suppr) s'ouvrent et s'affichent avec un message d'erreur et aucun bouton ne fonctionne.


Registre et services Windows
En fouillant un petit moment dans system32
, je suis tombé sur les fichiers du registre Windows, et sur quelques autres programmes associés au registre et aux services de Windows. Du très sensible donc.
- HKEY_LOCAL_MACHINE\System : Contient des paramètres liés directement à Windows. L'outil de redémarrage système est enclenché immédiatement et n'est pas fonctionnel en le supprimant ;
- HKEY_LOCAL_MACHINE\Security : Paramètres de sécurité du système. Arrêt spontané après l'écran de démarrage en les supprimant ;
- HKEY_LOCAL_MACHINE\Software : Paramètres liés aux logiciels fournis avec Windows ou installés par la suite. Écran bleu avec le message
BAD_CONFIG_SYSTEM_INFO
en les supprimant ; - HKEY_LOCAL_MACHINE\SAM : Historiquement, la SAM est la zone où les données de comptes utilisateur sont stockés de manière supposément sécurisée. Arrêt spontané après l'écran de démarrage en la supprimant ;
- HKEY_USERS : Paramètres spécifiques à chaque utilisateur. Arrêt spontané après le boot screen en les supprimant.


- sc.exe : Une commande de l'invite de commandes pour gérer les services Windows. Aucun dysfonctionnement en la supprimant ;
- svchost.exe : Un processus destiné à héberger plusieurs services dans des threads séparés d'un même processus, pour gagner en performances. Écran noir avec curseur sans lui ;
- regsvc.dll : Une DLL supposée fournir un service Windows du Registre. Aucun dysfonctionnement apparent ;
- ADVAPI32.DLL : Une DLL du sous-système Win32 fournissant vraiment toutes les fonctionnalités d'accès au registre. Écran noir avec curseur sans elle.
Dossiers de Windows
Manquant un peu d'inspiration pour la suite, je me suis mis à supprimer des dossiers entiers.
- C:\Users : Affichage de “Préparation du Bureau” après la connexion, comme lorsqu'on crée un nouvel utilisateur, mais le dossier ne se recrée pas, toute la configuration d’affichage ne fonctionne pas et plusieurs logiciels sont en panne ;
- C:\Windows\Fonts : L'outil de redémarrage système est enclenché immédiatement et répare les polices par défaut très lentement ;
- C:\Windows\Cursors : Écran noir sans curseur de souris ;
- C:\Windows\Media : Écran noir sans curseur suivi d'un redémarrage automatique, le mode sans échec ne fonctionne pas.




NTDLL
NTDLL.DLL
est la première couche d'abstraction chargée par le noyau et contient les fonctionnalités les plus basiques. En le supprimant, on obtient un écran bleu ayant pour message PROCESS1_INITIALIZATION_FAILED
.
HAL
La HAL, ou Hardware Abstraction Layer, dans HAL.DLL
, est la première couche d'abstraction matérielle de Windows. Tous les logiciels sont censés l'utiliser pour accéder aux périphériques de l'ordinateur. Quand elle est supprimée, l'outil de redémarrage système s'enclenche et parvient à la restaurer. Dommage !
Win32
En me renseignant sur Wikipédia, j'ai pu commencer à torturer un peu les couches les plus importantes du noyau Windows et du sous-système Win32.
- KERNEL32.DLL : La génoise du sous-système Win32 ;
- GDI32.DLL : Le nappage, fournit des fonctions graphiques très simples telles que le tracé de lignes ou d'ellipses à l'écran ;
- USER32.DLL : Les petits vermicelles du gâteau, rajoute des fonctions pour le dessin des composants d'interface utilisateur comme les boutons ou les fenêtres.
Supprimer une seule de ces trois DLL cause un arrêt spontané après l'écran de démarrage.
COMCTL et COMDLG
Ces deux DLL sont censées fournir des fonctionnalités pour les boîtes de dialogue d'ouverture ou d'enregistrement de fichier. En supprimant COMCTL32.DLL
, rien ne change ; par contre, en supprimant COMDLG32.DLL
, certains logiciels tels que Paint ou WordPad refusent purement et simplement de démarrer.
Connexions réseau

- WS2_32.DLL : Fournit Winsock, les fonctionnalités TCP/IP de Windows. Aucun impact notoire, étonnament ; mais puisque la connexion Internet ne pouvait pas être testée dans le train, je n'en sais pas grand chose ;
- NETAPI32.DLL : Fournit des fonctions d'administration des cartes réseau. En la supprimant, un message d’erreur s'affiche lors des ouvertures et fermetures de session et de l'affichage des options de sécurité, quelques panneaux de configuration sont également hors course mais le système reste globalement stable et utilisable.
dllhost
Un des programmes que je n'ai jamais vu avant Windows Vista est dllhost.exe
, qui semble être un programme conçu pour exécuter des applications contenues dans des DLL. Je trouve ça assez étrange et tordu, pourquoi ne pas faire un simple .exe
? Mystère. Quoi qu'il en soit, le supprimer rend inopérante la visionneuse de photos Windows, entre autres.
CSRSS
csrss.exe
est le sous-système client-serveur lors de l'exécution, par traduction littérale de son acronyme. Il fournit normalement les fonctionnalités du sous-système Win32 côté utilisateur (en dehors du noyau). Il est notamment responsable de l'arrêt de l'interface graphique, puisque la plupart de ses fonctionnalités ont été déplacées côté noyau depuis Windows NT 4.
L'article Wikipédia sur le sujet mentionne le déclenchement d'un écran bleu si on tue le processus ou qu'on le supprime. Tuer csrss.exe
a effectivement été pendant un bon moment un excellent moyen de déclencher rapidement et efficacement un BSoD ; le gestionnaire des tâches avertit d'ailleurs depuis Windows 7 que tuer ce processus causera ledit BSoD. Cependant, en le supprimant, on n'a non pas droit à un écran bleu mais un arrêt spontané de l'ordinateur juste après l'écran de démarrage. Erreur de Wikipédia !
Moins intéressant
- WINMM.DLL : Fournit des fonctionnalités audio. Aucun dysfonctionnement apparent, même sur le lecteur Windows Media ou les sons du système ;
- rundll32.exe : Permet d'exécuter des programmes contenus dans des DLL, à la manière de dllhost. Rien ne se passe en le supprimant.
Conclusion
Les tests nous ont démontré qu'un bon nombre des programmes supposément importants de Windows ne servent en fait à rien ; le maintien de leur présence est probablement dû à des besoins de rétrocompatibilité, notamment avec les systèmes 32-bits.
On constate également que l'outil de redémarrage système a été conçu seulement pour restaurer une mince partie des fichiers système. De plus, la restauration s'effectue à l'aide de WinSxS
, un dossier content une sorte d'archive fortement réduite des fichiers d'installation de Windows. Des logiciels de nettoyage s'amusent souvent à se débarasser de ce dossier, rendant donc l'outil de redémarrage totalement inutile.
Enfin, les tests montrent clairement l'assez grande facilité que l'on a à détruire Windows avec un unique fichier ; ce qui est assez normal quand on touche au noyau, mais il reste toujours aussi anormal que la suppression ou la corruption d'un des fichiers ne soit pas suffisamment prise en compte par les documentations d'aide à la résolution des problèmes.
N'hésitez pas à me suggérer de nouveaux fichiers ou dossiers à supprimer ou des fonctionnalités à triturer. Je dispose encore d'une machine virtuelle Windows 7 prête à souffrir en cas de besoin.
Commentaires
Il n'y a pour l'instant aucun commentaire. Soyez le premier !