211service.com
Briser le code botnet
Les réseaux d'ordinateurs compromis contrôlés par un serveur central, mieux connus sous le nom de botnets, sont un couteau suisse d'outils pour les criminels en ligne. Les pirates peuvent utiliser ces systèmes cooptés pour générer du spam, héberger du code malveillant, masquer leurs traces sur Internet ou inonder un réseau d'entreprise pour lui couper l'accès au Web.
Chaque fois qu'un nouveau botnet apparaît, les chercheurs s'empressent de désosser le logiciel qu'il installe sur la machine d'une victime et de décoder la façon dont chaque bot communique avec le serveur de contrôle. Étant donné que ces communications sont souvent cryptées, de telles analyses peuvent prendre des semaines ou des mois. Aujourd'hui, des chercheurs de l'Université de Californie à Berkeley et de l'Université Carnegie Mellon ont créé un moyen de rétro-ingénierie automatique des communications entre les ordinateurs compromis et leurs serveurs de contrôle.
Dans un article qui sera présenté cette semaine à l'Association for Computing Machinery's Conférence sur la sécurité informatique et des communications , les chercheurs montrent comment l'ingénierie inverse automatique peut déchiffrer la structure et le but des communications entre un serveur de commande et de contrôle et ses bots.
Le protocole de communication du botnet est au cœur du botnet, explique Juan Caballero, doctorant affilié à l'Université de Californie à Berkeley et à l'Université Carnegie Mellon, et auteur principal de l'article. C'est ainsi que l'attaquant envoie des commandes au botnet.
Lorsque les chercheurs ont précédemment tenté d'analyser automatiquement les protocoles de communication des botnets, ils se sont concentrés sur le déchiffrement des commandes reçues par le client. Pourtant, Caballero, en collaboration avec la professeure adjointe de l'UC Berkeley, Dawn Song et deux autres collègues, a développé une technique qui traduit à la fois les commandes reçues par un client et les réponses qu'il envoie.
Les chercheurs ont ensuite exécuté le code du botnet sur une machine virtuelle et analysé le mouvement des informations vers et depuis les registres d'un ordinateur - des composants de mémoire dans le processeur d'une machine - avant qu'il ne soit crypté. Surveiller les changements dans les registres de mémoire – les chercheurs appellent cette déconstruction de tampon – leur a permis de dériver la structure des communications du botnet et de déduire la fonction des différents composants de chaque commande.
Cela est pertinent pour les logiciels malveillants, car nous n'avons généralement pas l'exécutable pour le serveur de commande et de contrôle d'un botnet, a déclaré Paolo Milani, chercheur postdoctoral au Secure System Lab de l'Institut de technologie de Vienne et auteur d'un article précédent. sur l'analyse de protocole automatisée. Ainsi, avec les techniques précédentes, nous ne serions pas en mesure de procéder à une ingénierie inverse automatique du côté client du protocole.
Les chercheurs ont intégré la technique résultante dans un outil, appelé Dispatcher, pour analyser les communications du réseau de botnet et même injecter de nouvelles informations dans le flux de communication. Les chercheurs ont testé l'approche sur un botnet complexe connu sous le nom de MegaD, qui a fait les gros titres au début de 2008 lorsque les entreprises de sécurité ont remarqué qu'il était responsable de près d'un tiers du trafic de spam dans le monde.
Les chercheurs ont analysé 15 messages qu'ils avaient collectés en surveillant un bot MegaD : sept commandes envoyées par les serveurs de contrôle et huit réponses du bot. L'outil Dispatcher a analysé le bot pendant qu'il s'exécutait sur la machine virtuelle et a détecté automatiquement le point auquel le programme a déchiffré les commandes mais n'avait pas encore chiffré ses réponses.
Les administrateurs réseau peuvent également utiliser l'outil Dispatcher pour infiltrer le botnet. Les clients MegaD vérifieront généralement s'ils peuvent envoyer des e-mails, afin de devenir un rouage utile dans une campagne de spam. Cependant, étant donné que les chercheurs bloquent tout le trafic de courrier sortant, le client enverrait normalement un message au serveur de contrôle indiquant que son test de messagerie a échoué. Mais les chercheurs ont modifié le message en cours de route, répondant à la place avec le code pour un test de spam réussi.
Normalement, il aurait envoyé un message disant qu'il ne peut pas spammer, dit Caballero de l'UC Berkeley. Nous [au lieu] avons en fait obtenu le modèle de spam, afin que nous puissions voir quel type de spam il enverrait.
Des outils tels que Dispatcher pourraient étendre ce qui est actuellement un petit nombre de chercheurs qui procèdent régulièrement à l'ingénierie inverse des botnets, déclare Joe Stewart, chercheur principal en sécurité pour SecureWorks , une entreprise de sécurité réseau. Cela résoudrait un problème que le monde a – avoir suffisamment de personnes pour analyser les botnets, dit-il. Il n'y a qu'un nombre limité de personnes qui peuvent faire de l'ingénierie inverse sur les botnets. Vous avez un groupe de passionnés qui pourraient utiliser cela pour les aider.
Stewart ajoute cependant que les chercheurs expérimentés n'ont pas encore besoin de tels outils automatisés pour analyser la plupart des logiciels malveillants. Alors que les botnets plus complexes peuvent prendre des semaines pour faire de l'ingénierie inverse, les logiciels malveillants courants rencontrés par la plupart des entreprises et organisations ne posent aucun problème. Plus de 90 % de tous les botnets utilisent un cryptage facile à briser pour protéger leurs communications, ce qui rend les techniques manuelles relativement simples et rapides.
Tous les (bot master) n'ont pas besoin du cryptage de type MegaD, dit Stewart. Je ne pense tout simplement pas que cela en vaille la peine, pas avec l'effet que nous avons sur eux maintenant, qui est minime.
Pourtant, les botnets continueront d'évoluer, selon UC Berkeley's Song. Les programmes de botnet deviennent de plus en plus compliqués, dit-elle. Ils utilisent diverses techniques d'obscurcissement et ainsi de suite. Alors peut-être que l'analyse manuelle peut fonctionner pour le moment, mais à l'avenir, nous aurons besoin de meilleurs outils.