Aller à Singapour, c'est d'abord voler pendant un peu plus de douze heures. Pour autant, mon vol partant en soirée, l'impact sur la suite de la semaine restera très limité. Arrivé sur place vers 18h, je file à l'hôtel pour rejoindre Thomas Lim, l'organisateur de l'évènement pour un sympathique diner dans un restaurant indonésien. Retour à l'hôtel, visionnage de DVD et dodo. C'est que je commence le lendemain deux jours de training et que le rendez-vous est pris à 8h30...


3 et 4 juillet 2007 - Jours -1 et 0

Training Wi-Fi donc. Tout s'est passé à merveille, à part peut-être le trou de mémoire quant au mot de passe du WRT54GC qui me sert pour pas mal de manipulations. À ce sujet, si l'un d'entre vous, chers lecteurs, possède une de ces bestioles et arrive à faire fonctionner le hard reset, qu'il n'hésite pas à m'expliquer son truc, parce que sur le mien, ça ne donne rien. Du tout. Bref. Sur les trois personnes attendues, une seule se présentera. Il partira super content, ce n'est pas tous les jours qu'on peut avoir un cours privé de deux jours complets ;)

Le 4 juillet au soir, tous les speakers sont invités à prendre un verre dans une micro-brasserie sur Clarke Quay, The Pump Room. La bière, sans être extraordinaire, est pas mal. Par contre, il est relativement amusant de voir affiché un peu partout, à la façon des anciennes brasseries familiales, un "Since 2006". Genre "on fait de la bière depuis la semaine dernière". Au moins, ça leur laisse une bonne marge de progression.


5 juillet 2007 - Jour 1

La conférence est lancée. Thomas fait une brève introduction et cède rapidement sa place pour la keynote de Justine Aitel.

  • "The IPO of the 0day" par Justine Aitel, CEO chez Immunity[1]. La femme de Dave Aitel nous fait donc un discours sur la valeur des 0day, leur durée de vie, leur découverte, etc. N'étant pas un grand fan du commerce des 0days, cette présentation ne m'a pas franchement enthousiasmé. Pour autant, beaucoup d'articles ont fait référence à cette présentation qui nous annonce une durée vie basse de 99 jours pour leurs 0days. Mais il manquait la manière dont ils les gèrent vis-à-vis des éditeurs, laissant à penser qu'il se les gardent sous le coude tant que ça les arrange, ce qui rend ces statistiques pour le moins difficiles à évaluer. Elle insistera sur l'importance de faire des pentests poussés, d'envisager la défense en profondeur, la souscription à des services d'alerte[2] et bien d'autres choses, mais à la fin, on perd quand même un peu de vue qu'un bon vieux 0day, on ne peut pas faire grand chose pour s'en protéger, sinon avoir un monitoring, des moyens de segmentation et des procédures de gestion d'incident en béton, détails qui ne figurent nulle part dans sa présentation ou sont jugés inutiles dans la protection contre l'exploitation de ces failles inconnues. Elle va aussi passer une jolie couche sur les IDS par signature, prédisant un futur joyeux à ceux basés sur les anomalies. Mouais...
  • "Attack Surface Analysis of Blackberry Devices" par James O’Connor, Symantec. Après le foin autour du Blackberry qui s'est entre temps étendu chez nos voisins germains[3], cette présentation m'intéressait. Ayant lu le papier, je connaissais le contenu, mais je m'attendais quand même à quelques détails supplémentaires, ne serait-ce qu'en réponse à des questions. Mais non, rien de plus n'en sortira. En fait, il s'avère que James n'a même pas eu accès à un BES, il a juste joué avec son mobile. Les tests sont restés relativement surfaciques, pas recherche de vulnérabilités en particulier. Si les papiers "Attack Surface Analysis of..." de Symantec sont bien structurés, il ne faut manifestement pas y chercher de la nouveauté ni une remise en question des outils de sécurité analysés. Ceci étant, ce talk confirmera que les signatures d'applications par RIM ne servent à rien. La confiance qu'on accorde à une application ne doit pas différer, qu'elle soit signée ou non. En fait, la position sûre, c'est d'interdire l'installation d'applications tierces sur son mobile. Purement et simplement...
  • "Exploit Trend" par Jonathan Limbo de Cisco[4]. Déjà, le titre me laissait songeur. Cisco qui vient nous parler d'exploits... En fait, c'était un bon vieux talk commercial, mauvais qui plus est. Le genre qu'on achète quand on est sponsor et qu'on a rien à dire, mais qu'il faut quand même dire quelque chose. L'orateur a passé une heure à nous faire la pub des IDS Cisco allant même jusqu'à nous expliquer qu'ils avaient découvert un concept génial. En fait, un IDS devrait surtout être un système alimenté par un maximum d'informations de toutes les sources possibles sur le système qu'il surveille. Whoa ! J'expliquais ça à Eurosec il y a deux ans avec Phil[5], et nous étions très loin d'être les premiers à le dire. Sauf que nous, on n'a pas oublié de mentionner les problèmes de charge que ça impliquait... Il avait également un magnifique transparent, que j'aurais dû photographier pour la postérité, graphant, pour un exploit donné, la menace en fonction du temps. Le bon vieux cycle de vie d'une vulnérabilité en somme. Si on passe outre le fait que la menace n'est probablement pas la meilleure chose à mettre en ordonnée, ce graphe ne mentionnait même pas la publication d'un correctif à la faille ciblée et nous proposait une pente éternellement croissante à mesure qu'on allait de la publication d'un PoC à l'apparition d'un ver en passant par... le 0day. Oui oui, chez Cisco, un 0day, c'est truc bizarre qui vient après la publication d'un PoC, donc que les gens connaissent mais pas tout à fait. Autant dire qu'après le talk de Justine, la salle est restée perplexe. Bref, il s'est fait pourrir à la séance de questions, et j'ai pris un malin plaisir à lui mettre le nez dedans. C'était trop fort, je n'ai pas pu résister. Mais j'ai quand même réussi à griller Justine sur ce coup là ;)
  • "Windows Vista User Interface Privilege Isolation" par Edgar Barbosa de COSEINC[6]. Edgar aurait mieux fait de nous donner les slides, puisqu'il s'est borné à les lire durant une heure. Ceci étant, le sujet était intéressant, malgré une grosse première moitiée de détails super techniques sur son fonctionnement qui n'étaient pas tous nécessaires pour la suite. UIPI est un système d'isolation de processus par niveaux de privilèges. En établissant quatre niveaux d'intégrité différents, ce système entend contenir les élévations de privilège. Sauf que pour la faire courte, ça ne marche pas. La conclusion de l'auteur est qu'il ne comprend pas à quoi sert cette fonctionnalité et si on peut vraiment la considérer en l'état comme une fonction de sécurité. Éloquent...
  • "Linux 2.6 Kernel Exploit" par Stéphane Duverger, EADS Innovation Works. Stéphane a grosso modo présenté le même sujet qu'au dernier SSTIC. Pour sa première présentation en anglais à l'étranger, il s'en est bien sorti, même si les questions posées à la fin me laissent à penser que certains n'ont pas tout suivi. Peut-être la barrière de la langue ? Ou un sujet trop technique ? Je ne sais pas. Toujours est-il qu'un auditeur proposait par exemple que le noyau modifie les droits des pages mémoires. Pourquoi pas ? Sauf qu'en exploitant en espace noyau, on peut le repositionner à loisir...
  • "Hijacking Virtual Machines for Fun and Profits" par Nguyen Anh Quynh. Ce speaker n'en est pas à son coup d'essai avec Xen, ayant déjà présenté pas mal de sujets autour de ce logiciel de virtualisation. Mais contrairement à ce qu'on pourrait penser, celui-ci ne portait pas sur l'infection depuis une machine virtuelle de l'hôte ou d'autres VM, mais de VM par l'hôte. Autant dire que je suis resté un peu perplexe dans la mesure où ce n'est une surprise pour personne... Il a donc passé les trois quarts de son temps à décrire comment réaliser ceci et un dernier quart à montrer deux applications, d'abord l'espionnage complet d'une VM et ensuite un moniteur de système de fichiers. Ceci étant, le talk était bon et mérite de l'attention en ce qu'il décrit des techniques qui permettent de déporter des fonctions de sécurité d'un OS virtualisé vers son hôte, permettant du monitoring et de l'enforcement externes.
  • "Email Spam goes VoIP – Number Harvesting for Fun and Profits" par Henrik Scholz, Freenet Cityline. Henrik nous a donc présenté l'évolution du spam vers les réseaux de VoIP à laquelle nous commençons à assister actuellement, avec ce qu'on connait mieux sous le doux nom de SPIT[7]. Il s'est surtout focalisé sur l'activité de recherche de numéros à cibler et le moins qu'on puisse dire, c'est qu'il y a de quoi faire ! La présentation était très bien, fort didactique. Pas de grande nouveauté, mais une description claire du problème.
  • "Orasploit" par Alexander Kornbrust, Red Database Security. Alexander est un tueur quand il s'agit de sécurité Oracle. D'ailleurs, il ne fait que ça. L'an dernier, il s'était attaché au concept de ver et de rootkit pour cette base de données. Cette fois-ci, place à un framework d'exploitation pour Oracle, Orasploit, automatisant nombres d'attaques connues sur ce produit. Alexander met ses slides en ligne, je vais donc vous laisser aller les découvrir quand ils seront publiés. Orasploit devrait être publié également. Ou pas. Suite à la possible adoption par l'Allemagne d'une loi similaire à notre chère LCEN, il est un peu réticent. Et on le comprend....

Cette première journée finissait donc clairement mieux qu'elle n'avait commencé, et c'est heureux. Le soir, diner dans un petit restaurant servant un excellent chicken rice, suivi d'un verre sur les quais.


6 juillet 2007 - Jour 2

Reprise des hostilités à 9h...

  • "Attacking Windows Mobile - PocketPC" par Collin Muliner de Trifinite. Sous-titrée "Owned by an MMS", la présentation annonçait la couleur dès le début. Il s'est intéressé aux SMS et MMS comme vecteurs d'attaques sur les SmartPhones sous Windows Mobile/CE ou PocketPC. Après avoir introduit l'architecture matérielle, les grandes idées sur ces systèmes d'exploitation et le fonctionnement d'un service MMS, il est entré dans les détails et en particulier dans la réception des messages par un mobile. Il montre un possible DoS par inondation de messages de notification et un framework de fuzzing privé[8]. À la clé, un remote via MMS. Je vous laisse lire les slides, ça en vaut la peine.
  • "Understanding and Bypassing Windows Heap Protection" par Nico Waisman, Immunity. Second speaker de la boîte de Miami Beach, Nico nous a présenté l'exploitation de heap overflow sous Windows XP SP2, 2003 SP1 et Vista, malgré les protections mises en place au niveau du tas. C'est évidemment très technique, dans un domaine dans lequel je n'excelle pas vraiment, mais la ligne directrice est de faire des exploits spécifiques à chaque application pour écrire là où ça va bien de manière à ne pas perturber le fonctionnement du tas et déclencher les protections. L'idée est comparable au "Heap Massage" présenté par Gera à Cansecwest et au SSTIC : pour ne pas se faire lever, il faut prendre soin du tas. Mais ici, au lieu de pourrir les données dans le tas, il s'agit carrément de s'attaquer à son fonctionnement. Ce qui place la barre relativement haut, et qui lui permet au passage de faire de la pub pour le nouveau Immunity Debugger...
  • "Ravaged Unleashed – The Tactical VoIP Toolkit" par The Grugq. C'est un régulier des talks sur la VoIP. L'intérêt principal de cette présentation est dans son toolkit, un ensemble d'outils pour tester l'implémentation d'une infrastructure VoIP, avec en particulier VoIPy, Ravage et Siping. Le premier est un cœur SIP écrit en Python permettant le développement rapide de PoC. Ravage est un outil pour tester les registrars SIP. Enfin, Siping se focalise sur l'injection de signalisation. The Grugq nous a également donné sa vision de l'avenir de la VoIP, lequel n'est pas reluisant, sauf pour les experts en sécurité, bien sûr. Bon talk en définitive.
  • "Firmware Security – BIOS Hacking" par Su Bing. Rien de neuf dans cette présentation qui nous expliquait ce que sont les BIOS, tables ACPI et autre SMI, comment y ajouter du code et reflasher le tout depuis l'OS. C'était bien fait, très clair, détaillé, avec deux études de cas sur le virus CIH et le BIOS d'un laptop Dell D620. À noter que Dell fournit les bibliothèques et outils pour faire tout ça sous licence libre.

Ensuite, nous sommes passés au fameux déjeuner pendant lequel Thomas avait placé, en dernière minute, une intervention de Edgar Barbosa sur la détection de BluePill, sans l'aide d'éléments extérieurs. L'idée maîtresse est de vérifier le comportement des structures du processeur qu'un hyperviseur ne peut pas intercepter, ou intercepte en partie seulement. Il part des mesures de temps et montre comment l'hyperviseur rend cette technique inutile par une bonne translation de la base de temps dans chaque VM. Il passe alors à d'autres aspects comme la prédiction de saut, le cache d'instructions, ou encore la TLB. Il explique comment les utiliser pour mettre en exergue la présence d'un hyperviseur en exécutant du code dont on connait l'impact qu'il aura sur la structure testée. C'est pointu, évidemment. À comparer avec ce que les gens de Matasano raconteront à BlackHat dans une quinzaine de jours.

  • "Javascript Heap Exploitation Methods" par Alexander Sotirov, Determina. Il se tourne vers l'exploitation du tas dans le navigateur, ici Internet Explorer. Après quelques généralités sur le fonctionnement du tas et les dispositifs de sécurité mis en place, il montre comment exploiter le tas du navigateur en utilisant celui associé à un processus JavaScript. C'était intéressant. Là encore, comme Nico Waisman plus tôt, il s'attaque directement au fonctionnement du tas, ce qui fait que les deux présentations se recoupent sur pas mal de points.
  • "Command Injection in XML signatures and Encryption" par Brad Hill, iSECPartners. Après le blabla classique sur les attaques qui ciblent l'applicatif, et le Web[9] qui va tous nous tuer tellement c'est pourri ce qui tourne dedans, il se focalise sur XML et en particulier, comme le titre l'indique, les signatures (XMLDSIG) et le chiffrement (XMLENC) dont il détaille le fonctionnement et surtout la complexité. Et qui dit complexité, dit trous partout. Il y en aurait trop à mettre ici, je vais donc passer. J'espère qu'il mettra ses quelques 116 slides en ligne pour que vous puissiez les lire. En attendant, les plus courageux pouront lire le whitepaper que les afficionados du Web 2.0 devraient apprécier.
  • "Next Generation .NET Vulnerabilities" par Paul Craig, Security Assessment. Paul nous présente les bases de .Net ainsi que les mécanismes de sécurité mis en place au niveau du framework, censés permettre au premier venu de coder comme un goret sans produire une passoire. Constatant que la plupart des attaques Web classiques sont gérées, il décide de chercher ailleurs de nouvelles méthodes d'exploitation, spécifique à cette environnement. Comme les slides sont en ligne, je vous invite à les lire, ça sera plus simple. Il annonce quelques failles en réserve qui devraient faire l'objet d'advisories très rapidement vu que les patches sont sortis hier.
  • "Full Disclosure on Linux Kernel / New Security Model for Bluetooth 2.1 / Hacking wii and Playstation 3" par Marcel Holtmann, RedHat. Ce n'est pas comme si j'avais déjà vu l'essentiel de ce talk, mais presque. La partie "Full disclosure" avait été présentée à Pacsec, tandis que celle sur les Wiimotes et autres gadgets Bluetooth l'avait été à Cansecwest. Il est toutefois intéressant de noter que les stats de RedHat quant à la durée de vie des 0days qu'ils traitent sont sensiblement différentes de ce qu'annonçait Immunity la veille... La partie sur Bluetooth 2.1 était par contre intéressante en ce qu'elle montrait les spécificités du nouveau standard à venir, et forcément des problèmes qu'il allait engendrer, en particulier en termes de complexité. Pleins de bonnes idées partout, mais manifestement pas beaucoup de bonheur à les mettre ensemble... À noter le dernier slide de la présentation sur les Bluetooth toys intitulé "One night in Paris". Si si, c'est bien un vibromasseur Bluetooth qu'on voit sur la gauche qu'on active à coups de SMS. On n'arrête pas le progrès...

La conférence se conclue sur un diner sur East Coast Parkway avec au menu les plats de fruits de mer classiques : drunken prawns, chili crab, etc.


7 juillet 2007 - Jour +1

Une petite marche dans Singapour avec Stéphane et Collin. Passage par le célèbre Funan Digitalife Mall. Je m'étais promis de passer à Sim Lim Square, mais le temps manquait quelque peu. Ceci étant, nous avons pu admirer les créations des participants à l'Overclocking Championship 2007. Ventilateurs, systèmes de refroidissement par liquides divers, bouteilles de glace, glace carbonique, tout y passe. J'ai même cru comprendre qu'une équipe utilisait des cellules à effet Peltier. Du lourd.

Ensuite, une marche le long de la River jusqu'au Fullerton et retour. Récupération des bagages et direction l'aéroport pour treize heures de vol, direction Paris.


Conclusion

Objectivement, les trois premiers talks ne m'ont pas paru terribles. Deux présentations commerciales et une qui n'apporte pas grand chose. C'est pour cela que je trouve cette édition légèrement inférieure à la précédente. De plus, le remplacement du tirage au sort par une Xbox 360 faisant tourner Gears of War en libre service pour les passants ne présentait pas vraiment d'intérêt... Par contre, les autres talks présentaient un intérêt indéniable et, pour certains, un niveau élevé.


Liens

Autres compte-rendus disponibles de la conférence :


Notes

[1] Sponsor de la conférence.

[2] Forcément...

[3] De chez qui je poste ce compte-rendu à la faveur d'une pause...

[4] Sponsor de la conférence.

[5] Cf. slide 29.

[6] Organisateur de la conférence.

[7] SPam over Internet Telephony.

[8] Parce que ça évite de payer tous les messages ;)

[9] Quelque soit sa version ;)