J'ai peut-être un penchant masochiste inconscient : j'aime lire les pages où je me fais bâcher, directement ou indirectement, de près comme de loin[1]. Du coup, je me jette sur le lien pour découvrir son contenu. Et je dois dire que je n'ai pas été déçu. Après un rapide portrait brossé à la va-vite du monde de la sécurité informatique à grands coups de lieux communs, arrive la phrase choc : on s'éloigne un peu du but premier qui est la recherche. Cette phrase n'est pas anodine parce qu'elle préfigure parfaitement la quasi-promesse qui va suivre : ce blog/weblog/whatever ne sera pas une vitrine pour reconnaissance mal acquise. Voilà le genre d'introduction que j'aime : ce que font les autres, c'est de la merde, vous allez voir, moi, je vais vous faire un truc qui détartre. Je ne suis pas contre la provocation, l'ironie, le second degré ou encore les critiques. Mais quand je vois la qualité des orateurs qu'on peut écouter au SSTIC, je me dis que le gars derrière ce blog se lance un sacré défi en promettant de se hisser au-dessus d'eux.

Regardons donc le contenu du blog, qui se résume d'ailleurs à l'unique billet qui sera posté par la suite. On nous y parle de quoi ? De rooter des routeurs Wi-Fi. Et qu'est-ce qu'on nous y apprend fièrement ? D'abord que la plupart des boîtes ADSL, routeurs Wi-Fi et autres portails captifs tournent sous Linux. C'est vrai, c'est une véritable news que personne ne connaissait à l'heure où l'auteur se fendait de ces lignes. Ne lui en déplaise, Newsoft l'avait déjà coiffé au poteau, au SSTIC, justement, avec un contenu nettement plus intéressant sur les Freebox, Livebox et autres périphériques TriplePlay. Quant aux routeurs, ce n'est pas comme si les distros genre OpenWRT existaient depuis des lustres... Pour les portails captifs, je préfère ne pas faire de commentaire, je suis déjà assez désagréable comme ça. Ensuite, on apprend qu'en sniffant un lien Wi-Fi, on peut récupérer le login/password de l'admin sur son interface HTTP. OK... Et puis que les routeurs Wi-Fi disposent de pages qu'on peut exploiter pour y injecter des commandes, voire des binaires. Super. Côté Linksys, ping.asp est la méthode la plus répandue pour exécuter des commandes. Pour activer le boot_wait par exemple. Côté Netgear, l'exploitation du mode debug de setup.cgi date également. Et enfin, on apprendra avec délectation que quand on est root sur un Linux, on peut y installer une backdoor, uploadée via des scripts relativement connus et mise en place en trois commandes. J'ai un sérieux doute sur l'utilité de la première, mais comme je n'ai pas de Netgear en firmware par défaut sous la main, je ne la contesterai pas. Au final, môssieur se vante d'avoir piraté un routeur Wi-Fi pas protégé[2]. Je dis bravo. Allez, encore deux et tu pourras mettre une tête de mort qui tourne sur ton site web et te la jouer délinquant du telnet ;)

J'exagère, évidemment. C'est loin d'être inintéressant. Mais après une introduction aussi tonitruante, j'avoue que je reste sur ma faim : je m'attendais à y trouver des choses nouvelles, un peu d'astuce, d'espièglerie, etc. Des choses qui, justement, sortent de l'ordinaire et permettent d'élargir ses horizons. À la place, je n'ai droit qu'à une belle compilation d'information glânées çà et là sur le web et mises en pratique. À rester dans le monde de l'embarqué, j'ai préféré les papiers sur les attaques via JTAG, nettement plus originales... Comprenez-moi bien. Je ne suis pas contre ce genre de billet. Chercher des informations, les compiler, les digérer et les présenter de façon synthétique, parfois originale, y ajouter sa touche personnelle et parfois faire avancer le schmiblick, même de quelques pas, demande du travail. Mais d'ici à prendre ses lecteurs pour des huitres, il y a un pas que je me garde de franchir quand je me livre au même exercice.

Alors que reste-t-il qui permette de se détacher de ces experts auto-proclamés à la reconnaissance mal acquise ? Qu'y a-t-il au delà du beau discours du premier billet ? Sauf si la recherche est entendue comme dans moteur de recherche, pas grand chose, à part ce ton débonnaire et condescendant de bon vieux loup de mer racontant ses faits d'arme devant une bière. Bref, que de la gueule... Comme on le dit souvent, la critique est aisée. Et c'est vrai. L'art, par contre... Il est facile de se la pêter plus ou moins underground[3], d'ironiser sur le conformisme des autres et de se proclamer hérault de je ne sais quel courant novateur. Mais comme le démontre ce blog, le passage à la pratique relève d'un autre niveau, qui fait cruellement défaut ici. Finalement, Fucked up, ça résume bien ce que j'en retiens...


Mais pour relever un peu le niveau, justement, je vous propose d'aller jeter un coup d'œil à un papier publié hier par Zulfikar Ramzan, de Symantec, Sid Stamm et Markus Jakobsson, tous deux de l'Université de l'Indiana. Comme l'explique Stamm dans son blog, il s'agit d'une technique de pharming basée sur la corruption de la configuration DNS des routeurs d'accès grand public dont l'accès à l'interface de configuration n'est souvent protégée que par les identifants par défaut.

Le principe de l'attaque, joliment illustré par une animation, est relativement simple. Encore fallait-il y penser ! Il s'agit de faire exécuter par le navigateur de l'utilisateur, situé sur le LAN derrière le routeur, un javascript qui :

  • va découvrir les paramètres réseau, et donc l'IP du routeur ;
  • se connectera à son interface d'administration HTTP ;
  • tentera de s'authentifier avec une série de login/passwords ;
  • en cas de succès, modifiera la configuration DNS pour pointer vers un serveur malicieux.

Dans la mesure où ces équipements font la plupart du temp office de cache DNS, l'attaquant est alors en position idéale pour mettre en place son pharming. En guise de parallèle, on pourra se référer à la vague de pharming déclenchée en mars 2005, exploitant une vulnérabilité permettant la corruption du cache DNS des firewalls... Symantec. Comme quoi...

Solution ? Changer son mot de passe, évidemment, comme on devrait y être invité dès la première connexion à l'interface ! En définitive, l'article est assez détaillé et vaut le détour. Pas mal d'idées y sont exposées. On y parle par exemple de Cross-Site Request Forgery pour récupérer les identifiants ; on verrait presque se faufiler une collaboration entre l'applet et le monde extérieur pour vaincre les protections du routeur. D'autres enfin ouvrent des pistes relativement intéressantes quant aux possibilités offertes par les interfaces disponibles sur le routeur. Qui a dit UPnP ?

Update : on pourra lire l'article sur la question de Marc Olanié dans Réseau-Télécoms. Il y soulève la question de l'éventuelle intox telle qu'on a pu la constater pour les virus BlueTooth par exemple. Comme il le précise, les arguments techniques sont indiscutables. Injecter du code dans un navigateur, faire en sorte que ce code se connecte à un site web et y envoie quelques requêtes est quelque chose qu'on rencontre couramment sur Internet, à des fins tout à fait légitimes la plupart du temps. Le technologie AJAX par exemple, très en vogue en ce moment, n'est pas la dernière à y avoir recours. Maintenant, d'observer la possibiliter d'une action malicieuse à clamer que c'est utilisé in the wild, il y a un pas qui ne me semble pas être franchi ici. Maintenant, doit-on interdire aux employés de ces sociétés de faire un peu de recherche et de publier des papiers quand ils trouvent quelque chose d'intéressant (ou pas) sous prétexte que ça pourrait les gens à consommer leurs produits ? Je ne le pense pas. Je pense même que la démarche est honorable dans le sens où elle pousse de l'information concrête. Dans des temps reculés, un éditeur d'antivirus s'était essayé au même exercice, mais l'absence d'information concrête avait complètement discrédité l'action, alors qu'il y avait manifestement des éléments techniques pertinents. Quel usage fera Symantec de tout ça . Seul l'avenir nous le dira, mais par contre, ce qui est relativement probable, c'est qu'à partir de maintenant, cette technique va commencer à être utilisée. Et avec succès. Ce qui devrait pousser à les constructeurs de home-devices à se poser quelques questions...

Notes

[1] Parfois même très loin, mon côté paranoïaque probablement.

[2] Ou si peu...

[3] Je le rejoins au moins sur l'inexistence de cette mouvance.