Nettoyage dans les délais...
Par Nono,
vendredi 16 mai 2008 à 07:47 :: Invités
:: lu 1770 fois :: #273
:: rss
:: atom
Read it in english with Google

'avoue avoir été surpris et flatté lorsque Sid m'a proposé de poster dans son blog. Le concept est amusant et puis finalement c'est un peu comme faire le talk d'une présentation d'un camarade.
Tout commençait pourtant bien, il était vendredi après-midi, mon chef m'autorisait à utiliser Word pour faire un compte rendu. Lorsque je reçois un mail très explicite de mon père : "Problème avec le PC de Mme Delaie, peux-tu corriger le problème stp ?". Je replace un peu le contexte. Mme Delaie est un peu à l'informatique ce que aping est au serveur web : un prédateur. "le PC de Mme Delaie" est en fait un vieux PC que mon père a eu la bonne idée de lui donner sans mon autorisation (j'ai abandonné l'idée de lui expliquer pourquoi donner un PC à une personne, même de confiance, est louable, mais nécessite un petit nettoyage). Quand je dis vieux PC ; je parle d'un bon vieux Windows 2000 SP4 jamais mis à jour avec un vieux Norton (désactivé). Mme Delaie veut en effet faire comme son fils (et Flavie Flament) : surfer sur la toile et écrire des emails. Chose amusante, son fils possède un Windows Vista tout neuf qui démarre plus lentement que le Windows 2000 légué.
Ce qui devait arriver arriva. Mme Delaie a branché la bête de course en frontal sur Internet... J'estime à quelques heures ou minutes le temps de compromission du poste. Bien entendu quand je parle de compromission, je parle de bots ou vers mal programmés. Je me déplace chez elle. Évidemment le mot de passe administrateur est vide, les partages ouverts aux quatre vents, aucun pare-feu ou antivirus à jour qui auraient pu retarder la sentence. Enfin, comme je le craignais aucun correctif de sécurité n'a été appliqué. Un coup de Task Manager me montre qu'il y a du monde. Je procède donc à un premier questionnaire : est-ce que des boîtes de dialogue apparaissent de manière impromptue et disparaissent (je montre un cmd.exe) ? Oui. Est que Internet Explorer affiche des pages sans rien faire ? Oui. Le PC fait "ding" et présente des messages d'erreurs (en anglais) ? Oui. Multiplication des écrans bleus depuis quelque temps ? Non. Questions en apparence anodines, mais je vous assure qu'assez rapidement on est fixé sur l'état de compromission du poste. Je retrousse les manches et demande un mug de café.
Je n'avais aucune intention de retrouver l'origine des attaques, car comme je l'ai déjà évoqué, il s'agit surement d'attaque automatique exploitant une vulnérabilité, un mot de passe vide ou tout autre artifice. De manière académique, si le poste est compromis, je ne peux rien faire, il faut tout réinstaller (en effet on va me sortir des rootkits truc-furtifs). Peut-être, mais après il faut savoir apprécier les menaces et sans indice supplémentaire, je pense que tous les malwares présents sont facilement détectables. Ce qui me gêne plus c'est si une DLL ou un EXE est infecté (contenu modifié)... On verra, mais je prends le partie de faire le nettoyage à la main (elle a tenté d'utiliser Norton mais apparemment ca ne marche pas).
Je décide également de montrer au fils Luc ce que je fais pour qu'il puisse le reproduire en cas de problèmes : il sait ce qu'est un port, un programme, à une vague idée d'une infection et surtout il est curieux. L'ensemble des outils/techniques que j'utilise sont simples et les actions associés sur des critères de décisions clairs. Bref, n'importe quel informaticien devrait pouvoir le reproduire chez lui. Une sorte de premiers soins de secours.
Je redémarre la machine. Vu les popups à répétition, les cmd.exe lancés en vitesse, je table sur au moins 3 malwares. Je prends ma clé USB préférée remplie des outils de Sysinternals. J'utilise Process Explorer. Outil formidable : une sorte de super-TaskManager. Je le lance, il se termine. Hum. Je recommence, pareil. Joueur. Je renomme procexp.exe en pyping.exe. Ca marche. Si j'avais un doute sur le niveau technique des bestioles présentes sur le disque, je n'en ai maintenant plus aucun. Je commence par activer "Verified signer" de vérification des signatures des exécutables afin d'identifier les produits Microsoft (à priori sain). Cette manipulation permet d'éliminer la moitié des processus, même si rien n'empêche un malware d'infecter la mémoire d'un programme légitime (injection DLL par exemple). Je montre à Luc les critères pour détecter les processus suspects : icône par défaut, pas de description (ou en Anglais), nom cryptique, pas de "company name". On obtient une liste de 12 noms de programme suspects. A l'aide d'un autre ordinateur, je tape sur Google le nom des programmes inconnus. Assez rapidement je discerne les malwares, des programmes Windows légitimes (genre programme livré avec le PC) mais mal renseignés. J'avoue que l'expérience prime dans ce genre de situation, surtout à la vue de 5 processus svchost. Process Explorer permet également de voir le contenu des services lancés sous svchost (clic droit, propriété. onglet Services). Pour le coup, j'utilise aussi le site de Sophos : il s'agit d'une des multiples encyclopédies des virus connus. Une aide complémentaire à Google pour savoir qui à pu endommager quoi sur le poste. Je commence à dégommer les processus suspect (suppr). Naïf de ma part : ils réapparaissent automatiquement sous d'autres noms, voir se multiplie. Ok. Je note le chemin d'accès des programmes exécutables. Je constate des feintes du style : c:\windows\svchost.exe ou explor.exe.
Je redémarre le poste et boot sur un Linux (toujours avoir un LiveCD dans ces moments là). D'un coup aux yeux de Luc, je suis passé du vieux ringard à un mec cool qui utilise Linux (oui newsoft, j'aurais dû lancer BartPE). Je monte le disque (NTFS) et je supprime les fichiers retenus plus haut (j'en fais une copie... au cas où). Je redémarre le poste en espérant trouver une situation plus saine. Hélas non. Toujours autant de processus avec des noms différents (le pc était déconnecté d'Internet, je précise :). J'utilise cette fois Autoruns.
Les processus lancés au démarrage et ceux en mémoire ne sont pas identiques. Heureusement autoruns permet de lister de manière exhaustive de nombreux points de démarrage. J'active l'option "Vérify Code Signatures" et "Hide Signed Microsoft Entries". Cela permet d'éliminer de l'étude les exécutables et bibliothèques intègres. Comme pour Process Explorer, je retiens tous les noms inconnus et louches (pas d'icône, pas de champs description ou "publisher" renseigné). Je décoche de nombreuses clés (autorun permet de les réactiver en cas de problème) dont les services (un des malwares tourne comme service). J'en profite au passage pour faire le ménage (Yahoo! Toolbar & Co). Je préviens enfin Luc de ne pas décocher (sauf certitude) les drivers : la machine pourrait ne pas redémarrer. Encore une fois pas si simple… Certaines clés réapparaissent dès que je les décoche. Certainement une sorte de défense à la notification de changement de clé de base de registre d'un malware. A l'aide de Process Explorer, je suspends les processus qui me semblent responsables (suspendre met le processus en pause). Autorun fonctionne correctement cette fois. Le problème c'est que si je réactive les processus, ils vont être notifiés. Après un coup de sync.exe (flush des données sur le disque), je provoque un crash du PC à l'aide de NotMyFault. Miracle. Plus aucun popup, Process Explorer ne m'indique que des processus bien connus. Un coup de Tcpview pour me conforter (sorte de netstat en temps réel et en plus on voit les icones). La machine semble saine. Oui semble car on n'est jamais à l'abri d'un malware très coriace. Maintenant seulement je décide d'utiliser un antivirus : je vire Norton (remarque : il n'était pas à jour, ce qui explique aussi le nombre d'infection) et j'installe Avast!, parfait pour une utilisation familiale. Il me détecte plusieurs restes de malware n'attendant qu'un clic. L'antivirus joue ici son rôle, ce à quoi il est fait : détecter des menaces bien connues. Point barre.
J'ai essayé de faire des choses simples sans sortir le debugger, Luc semble avoir compris et apprécié. Il me propose même d'en faire un article. Sacré Luc.
Commentaires
1. Le vendredi 16 mai 2008 à 09:09, par Jme
Réponse de Sid
2. Le vendredi 16 mai 2008 à 09:31, par jme
Réponse de Sid
3. Le vendredi 16 mai 2008 à 09:34, par Ulysse
4. Le vendredi 16 mai 2008 à 14:56, par Yom
5. Le vendredi 16 mai 2008 à 16:02, par Yom
6. Le vendredi 16 mai 2008 à 19:14, par Bruno Kerouanton
7. Le samedi 17 mai 2008 à 21:26, par fx
Réponse de Sid
Ajouter un commentaire