pt
Moulé à la louche depuis 1999
Les trucs qui m'énervent... et je vais pas prendre de pincettes
Internet, informatique, logiciel libre, économie, politique, vie courante et tout le reste...

Conficker: Une belle saloperie

Jeudi 09 avril 2009

Les auteurs de virus (ou vers) ont toujours joué au jeu du chat et de la souris avec les auteurs d'antivirus. Mais il faut bien dire que les dernières générations de virus sont particulièrement sophistiquées. L'exemple le plus frappant étant le virus Conficker.

Voici ce qu'il est capable de faire:

  • Il se répand par le réseau, recherchant des dossiers partagés Windows (partages réseau), exploitant une faille de sécurité pour outrepasser les droits d'accès. Si la faille n'est pas présente, il essaie des dizaines de mots de passe différents afin d'accéder malgré tout au disque. Une fois qu'il a accès au disque, il peut infecter la machine.

  • Il se propage également par supports amovibles, se copiant sur tous les disques qu'il trouve (disques durs externes, clés USB, cartes mémoire...) et créé un autorun qui lance une copie du virus placé dans le répertoire poubelle du disque. C'est malin: le répertoire "\RECYCLER" n'est jamais affiché par Windows, et l'autorun déclenche le virus dès l'insertion du disque.

  • Il créé un service dans Windows (et n'apparaît donc pas dans la liste des processus en cours d'exécution). Il utilise un nom de service qui semble natif de Windows.

  • Il désactive:
    • Le centre de sécurité Windows (qui vous prévient que votre firewall ou antivirus n'est pas actif ou à jour). L'utilisateur n'est plus alerté.
    • Les mises à jour WindowsUpdate (fûté, vu que Microsoft distribue par ce biais des détections et désinfections automatiques de virus)
    • BITS, le système de distribution des mises à jour de Windows.
    • WindowsDefender, l'antivirus standard de Windows
    • Le service de rapport d'erreur (qui envoie des rapport à Microsoft sur le plantage d'applications)
    • Et enfin, toutes les secondes, il recherche en mémoire tous les programmes dont le nom ressemble de près ou de loin à un antivirus, antispyware ou logiciel de sécurité, et les tue. (Impossible de lancer le moindre programme de désinfection, même en l'apportant sur clé USB).

  • Il modifie la configuration réseau pour bloquer l'accès aux sites d'antivirus, WindowsUpdate et aussi aux sites qui informent sur les problèmes de sécurité (CERT, SANS, CastleCops...). Cela a également pour effet d'empêcher les antivirus de se mettre à jour (et comme le centre de sécurité de Windows est désactivé, vous ne saurez pas que votre antivirus n'a pas pu se mettre à jour). Cela assure au virus qu'il ne sera pas détecté même si l'éditeur de l'antivirus publie des signatures mises à jour.

  • Il supprime les points de restauration précédent. Donc impossible de se débarasser du virus avec la restauration système Windows.

  • Le virus se comporte en serveur web sur un port aléatoire, lui permettant alors de se comporter comme un distributeur des mises à jour du virus.

  • Il ouvre une backdoor, c'est à dire un service réseau qui permet au pirate de contrôler à distance l'ordinateur.

  • Encore plus fort: Il recherche des accès internet, et utilise des requête UPnP pour reconfigurer les routeurs et ainsi ouvrir des ports (pour permettre le contrôle à distance malgré la présence de routeur ou de firewall).

Superbe saloperie, non ? Attendez, ce n'est pas fini, il y a mieux:


Le virus est capable de se mettre à jour.

Il tente de se connecter sur différentes domaines (sites web) calculés de manière pseudo-aléatoire (cbchyttgqay.biz, cqazvyszh.com, dicgdsp.org, dzxecapiw.info, epwqbyya.com...) - soit 50000 domaines différents par jour - pour y chercher des mises à jour. Il suffit donc à l'auteur du virus d'acheter un de ces domaines et d'y déposer des mises à jour du virus, ou des ordres. Et tous les ordinateurs du monde infectés par Conficker suivront ses ordres (Ces mises à jour sont signées cryptographiquement avec une clé RSA de 4096 bits, ainsi seul l'auteur du virus peut donner des ordres au virus ou le mettre à jour).

Pour empêcher Conficker de s'activer, certains ont donc imaginé bloquer ces domaines. C'est d'ailleurs ce que fait OpenDNS.

Et là les auteurs du virus ont été très malins: la nouvelle variante de Conficker possède son propre protocole de Peer-to-peer (P2P) pour rechercher des hôtes infectés et distribuer les mises à jour. Ainsi, elle ne dépend plus de domaines ou sites web précis à contacter pour se mettre à jour. Purée, c'est fûté.

Et encore ! Conficker ne semble pas utiliser de polymorphisme, ni de méthodes de rootkits, ni d'infection du matériel (BIOS, etc.) . (Le polymorphisme, c'est le fait pour un programme de s'auto-modifier en permanence. Donc chaque copie du programme est différente. Cela ne rend pas seulement la détection difficile, mais aussi l'analyse. Les rootkits parviennent à détourner les fonctions de base du système d'exploitation afin que le système d'exploitation lui-même ne voit plus le virus. Et par conséquent, les antivirus non plus.)

Bref... c'est quand même une belle saloperie. Et malgré ça, je ne peux pas m'empêcher d'être un peu admiratif. Le coup d'avoir son propre protocole P2P et des mises à jour signées cryptographiquement, c'est brillant. Malade, mais brillant.


PS: Pour ceux que cela intéresse, voici une page qui fait une analyse technique poussée de Conficker, y compris les différentes variantes (A,B et C).


Mise à jour 25 mai 2009: Conficker n'est pas mort, loin de là. Il semble qu'il continue à infecter 50 000 nouveaux PC chaque jour. Ce virus pose suffisamment de problèmes pour qu'un groupe de travail dédié ait été créé: confickerworkinggroup.org (dont les membres sont: l'ICANN, AOL, McAfee, Microsoft, Symantec, Sophos, Kaspersky, Facebook, IBM, Cisco, etc.)

Voir tous les billets