XSS dans Twitter pour IE <= 8

===================================

Français

For an english summary, go to the bottom of this post

===================================

Une mise à jour de Twitter a eu lieu pendant la nuit de mardi à mercredi, elle aura permis de protéger les utilisateurs d’Internet Explorer 8 d’au moins une faille XSS se trouvant dans la génération des tweets possédant des URLs contenant certaines séquences de caractères spéciaux.

En effet, lorsqu’on tweetait une URL contenant les caractères $_ (par exemple: http://www.example.com/a$_b), l’affichage du tweet partait en vrille en répliquant un certain nombre de fois l’URL et cassait les balises HTML prévues pour contenir le lien initial posté par l’utilisateur. Il faut savoir que Twitter utilise son “URL-shortener” (http://t.co) pour raccourcir les URL contenues dans un tweet et c’est dans le rendu du lien vers cette URL raccourcie que se trouvait le problème.

La réactivité de l’équipe sécurité de Twitter étant très bonne, je n’ai pas eu le temps d’analyser en détails la source de la vulnérabilité avant qu’elle ne soit patchée. Toujours est-il qu’une simple duplication du lien n’est que peu intéressante et j’ai alors cherché à faire exécuter du code par le biais de ce bug.

Pour cela, il fallait trouver un moyen de soit rajouter des balises HTML ou de profiter du fait que notre code se trouve déjà dans une balise pour y ajouter des event listener (type onload, onmouseover, …). La première solution s’est révélée impossible car les caractères < et > étaient correctement encodés. Par contre en ajoutant un guillemet (“) dans le texte du tweet, il était possible de sortir des champs prévus à cet effet et ajouter des champs à la balise HTML courante.

Afin d’exploiter complètement la faille pour obtenir une exécution de code, il fallait préparer un tweet avec un contenu similaire à celui ci-dessous.

"onmouseover=alert(1) http://www.test.com/a$_b test

Le moteur de rendu Javascript de twitter corrige par lui-même les espaces et guillemets manquants pour arriver au résultat ci-dessous. Le code est exécuté au moment où un utilisateur passe la souris au dessus de l’un des liens. Il faut savoir qu’à l’aide de styles CSS, il est possible de redimensionner le lien pour qu’il prenne toute la place et de ce fait l’utilisateur va forcément passer dessus.

N’importe qui visualisant ce tweet avec IE <= 8 (connecté à twitter ou pas) verrait le code exécuté dans son navigateur.

Après avoir découvert la faille, j’ai notifié l’équipe sécurité de Twitter (https://support.twitter.com/forms/security) avec les détails de l’attaque. Ils sont revenus vers moi moins de 10 minutes plus tard pour avoir des détails et la faille a été corrigée en moins de 12h. La mise à jour a permis d’homogénéiser le rendu des pages dans tous les navigateurs, corrigeant ainsi la faille qui n’affectait qu’Internet Explorer en version 8 ou moins.

===================================

English

===================================

A Cross-Site Scripting flaw affecting older versions of IE was discovered on Tuesday which could allow an attacker to take control of a user’s browser viewing a malicious tweet. The vulnerability was located within some of the rendering Javascript for IE versions 8 and lower.

When displaying a tweet with a link containing the characters “$_”, the rendering algorithm would repeat the link multiple times and by doing so, broke the HTML display of the tweet. By analyzing the flaw, it was possible to infer a way to execute code within the context of an infected page by abusing event listeners.

In the end, a tweet containing the following text could allow an attacker to control a victim’s browser.

"onmouseover=alert(1) http://www.example.com/a$_b test

The resulting display is showed below.

Twitter’s security team reacted very quickly when I notified them of the flaw and patched the site within a few hours of discovering the vulnerability.

Publié dans news, vulnérabilité

CanSecWest 2012 – 3/3

Suite et fin de l’édition 2012 de la conférence CanSecWest:

Unveiling LTE Security – Dr. Galina D. Pildush, Juniper

Réveil difficile après Tronapalooza 2 au son des réseaux mobiles de demain. Dr. Pildush présente les principaux risques liés aux nouvelles infrastructures et systèmes de communications mis en place par cette nouvelle technologie. Elle insiste que pour sécuriser les données sur ces réseaux, il est nécessaire que l’opérateur, le constructeur et l’utilisateur final allient leurs efforts.

Vulnerability Analysis and Practical Data Flow Analysis & Visualization - Jeong Wook Oh, Microsoft

Le but de cette présentation est d’expliquer l’une des méthodes permettant à partir d’un fichier déclenchant une vulnérabilité et du fichier source, de retrouver le code responsable de la vulnérabilité.

Jeong Wook Oh explique les limitations d’une simple analyse d’un flux de données et propose d’utiliser une analyse différentielle de ce flux, ainsi qu’une analyse différentielle du flux de contrôle. L’idée étant de regarder comment un programme diffère lors d’une exécution “saine” et d’une exécution malicieuse.

Le flow d’exécution du processus est tracé lors de l’ouverture des deux fichiers et les résultats sont comparés pour trouver les instructions qui diffèrent (cf. article sur l’in-memory fuzzing dans MISC#48). Une fois les instructions identifiées, le data tainting est utilisé afin de tracer l’origine des valeurs contenues dans les registres impliqués.

Une démonstration de la technique est effectuée en analysant la faille CVE-2011-2462 du logiciel Acrobat Reader qui permet de retrouver l’origine de la faille dans le code du programme.

Playing with Network Layers to Bypass Firewalls’ Filtering Policy – Eric Leblond

La présentation démontre comment utiliser des propriétés des protocoles comme FTP et IRC dans le but de créer des ouvertures dans un firewall. Une attaque impliquant une machine interne forgeant des paquets contenant les commandes FTP/IRC en spoofant l’adresse IP du serveur, pour ouvrir d’autres ports depuis l’externe, est démontrée.

Les attaques montrées ciblent le logiciel Netfilter, mais a également été démontrée sur des implémentations non sécurisées de Checkpoint. A savoir que si la protection contre l’IP Spoofing n’est pas activée, un firewall Checkpoint est vulnérable à ce type d’attaque.

New Threat Based Chinese P2P Network - Jun Xie McAfee Labs

Présentation du réseau P2P chinois Xunlei, aussi connu sous le nom de Thunder Network, ainsi que de plusieurs vulnérabilités l’affectant, dont notamment la possibilité de voir l’historique des fichiers téléchargés par un utilisateur ou encore la possibilité d’effectuer une attaque DDoS passive en enregistrant des fausses données au sein du réseau. L’idée étant d’amener un maximum d’utilisateur à télécharger un fichier inexistant sur un site ciblé afin de le faire tomber de manière anonyme.

Scrutinizing a Country using Passive DNS and Picviz - Sebastien Tricaud and Alexandre Dulanoy

Les deux chercheurs ont fusionné des recherches sur le Passive DNS ainsi que la visualisation de données en masse afin de permettre l’analyse de noms de domaines malicieux. Leurs recherches ont permis entre autre de découvrir que Google trace les requêtes DNS des gens en insérant leur adresse IP au sein des réponses DNS de leurs serveurs.

The WOW Effect  – Christien Wojner

Une dernière conférence fort intéressante pour clore CanSecWest2012 sur les aléas de l’utilisation de programmes 32 bits sur une plateforme Windows 64 bits. WOW, ou Windows on Windows est une technique implémentée par Microsoft permettant de faire tourner des logiciels 32 bits sur un OS 64 bits. L’idée est qu’un répertoire %WINDIR%\SysWOW64 va contenir les fichiers 32bits nécessaires aux applications 32bits (Il s’agit d’une copie du répertoire System32, qui lui contient les fichiers 64bits…). Les problèmes surgissent lorsqu’on veut analyser des fichiers se trouvant dans le répertoire System32 de Windows. En effet, si l’on prend par exemple IE qui par défaut se lance en 32 bits et que l’on veut envoyer un fichier du répertoire System32 vers VirusTotal pour analyse, il se trouve que le fichier réellement envoyé est celui se trouvant dans le répertoire SysWOW64. Il paraitrait qu’au moins un logiciel anti-virus est compilé en 32bits et de ce fait ne peut pas scanner le réel répertoire System32. Le présentateur prétend par contre qu’il ne sait pas de quel anti-virus il s’agit.

Résultats Pwn2Own et Pwnium

Cette année, les règles de la compétition Pwn2Own ont changé afin de permettre une compétition plus équitable, mais au final cela semble avoir simplement découragé certaines personnes de participer. Ainsi, seules deux équipes ont pris part au concours, et c’est l’équipe française de VUPEN Security qui l’a emporté en présentant un 0day sur Chrome et un autre sur IE. La deuxième équipe a quant à elle présenté un 0day sur Firefox.

Pour ce qui est de Pwnium, deux personnes ont présenté des 0days distincts pour Chrome et sont chacun repartis avec 60’000$ de prix.

Il faut noter qu’il y a eu un peu de tension entre les deux compétitions, surtout dû au 0day de VUPEN présenté sur Chrome. Les organisateurs des deux compétitions n’étant pas d’accord sur l’origine de la faille présentée.

Alain & Julien

Publié dans Events, news | Tagué

CanSecWest 2012 – 2/3

Résumé de la seconde journée de conférences:

Root Proof Smartphones, and Other Myths and Legends – Scott Kelly, Netflix

Première conférence de la journée qui fait un rappel sur les séquences de boot sécurisées sur les terminaux mobiles. Ce type de protections étant utilisée par les fournisseurs de solutions mobiles pour verrouiller leurs plateformes (leurs buts/envies étant différents de ceux des consommateurs).

Par la suite une série d’exemples de fails sur les implémentations de secure boot a été présentée, dont la divulgation de clefs sur le Asus Transformer.

La présentation conclue sur les solutions qui pourraient être utilisées, comme TrustedZone sur ARM.

Probing Mobile Operator Networks – Colin Mulliner

Résultats des investigations de Colin sur les réseaux des opérateurs. Ses recherches ne portaient pas sur les équipements de ces derniers, mais sur les services en écoutes sur les terminaux connectés au réseau mobile.

Les résultats montrent qu’on trouve un peu de tout sur ces réseaux: équipements industriels, systèmes de géolocalisation, systèmes domotiques, routeurs GSM/GPRS, BeagleBoards, caméras, … Il a juste été question de présenter les informations récoltées à partir des bannières des services ou ce qui est transmis dès qu’une connexion est effectuée (position GPS par exemple :) ) et pas ce qui aurait pu se passer s’il s’était loggé sur ces terminaux, mais peut-être qu’il n’a pas présenté tous ses résultats…

Il serait intéressant de compléter ces recherches en se procurant certains équipements et de les analyser pour y trouver des vulnérabilités exploitables à distance, le monde de l’embarqué étant moins soucieux de la sécurité, en général. Néanmoins, une bonne partie de ses équipements ‘propose’ un shell en root sans mot-de-passe.

iOS5 – An Exploitation Nightmare? – Stefan Esser

Sous la forme d’un avant/après iOS5, Stefan Esser présente les vulnérabilités qui ont impactées la plateforme d’Apple.

Il a ainsi abordé différents thèmes comme la modification des requêtes ApTicket, servant à récupérer un fichier SHSH signé, en ajoutant un nonce pour empêcher les attaques par rejeu.

Au niveau ASLR, le loader d’iOS5 va modifier la position du linker dynamique dyld même si le binaire n’est pas compilé avec l’option PIE (comme la majorité des applications actuellement disponibles sur l’AppStore). L’exploitation d’une vulnérabilité en utilisation une technique de return-oriented-programming ne peut plus que se baser sur les gadgets présents dans le binaire principal et non plus ceux disponibles dans dyld.

La présentation conclue sur le fait que les développeurs d’outils de jailbreak doivent être de plus en plus stratégiques dans la mise à disposition pour que leur projet ne soit pas tué par un correctif d’Apple.
Hardware-involved software attacks & defenses – Jeff Forristal, Intel

A l’inverse des pentests où être administrateur permet d’obtenir plus d’informations, cette présentation parlait de comment exploiter le fait d’être administrateur, ainsi que des vulnérabilités liées au matériel pour élever ses privilèges, installer un rootkit, s’échapper de la machine virtuelle, …

Après avoir posé les bases, à savoir qu’il ne faut pas forcément faire confiance à la couche en dessous de soit, Jeff a présenté différents schémas d’attaques en reprenant différentes vulnérabilités ou travaux précédents: accès à des ressources partagées: cve-2010-0306, mauvaise compréhension de la documentation: cve-2006-1056, ou encore, reprogrammation du firmware: cve-2009-2834).

Intro to Near Field Communication (NFC) Mobile Security – Corey Benninger & Max Sobeil, Intrepidus

Introduction sur la sécurité des implémentations de la technologie NFC. Sous Android, il est possible de définir un handler pour un type d’URI renvoyé par le tag en le spécifiant dans le fichier AndroidManifest.xml et ce sans qu’aucune autorisation ne soit demandée lors de l’installation. Lorsqu-un code est scann;, l’utilisateur a alors le choix entre plusieurs applications pour ouvrir le lien, à la manière de certaines attaques sur le loader automatique de cd/clefs usb sous Windows.

D’autres attaques sont envisageables, comme la superposition de tags pour rediriger l’utilisateur vers une autre application ou site.

Les attaques sur GoogleWallet ont également été abordées, comme le brute-force du code PIN. A noter que sur la dernière version d’Android (Icecream Sandwich), l’accès au portefeuilles est interdit tant que l’écran est éteint et verrouillé.

Cette technologie émergente laisse le champ libre pour différentes attaques sur les différentes couches des implémentations.

Pwnium / pwn2own :

Publié dans Events, news | Tagué

CanSecWest 2012 – 1/3

Voici notre compte rendu de la première journée de l’édition 2012 de la conférence CanSecWest se tenant à Vancouver, Canada.

Deep Boot – Nicholas Economou & Andres Lopez Luksenberg, Core

Présentation du MBR rootkit de Core. Plutôt que de se baser un hook du handler de l’interruption 0×13 qui permet d’intéragir avec avec le disque dur en mode réél, l’équipe de Core a choisi de baser son rootkit sur l’activation du trap flag. A l’inverse de la modification du handler qui ne permet d’avoir une vue sur l’exécution qu’en cas d’utilisation du disque par le système d’exploitation, l’activation du trap flag permet
d’intéragir lors de l’exécution de toutes les instructions, à la manière d’un hyperviseur.

La technique n’est pas nouvelle en soit, mais la présentation a permis de passer (un peu trop rapidement) sur les problèmes rencontrés lors du développement de ce rootkit et en général l’utilisation de cette technique se fait depuis le ring3 et n’a donc pas à gérer les passages ’mode réel’/'mode protégé’ que doit gérer DeepBoot. L’aspect performances a été évoqué assez rapidement et les démonstrations dans les machines virtuelles ne semblaient pas être ralenties, mais l’utilisateur risque de resentir les effets du trap flag…

Mapping The Penetration Tester’s Mind: 0 to Root in 60 min - Kizz
MyAnthia (Nick D.), Rapid7

Bonne présentation de la partie technique du métier de pentester avec les différentes phases et outils utilisés. On pourra néanmoins reprocher que le but présenté était d’être administrateur du domaine, ce qui n’est pas une fin en soit.

La présentation a résumé les actions entreprises par un pentesteur pour une grosse majorité de pentests internes en s’appuyant grandement sur Metasploit. Pas étonnant venant d’un membre de Rapid7.

Social Authentication - Alex Rice, Facebook

Le pourquoi et comment de la validation d’identité de Facebook. Explication des mesures de protection en place contre le mass phishing. Facebook passe désormais par une validation “sociale” de l’accès à un compte depuis un endroit suspect. L’utilisateur doit reconnaitre certains de ses amis au travers de différentes images tirées de leurs profiles. Les différents problèmes abordés lors de la mise en service de cette validation ont été abordés, notamment le fait que beaucoup d’utilisateurs sont taggués sur des photos sans qu’on puisse forcément les reconnaitre, ou alors les utilisateurs ayant un nombre important d’amis qui sont plus des connaissances lointaines que des amis, dont ils ne connaissent pas forcément le visage.

La présentation en soit n’apporte pas grand chose de nouveau, mais un aperçu des actions entreprises par Facebook pour tenter de protéger ses utilisateurs.

Advanced Persistent Responses - Peleus Uhley, Adobe

La plus intéressante de l’après-midi: point de vue d’un éditeur sur la gestion des correctifs suite aux attaques ciblées exploitants des 0day. Pour répondre à la prise de compétences des attaquants (qui suivent aussi les conférences de sécurité), Adobe a développé un programme de sécurité sur différents axes:

  • partenariats avec d’autres acteurs du marché pour la mise en place de techniques telles que la sandbox de ReaderX
  • fuzzing de leurs applications
  • formation en interne des développeurs avec mise à disposition d’une base de connaissances, le tout sous la forme de quizz, jeux…

Peleus a part ailleurs récément mis à disposition un outil permettant
l’analyse de fichiers SWF: Adobe SWF Investigator.

Inside the Duqu Command & Control Servers Roel Schouwenberg Kaspersky Labs

Spécificités du C&C de Duqu et mention spéciale pour la Suisse qui est le pays pour lequel il leur a été le plus difficile d’obtenir des informations de la part des hébergeurs ;)

Rendez-vous demain pour le compte-rendu des conférences du jeudi qui s’annoncent plus techniques :)

Julien & Alain

Publié dans Uncategorized

Insomni’hack 2012 : c’est demain !

/* Lieu */
Concours & Conférences : HEPIA, Genève, rue de la prairie.
Concours : Cafétéria
Conférences : Aula

/* Le concours */
Le concours (gratuit comme chaque année) débutera à partir de 18h, et se tiendra dans la cafétéria de l’école (RDC, Bâtiment B).
Les portes ouvriront à 17h30.

Chaque participant devra se munir de son propre câble réseau (attention, prévoyez une longueur suffisante de cable)
Pour les personnes venant de l’étranger, pensez à apporter un adaptateur (prise suisse : 3 fiches),
Prévoyez si nécessaire une multiprise (une seule prise prévue par participant).
Nous vous rappelons que cette année :
- les équipes sont autorisées, il n’y a pas de limite de taille (…ce n’est pas la taille qui compte)
- il y aura 2 classements (solo + équipe)
Nous comptons sur votre fair-play , tous les participants de l’équipe doivent cependant être enregistrés (pas d’équipe en “remote”)
L’accès au panneau d’administration sera remis au capitaine de l’équipe.
Cette année, grâce à nos sponsors QoQa et Qsport : plus de CHF 5000 de lot seront à gagner !

ATTENTION : le nombre maximal de places ayant été atteint, nous ne pourrons autoriser l’accès qu’aux personnes inscrites et ayant reçu une confirmation d’inscription (ie : pas de confirmation, pas de chocolat)

Nous vous réservons plusieurs surprises pour cette année…

/* Les conférences */
Cette année les conférences démarreront dès 10h, et nous vous proposerons pas moins de 8 conférences.

le programme détaillé est disponible à l’adresse suivante :

http://blog.scrt.ch/2012/01/20/insomnihack-2012-le-programme/

Les frais de participation s’élèvent à CHF 100 par participant et couvrent : l’accès à toutes les conférences (toute la journée), la pause café/gâteau de l’après-midi.
Une service de restauration chaude sera proposé le midi par l’HEPIA (frais en sus, compter +/- CHF 10 p/personne)

Les frais d’inscriptions (100 CHF) seront encaissés à l’entrée de la salle, en espèces (si possible munissez-vous du compte exact pour faciliter la transaction).
Nous accepterons les euros (85 Euros), nous rendrons toutefois la monnaie en Francs Suisses.

Nous nous réjouissons de vous voir à cette occasion.

L’équipe SCRT

Publié dans Uncategorized

Insomni’hack 2012 : le programme !

Bonjour à tous,

Insomni’hack 2012 approche a grands pas, voici quelques précisions complémentaires.

Insomnihack2012

insomnihack 2012

Lieu
Concours & Conférences : HEPIA, Genève, rue de la prairie.
Concours : Cafétéria
Conférences : Aula

Le concours
Comme les années précédentes, le concours démarrera vers 18h00 pour se terminer autour de 2h00 du matin et proposera des épreuves de tous niveaux touchant à divers domaines de la sécurité informatique : web, forensics, reverse-engineering…
Nouveautés de la cuvée 2012 :
- 2 classements : par équipe et en solo (les épreuves restent cependant les mêmes)
- pas de limite sur la taille des équipes
Le concours est entièrement gratuit et le nombre de places est limité : il reste actuellement moins de 40 places/personnes pour le concours, pensez donc à vous inscrire rapidement, nous avons malheureusement dû refuser du monde les 2 années précédentes
Nous travaillons actuellement sur la possibilité de vous fournir un accès internet pendant le concours : nous vous donnerons plus d’informations dans les semaines qui suivent…
Pour le concours, pensez à apporter un cable RJ45 et des adaptateurs électriques (pour les personnes venant de l’étranger).

Les conférences
Grosses nouveautés pour ce qui concerne les conférences.
Cette année les conférences démarreront dès 10h, et nous vous proposerons pas moins de 8 conférences.

Programme détaillé :
10h00 – 10h45 : Gerald Litzistorf , Virtualisation et sécurité
10h50 – 11h35 : Emmmanuel Bouillon , Identity Federation Protocols – A bottom-up analysis
11h40 – 12h25 : Thor Mullen , Microsoft security bible part 1

13h30 – 14h15 : JP Aumasson , Insomni’hash
14h20 – 15h05 : Paul Rascagneres, Reverse engineering des systèmes embarqués Linux
15h10 – 15h55 : Axelle Apvrille, Reverse engineering Android
16h00 – 16h15 : BREAK
16h15 – 17h00 : Thor Mullen, Microsoft Security bible part 2
17h05 – 17h35 : Bruno Kerouanton, Introducing μTools, for Windows surgeons and practitioners

Voici dèja un aperçu des conférenciers pour l’édition 2012 :
- Thor Mullen : nous vient de Seatlle, Principal Security Architect pour une plateforme e-commerce internationale très connue… et auteur du livre “Microsoft Security Bible”
- JP Aumasson : cryptographe chez NAGRA (groupe Kudelski), il a publié plus de 30 articles de recherche en cryptographie et reçu plusieurs prix de cryptanalyse. Il est le designer principal de la fonction de hash BLAKE, un des cinq finalistes dans la compétition SHA-3.
- Gérald Litzistorf : professeur HES responsable du labo http://www.tdeig.ch/ et actif depuis depuis 10 ans dans le dmaine de la sécurité des systèmes d’information et depuis 3 ans dans la virtualisation des serveurs.
- Axelle Apvrille : intervient en tant que senior antivirus analyst pour Fortinet, spécialisée dans le domaine du code malveillant sur plateforme mobile
- Emmanuel Bouillon : a été conférencier pour de nombreuses conférences internationales comme SSTIC, PacSec, BlackHat,…. Depuis 2009 il intervient dans le domaine de la sécurité pour une organisation internationale
- Paul Rascagneres (aka RootBSD) : consultant et chercheur en sécurité informatique au Luxembourg. Il travaille chez de grands comptes tels que des constructeurs automobiles, banques ou institutions européennes. Il est très actif dans la communauté Open Source ainsi que dans la recherche de vulnérabilités (modules et exploits metasploit). Il a développé de nombreux « proof of concept » afin de mettre en évidence des vulnérabilités chez des fournisseurs comme IBM. Il a également mis en avant des vulnérabilités sur des applications Web ainsi que lors d’analyses de firmware
- Bruno Kerouanton : RSSI de la République et Canton du Jura
- (non confirmé) Le commandant du Costa Concordia : qui nous présentera sa méthode personnelle d’analyse de risque pour longer les côtes en toute sécurité ainsi que son plan DRP , la méthode cassos-rapido.

Thèmes abordés cette année :
- cryptographie
- sécurisation des environnements Microsoft
- sécurisation des infrastructures Vmware
- Reverse engineering des systèmes embarqués Linux
- Reverse engineering application Android

Les frais de participation s’élèvent à CHF 100 par participant et couvrent : l’accès à toutes les conférences (toute la journée), la pause café/gâteau de l’après-midi.
Une service de restauration chaude sera proposé le midi par l’HEPIA (frais en sus, compter +/- CHF 15 p/personne)
Tout comme pour le concours : le nombre de places est limité, il reste actuellement moins de 35 places pour les conférences.

Nous nous réjouissons de vous voir à cette occasion.

Publié dans Events, Insomni'hack

Compte rendu de la 28C3 : Behind enemy lines

Comme chaque année la conférence du Chaos Computer Club couvre de nombreux domaines du hacking ou … autre, du déni de service à l’ADN en passant par les sushi fluorescents et quelques thèmes politiques.
Voici quelques thèmes choisis parmi les nombreuses conférences visibles.

28C3

28C3

Effective Denial of Service attacks against web application platforms
Julian Wälde and Alexander Klink ont montré comment une « simple » requête peux mettre à genoux la plupart des WAF (web application framework) actuels. L’attaque repose sur le fait que les requêtes sont stockée sous la forme d’une Hash Table. L’accès à cette structure est en moyenne bonne (O(1)) mais peut, dans certains cas rares, être beaucoup moins efficace (O(n)). L’attaque utilise justement un cas limite à savoir une multitude de clefs pointant vers le même hash. En effet la plupart des implémentations de la Hash Table utilise un hachage de type djb2 ou dérivé, pour lequel il est relativement aisé de trouver des collisions. Dès lors une seule requête, de quelques méga-octets maintient un coeur d’un processeur moderne complètement utilisé pour plusieurs heures ! Un DOS à haut rendement… les détails pour chaque implémentations testées sont disponibles :
OCERT Advisory : http://www.ocert.org/advisories/ocert-2011-003.html

28C3

OSMO-GMR
Le dernier né des projets OSMO présenté par Sylvain Munaut, après le GSM les terminaux satellitaires (Thuraya par ex.) sont à l’ordre du jour. De part la connaissance acquise lors des travaux sur le GSM et par la similarité des protocoles de téléphonie satellitaires avec celui-ci il est déjà possible de décoder une partie des informations échangée entre le terminal et le satellite, ceci directement dans votre analyseur de trame préféré.

Implémentation of MITM Attack on HDCP-Secured Links
L’attaque est implémentée sur une plateforme Linux embarquée, avec l’aide d’un FPGA Spartan-6, et est capable de fonctionner en temps réel sur les liens vidéo HD. La découverte de la master key l’année passée, permet de dériver les clés privées correspondantes de la source vidéo ce qui permets d’effectuer des modification pixel par pixel sur les données cryptées. Puisque le lien ne fait pas de vérification de CRC ou de hachage des données, il est possible de modifier ou faire des incrustations sur la vidéo.
Le point intéressant est que les données ne sont pas décryptées ce qui implique que le droit d’auteur n’est pas contourné !
Le boîtier issu de cette recherche est disponible à la vente (~100$) et permet de faire toute sortes de manipulation sur le flux vidéo (le tout est open source y compris le hardware).

Print me if you dare
Les imprimantes sont présentes partout dans nos réseaux et sont devenu bien plus que de simples … imprimantes, de ce fait leur compromission permets de les utiliser comme de véritables chevaux de Troie. Ang Vui et Jonathan Voris on montré les faiblesses présentes dans l’update du firmware chez HP, puis l’impressionnante démonstration du malware développé pour le modèle P2050. Celui-ci contient : un scanner de port, un reverse-proxy et, entre autres outils, le moyen d’exfiltrer n’importe quel document envoyé à l’imprimante ainsi qu’un moyen de mettre à jour le firmware modifié à distance. Une première estimation faite par les auteurs laisse penser qu’il y aurait plus de 100’000 imprimantes directement vulnérables…
A noter qu’une autre présentation sur le même thème a eu lieu pendant la CCC « Hacking MFPs », celle-ci portait plutôt sur l’aspect turing-complete du langage postscript et l’accès à certaine API, suivant les imprimantes, permettant de réaliser certaines attaques.
Il semblerait que Stuxnet ait relancé la recherche dans ce domaine ;-)

Ooops I hacked my PBX
En cherchant à updater plusieurs dizaines de téléphone sans le faire manuellement sur chacun et en faisant un peu (beaucoup) de reverse engineering l’auteur est tombé sur un simple XOR comme encryptage de l’authentification…
En allant un peu plus loin il apparaît qu’une API de debug est probablement restée dans l’implémentation de production ! Il est maintenant possible d’écrire dans la mémoire de tous le téléphones et même dans le PBX, effectuer un reset des mots de passes…
L’équipementier incriminé n’a pas été nommé mais le nombre d’acteurs de grande ampleur dans le domaine étant réduit… ;-)

Sovereign Keys
Peter Eckersley a montré la proposition de l’EFF permettant de, peut-être , trouver une solution à l’actuel problème des certificats (Komodo, Iran, …) .
Le concept repose sur de multiple serveurs effectuant une réplication entre eux de chaque information ajoutée et ceci de manière inaltérable (ajout uniquement). Ce qui permets au client de demander non plus une information ponctuelles sur la validité d’un CA mais un historique, empêchant ainsi toute manipulation. Il vient immédiatement la question de la révocation d’un certificat, celle-ci se passerait par l’utilisation de un ou plusieurs tiers choisi par le possesseur du domaine confirmant l’information. Une RFC devrait suivre

Time is on my Side
Sebastian Schinzel et son équipe ont réussi à montrer la faisabilité d’une attaque de type « time side attacks » au travers du réseau et ceci même sur un serveur distant. La théorie n’est pas nouvelle mais l’adéquation de ce type d’exploit à un réseau réel (jitter, …) à nécessité le développement d’outils dédiés. Un premier pas a été de traiter statistiquement les différents mesures soumises au aléa d’un réseau réel afin de pouvoir extraire un delta temporel entre une requête valide et invalide. Le deuxième pas fut d’utiliser une attaque publiée précédemment (dite de « Bleichenbacher ») permettant de casser RSA en environ 10⁶ requêtes. Cette méthode nécessite un oracle, qui est dans ce cas justement la mesure extraite du temps de réponse. Au final l’encryption XML décryptée et une librairie disponible.


Taking control over the Tor Network

Eric Filiol et Seun Omosowon ont montré deux faiblesses du réseau Tor permettant de catpurer des données sensibles en dépit de la cryptographie.
Une première faiblesse concerne la façon dont les itinéraires parmi les Ors sont gérés. Il est possible d’influencer et de forcer les utilisateurs à utiliser des Ors arbitraire et donc de contrôler le routage. Une seconde faiblesse se rapporte à la façon dont la cryptographie est mis en œuvre. En utilisant des malwares et des attaques basées sur le concept de backdoors cryptographiques dynamique il a été possible de contourner la cryptographie en place sans la supprimer. De fait une attaque classique, visant a prendre le contrôle des Ors et combinée à l’attaque au niveau routage permettant ainsi de forcer le trafique a passer sur les noeuds contrôlés. Différents scénarios d’attaque possibles ont été expérimentés et validés sur un réseau de simulation TOR de 50 nœuds et partiellement sur le réseau réel TOR. Une librairie est disponible.

Apple vs. Google Client Platforms
Recurity Labs a récemment mené un projet pour l’Office fédéral allemand pour la sécurité de l’information (BSI), qui (entre autres) a porté sur la plateforme iOS.
Lors de cette analyse il est apparu que l’iOS ne vérifie pas les contraintes de base des certificats X.509, à savoir le fait que le certificat peut, ou ne peut pas, être utilisé pour signer d’autres certificats (certificat d’une autorité). Ce qui implique qu’un certificat appartenant à une chaîne trustée dont vous avez la clef privée peut-être utilisé pour faire une attaque de type MITM. Ce qui tombe bien vu que l’utilisateur possède la clef privée du certificat utilisé pour s’authentifier au push Apple ! A noter que d’autres attaques sont possibles vu que ce problème existe pour toutes les applications iOS utilisant l’API cryptographique fournie par Apple. Ceci a été résolu pour les iOS>4.3.5 (ce qui ne concerne donc pas les heureux possesseurs d’un iphone 3G pour qui le hardware ne supporte pas cette mise à jour.).
Vous pouvez tester si votre appareil est vulnérable ici : https://iSSL.recurity.com
Il semblerait que l’appstore ne soit qu’un browser webkit mais sans les protections nécessaires (CSRF, SOP) de plus l’origine de la popup d’authentification n’est pas établie.
Ceci combiné à un XSS dans le champ de recherche (maintenant corrigé) permet plus ou moins … tout (injection de JavaScript, affichage d’une fausse popup d’authentification, achats sur l’appstore…).

Google n’est pas en reste non plus :
ChromeBook
La table de partition n’est pas protégée, il est donc possible de booter un kernel/firmware arbitraire et une petite modification hardware permet d’écrire sur la flash. Les ChromeBooks étant prévu pour être partagés il est d’autant plus gênant de pouvoir en prendre le contrôle.
Google web store
L’api des extensions est prévue pour faire de l’injection java script… quelques heures suffisent à créer une attaque ciblée pour un site d’e-banking souligne l’auteur.
Les extensions sont maintenant gratuites, il est possible d’ajouter l’ID à votre configuration GoogleSync ou de contruire l’URL adéquat ;-)
A noter qu’une extension malicieuse peut installer une autre extension et faire de l’URL rewrite sur un download.
GoogleApps
Les GoogleApps permettent d’échanger des informations entre elles et certaines applications sont le fruit du rachat de tierces parties par Google, le code et les authentifications sont de qualité variables.
Il est possible d’utiliser des macros dans GoogleDocs, notamment d’importer des macros écrites par d’autres, or celles-ci peuvent être « améliorées » après coup par l’auteur.
D’autre part ces macros peuvent effectuer des requête http et elles s’exécutent sur le serveur (cloud) : « Only Google can DoS Google » précise l’auteur :-)
Beaucoup de XSS sont présents sur les sites Google et un système de token est prévu pour l’accès aux données par de tierces parties, une page bénigne de demande d’accès mal/pas lue peut donc autoriser l’accès à vos données.
FanBoys quelque soit votre préférence : you are pwned !

NOC Review
Cette présentation a permis de mieux comprendre, en sus d’avoir une vision de l’architecture réseau de l’événement, pourquoi de nombreux pancartes « use more bandwith » ornaient les murs de la conférence : l’uplink consistait en deux lignes 10Gbit/s !
Pour toute information supplémentaires ainsi que pour les vidéos des conférences : http://events.ccc.de/category/28c3/

Loïc Rousselot

Publié dans Events