29ème Chaos Communication Congress: « Not my department »
_Chaque année, le _Chaos Computer Club allemand_ (plus connu sous l'acronyme CCC) organise une grand-messe informatique regroupant sécurité et hacking en tout genre autour de présentations et de _workshops_. Nouveauté de l'année 2012, le congrès se déroulait à Hambourg alors qu'il était traditionnellement basé sur Berlin. Sysdream y était présent pendant presque deux jours pour y présenter un outil que nous avons développé au sein du laboratoire R&D._Chaque année, le _Chaos Computer Club allemand (plus connu sous l’acronyme CCC) organise une grand-messe informatique regroupant sécurité et hacking en tout genre autour de présentations et de workshops. Nouveauté de l’année 2012, le congrès se déroulait à Hambourg alors qu’il était traditionnellement basé sur Berlin. Sysdream y était présent pendant presque deux jours pour y présenter un outil que nous avons développé au sein du laboratoire R&D._ Hambourg est à une poignée d’heures d’avion de Paris, c’est donc sans mal que nous avons pu nous y rendre à partir du 28 décembre 2012. Une trentaine de minutes après l’atterrissage, nous arrivons au centre de congrès, ou la fusée FairyDust trône fièrement.
Un passage rapide dans la Speakers Room et nous voilà munis de nos bracelets et des informations pratiques nécessaires. L’endroit est tout simplement énorme, les étages sont bondés et de nombreux workshops sont actifs : atelier de crochetage de serrures, quadcopters, hacking hardware, hacking électronique et bien sûr de très nombreuses personnes posées ci et là avec des ordinateurs sur les genoux. Il y a même un endroit réservé aux enfants, car il n’y a pas d’âge pour venir ici. Cela nous change des événements tels qu’ils sont organisés en France, peut-être un brin trop corporate ou sérieux. Ici règne une ambiance hi-tech et communautaire, comme déconnectée du monde extérieur, un endroit où il fait bon hacker.
Après un repas pris sur le pouce, nous avons assisté à la présentation de Natalie Silvanovitch, « Many Tamagotchis Were Harmed in the Making of this Presentation » (slides, vidéo), durant laquelle elle a exposé une analyse par rétro-ingénierie des dernières générations de tamagotchis, du désassemblage matériel à la modification du firmware en boîte noire complète. Une présentation impressionnante, qui nous a poussés à passer le reste de la journée à retravailler nos slides et les démonstrations que nous avions envisagées pour notre présentation du lendemain. Une vieille habitude de speaker mais que voulez-vous : on ne se refait pas. Pour terminer la journée, la présentation de Carlos Gracia Prado intitulée « How I met your pointer » (slides, vidéo) nous aura encore une fois démontré que la seule limite qui existe dans l’analyse de protocoles inconnus reste celle posée par notre imagination et que de nombreux procédés peuvent être élaborés de manière à contourner l’absence de connaissance de protocole. Son approche est ingénieuse : au lieu de chercher à fuzzer un protocole sans le connaître, mieux vaut utiliser des portions d’instructions issues d’un logiciel capable de comprendre le protocole (à savoir envoyer et recevoir des informations) en le pilotant à distance à l’aide d’un débogueur. Il ne reste plus qu’à déboguer les deux parties (le serveur et le client) tout en faisant en sorte que le client (ou le serveur) envoie des données manipulées par le fuzzer via ses routines internes. Bon, cela nécessite un désassemblage de l’application et une identification des routines gérant l’envoi de données, mais c’est réalisable. Cette approche a toutefois des limitations, car des applications très complexes rendent l’identification des routines d’envoi plus difficile, et dans la majorité des cas l’envoi ne se résume pas à l’appel d’une seule et unique fonction ou méthode. Ceci dit, la présentation en elle-même était intéressante, et pas seulement parce qu’il y avait du chocolat à gagner en répondant à des questions de culture populaire ! Après une (courte) nuit de sommeil bien méritée, nous avons passé la matinée à affiner les slides et les démos, afin d’être parés pour notre présentation. Le point épineux de toute présentation, les démonstrations effectuées devant l’assemblée, ont notamment été passées en revue et testées à nouveau. Nous avions prévu à l’origine de projeter l’écran d’un smartphone sous Android 4.0, mais malheureusement le smartphone de démonstration a été « emprunté de force » quelques jours avant notre départ, et nous avons dû effectuer l’ensemble des démonstrations sur un émulateur. Ce qui en soit ne pose pas de souci particulier, enfin, dans la plupart des cas. Notre présentation s’est globalement bien déroulée, avec un bémol quant aux démonstrations : l’émulateur a décidé de prendre son temps, et cela s’est principalement ressenti lors de la dernière démonstration qui a bien failli ne pas fonctionner. Cela s’est joué à quelques secondes de la fin, avec un suspense ressenti jusque dans le public. S’en est suivi une séance de questions-réponses, durant laquelle nous avons pu établir plusieurs contacts avec des personnes intéressées par le projet, et approfondir plus en détail certains points. Et il fut l’heure de partir, notre vol de retour étant prévu peu après la fin de la présentation. Nous aurions bien aimé passer plus de temps sur place, mais les dates du 29C3 ainsi que des contraintes liées à Sysdream nous en ont empêché. Une chose est sûre, nous y retournerons l’année prochaine, que notre proposition de présentation soit acceptée ou non. Bravo et merci, le CCC. Le PDF de notre présentation (slides) est en pièce jointe de cet article.
La vidéo est disponible ici.