SSTIC

SSTIC – Jour 3 (mise à jour 15:45)

Suite de mes notes !

RRABIDS, un système de détection d’intrusion pour les applications Web Ruby on Rails

Romaric Ludinard, Loïc le Hennaf, Eric Totel, Supélec

Projet ANR DALI. Outil Daikon, détecteur d’invariants dynamique. Mais il faut réduire le nombre d’invariants en ne s’intéressant qu’à celles qui dépendent des entrées utilisateurs, grâce à la notion de taint checking (propagation d’une marque apposée). Ensuite, il faut « tisser » dans le code la détection associée à ces invariants. Le coût en nombre de lignes et donc en temps d’exécution est important.

Il leur reste encore à améliorer l’apprentissage (diminution du nombre de faux positifs). Démonstration sur l’application confiée par un client.

Usages offensifs de XSLT

Nicolas Grégoire, Agarri

XSLT réel langage de programmation W3C (permet de transformer automatiquement des structures de données XML en page HTML à partir d’un fichier de transformation). L’objectif des travaux de l’auteur est de découvrir des exploits autour de cette technologie. Ils ont été conduits sur plusieurs moteurs XSLT généralistes et spécifiques. Les risques identifiés sont essentiellement du côté des extensions propriétaires (LibXSLT, Xalan-J et Altova).

Exemples de vulnérabilités: sous libxslt (produits Apple, RIM, distributions Linux à cause du moteur de rendu Webkit et Chrome n’est pas vulnérable), il est possible d’écrire un fichier dans le système attaqué. PHP5 (toujours impacté aujourd’hui).

En résumé, beaucoup de boulot en vue pour les éditeurs d’applications XSLT.

Conférence invitée: Faille de sécurité ou défaut de sécurité

Eric Barbry, Cabinet Alain Bensoussan

Conséquences pénales d’une mauvaise sécurité (article 34 de la loi informatique et libertés). Eric souligne un intérêt croissant de la CNIL pour ces questions. Un guide de la CNIL est disponible ici. Sans oublier les autres obligations (226-22 du code pénal sur la divulgation de données personnelles, 226-13 sur la révélation de secrets).

La victime finale (celle dont les données ont été détournées) est elle victime du professionnel négligent ou de l’auteur de l’intrusion ? Mais pour une affaire comme celle de Sony, les conséquences sont innombrables dans de nombreux domaines (communication et image, remboursements, contrôles. enquêtes…).

Eric évoque ensuite le projet d’ordonnance qui doit implémenter les notifications obligatoires d’incidents de sécurité touchant les opérateurs et d’autres acteurs, mesure issue d’une des directives du Paquet télécoms (on en reparlera). PDF du projet d’ordonnance (voir l’article 38) qui est l’objet actuellement d’une consultation publique.

Typologie des attaques contre nos libertés online

Jérémie Zimmermann, La Quadature du Net

Neutralité du net. Vision d’un Internet comme bien commun. J. Z. définit les attaques comme toute limitation à la possibilité de publier ou d’accéder (aux services, aux contenus,…). Protection des gouvernements autoritaires, protection par les gouvernements des intérêts sectoriels, attaquants purement industriels. Le biais serait parfois législatif ou parfois en contournant les législations. Les vecteurs seraient multiples: inconscient collectif (peurs), complexité et opacité, contournement des chemins traditionnels. Il décrit ensuite des contre-mesures: observer, démontrer.

(Beaucoup d’attaques contre le blocage des sites pédopornographiques, cf. mes articles précédents sur le sujet).

Système de stockage en ligne de photos avec confidentialité des données personnelles

L. Montalvo, S. Defrance, F. Lefebvre, N. Le Scouarnec, P. Perez, Technicolor

La gestion des doublons permettrait d’optimiser le stockage. Confidentialité des données: si l’utilisateur chiffre les informations stockées, l’hébergeur ne pourra pas supprimer les doublons. Le principe du chiffrement convergent est discuté.

Se pose la question de chercher des images similaires, sans avoir accès au contenu chiffré. Les fonctions de hachage classique ne fonctionnent évidemment pas: plutôt fonctions de hachage visuel (empreinte plutôt que digest). Deux grandes classes d’algorithmes sont documents: globales ou locales (+ lentes et robustes contre quasi toutes les distorsions). Elles font un focus sur les points d’intérêt. Si statistiquement le nombre d’empreintes communes entre deux images est important, on dira que les images sont similaires.

Ces fonctions posent deux problèmes: performance et introduction d’une nouvelle faille (sur la confidentialité). Les fonctions les plus efficaces sont les fonctions SIFT classiquement documentées. Toutefois, il est démontré qu’à partir de nombreuses empreintes on peut reconstruire partiellement les images: l’invertibilité n’est pas garantie. On va donc combiner avec la fonction de hachage VLAD (vector of locally aggregated descriptors).

Un framework de fuzzing pour cartes à puces, application au protocole EMV

Julien Lancia (site web), CESTI-SERMA Technologies

EMV est la spécification des cartes bancaires à puce diffusées actuellement. Fuzzing: technique de tests en boîte noire, ici par blocs. Framework Sulley, étendu pour générer des données au modèle EMV, une interface pour les cartes à puce et des spécifications pour la détection d’incidents réussis.

Sulley est dédié au départ au fuzzing de protocoles réseau. Pour la transmission des données, la couche de communication a été remplacée par une API métier TRITON.

Sur 12 produits, 6 ont eu des résultats: anomalies sécuritaires (remise à zéro de compteur avant vérification online) et anomalies fonctionnelles.

Développements futurs: sortir de la spécification stricte, inclusion des spécifications Monéo ou fuzzing des couches basses. Ces techniques pourraient être intégrées en amont au niveau du développement.

Conférence invitée de clôture

Hervé Schauer, HSC

Revue de la philosophie sur le débat liberté-sécurité, repositionné sur la SSI. Constat rétrospectif d’inachèvement: la sécurité aurait peu progressé.

SSTIC – Jour 2 (mise à jour 18:00)

Mes notes de la deuxième journée (ce ne sont que des notes et je prie d’avance les lecteurs de m’excuser si elles ne sont pas claires).

Attaques DMA peer-to-peer et contre-mesures

Fernand Lone-Sang (et Loïc Duflot, Vincent Nicomette, Yves Deswarte)

Il s’agit d’attaques ciblant la mémoire des contrôleurs eux-mêmes et non la mémoire centrale du système. Le contrôleur utilisé pour l’attaque est un contrôleur Firewire. Les tests ont été effectués sur cinq chipsets (Lakeport, Eaglelake et Tylersburg). Noyau d’attaque Linux 64 bits recompilé pour retirer protections sur /dev/mem. dd est ensuite utilisé pour copier la mémoire des contrôleurs. L’architecture de la machine attaquante est classique.

Les chipsets Eaglelake et Lakeport ont des comportements similaires.

Une démonstration a été réalisée pour copier la mémoire de la carte graphique, qui apparaissent quasi en temps réel.

Contre-mesures possibles:

  • I/O MMU (In/Out Memory Management Unit) qui permet de l’isolation entre les régions de mémoire des contrôleurs, restreint l’accès des contrôleurs à leurs domaines respectifs. Implémenté au sein du northbridge dans les chipsets Intel. Certains chipsets AMD intègrent un I/O MMU dans le southbridge.
  • Access control services (ACS): définissent des points de contrôle sur les bus d’E/S. Apparus récemment dans des chipsets Intel x58, désactivés par défaut. Leur activation peut interférer avec certains pilotes de périphériques.

Sticky fingers & KBC Custom Shop

Alexandre Gazet, ESEC Sogeti

De très nombreuses « offres » vendant des mots de passe BIOS « maîtres » qui correspondraient à tel ordinateur. L’orateur découvre dans ses recherches le source d’un générateur de mot de passe correspondant à son ordinateur.

Ses recherches le mènent sur différents forums (mydigitallife.info, csdn.net…) et à adapter Metasm pour prendre en compte le processeur du contrôleur clavier (qui s’avère être un ARCompact).

Cela lui permet d’aller plus loin dans l’analyse du contrôleur de clavier. Il parvient notamment à forcer des mises à jour de la ROM du contrôleur clavier. Il procède ensuite à un débridage de la commande de lecteur pour un accès complet à la ROM et à la RAM du contrôleur clavier, ajouter un loggeur de commandes et une commande d’écriture en RAM.

Il ouvre la voie à l’exécution de code dans le SMM grâce à l’exploitation d’une faille dans le dialogue entre le contrôleur clavier et le handler SMI. Pour la démonstration il parvient à ajouter des fonctions à l’interface 0xB2 pour rendre accessible la SMRAM.

La fonction vulnérable est appelée à chaque démarrage par le BIOS, furtive (tout en mémoire), persistante (même en cas de réinstallation).

« Ça ne sert à rien. », conclut-il. C’est quand même intéressant de démontrer qu’on peut explorer le fonctionnement des contrôleurs les plus simples et même y découvrir des failles qui ont un impact potentiel sécuritaire sur le fonctionnement central d’un PC et envisager des compromissions en cascade.

Virtualisation d’un poste physique depuis le boot

Stéphane Duverger, EADS Innovation Works

Leçons tirées du développement d’un hyperviseur de type 1 (sans système hôte), Ramooflax. L’objectif de ce travail est d’avoir des méthodes d’observation du fonctionnement d’un OS, y compris d’interagir en direct avec les process en cours (démo de débug en direct avec IDA).

Résultat du challenge SSTIC

Axel Tillequin, EADS, présente sa solution du challenge SSTIC 2011

Attacking and Fixing PKCS#11 Security Tokens with Tookan

Graham Steel (@graham_steel)

Conférence initiale en novembre 2010.

PKCS 11 décrit une interface pour les « tokens » d’authentification (clé USB, carte à puce,…). Les clés sont stockées dans le dispositif, protégées par un PIN.

Explication et démonstration de l’utilisation de Tookan pour tester les vulnérabilités de tels dispositifs de sécurité qui autoriseraient l’accessibilité en clair à des secrets théoriquement protégés dans celui-ci.

Beaucoup de produits ont montré des vulnérabilités (voir le site de Tookan)…

Peut-on éteindre l’Internet?

Stéphane Bortzmeyer (blog, @bortzmeyer)

Méthodes citées:

  • Couper les câbles – coûteux en main-d’oeuvre, réparable, difficile à faire sur une grande échelle
  • Trouver une 0-day, par exemple dans le code d’IOS (Cisco) – mais il faudrait des vulnérabilités multiples (plusieurs équipementiers) et l’attaque impose de ne pas couper l’Internet pour qu’elle puisse se propager
  • Attaque en déni de service – il faut cibler des ressources essentielles (par exemple la racine du DNS)
  • Action autoritaire (exemple de certains pays récemment coupés de l’Internet pendant plusieurs jours)

… facile donc de perturber l’Internet, essentiellement localement et pour un temps finalement assez court.

Pour améliorer la résilience:

  • Repenser Internet? Mais on se heurtera aux mêmes types de défauts intrinsèques aux systèmes complexes.
  • Réglementer?
S. Bortzmeyer croit plus en:
  • La redondance physique (éviter les points de défaillance unique – SPOF);
  • Ecrire des logiciels sans bogues – en tous cas direction à prendre;
  • Coordination des acteurs;
  • Action politique (au sens d’éviter des politiques de censure).

Architecture DNS sécurisée

Guillaume Valadon, Yves-Alexis Perez, ANSSI

Nota: l’ANSSI recrute 🙂

Présentation de DNSSEC (voir aussi article Wikipédia, ou un article précédent de S. Bortzmeyer).

L’enregistrement NSEC (Next SECure) a pour but de signer des enregistrements qui n’existent pas, afin d’éviter des usurpations non signées. La première solution fut d’énumérer ce type d’enregistrements manuellement. NSEC 3 (RFC 5155 ou sur le blog de S. Bortzmeyer)  est une évolution dans laquelle des empreintes cryptographiques sont utilisées à la place des noms.

Rump sessions (extraits)

Billetterie du SSTIC, Nicolas Bareil & Fabrice Desclaux. Signature HMAC-SHA1 du QR Code. Billet produit en Latex/Tikz, généré en Python.

XSS, Erwan Abgrall. Projet ANR DALI. Distinction payload/vecteur. Envisage fingerprinting grâce à ces résultats sans tenir compte du navigateur.

Digital forensics XML, Christophe Grenier. Format créé par Simson Garfinkel simsong@amg.org. Utilisé par scalpel, frag_find, photorec, ewfinfo, md5deep (*deep).

Audits techniques et analyses de risque, Pôle national de compétence SSI Education nationale. Méthodologie maison.

Référentiel d’exigences applicables aux prestataires d’audit de la SSI. ANSSI.

AirScan, Raphaël Rigo. Détecteur de points d’accès Wifi sous Nintendo DS. http://syscall.eu/

Orchids IDS opensource – http://www.lsv.ens-cachan.fr/orchids/

Incident response methodology, Jean-Philippe Teissier, CertSG.

Hack de couteau suisse USB auto-destructeur. 🙂

DGA/MI recrute aussi.

Usages offensifs de XSLT, Nicolas « Nicob » Grégoire.

Lendemain de SSTIC

J’ai eu la chance cette année de pouvoir préserver le début du mois de Juin et participer au Symposium sur la Sécurité des Technologies de l’Information et de la Communication / SSTIC 2010, dans les locaux de l’Université de Rennes.

Un grand bravo aux organisateurs qui relèvent le défi de rassembler plus de 400 personnes à des conditions financières très raisonnables (à comparer aux autres conférences sur la sécurité au niveau mondial). Merci enfin de leur accueil particulièrement chaleureux !

Blogging and tweeting

Le programme de la conférence était effectivement particulièrement riche et plusieurs d’entre nous ont fait l’effort de commenter chacune des présentations dans le détail (sid 1, 2, 3, n0secure, le micro-blogging de jpgaulier, Yvan VANHULLEBUS 1, 2, 3, Mat pentester).

Les hashtags à suivre sont évidemment #sstic et #sstic2010.

Quelques-unes des conférences

Sans faire la revue intégrale de toutes les interventions, voici ce qui a attiré mon attention:

  • DGSE et ANSSI en ouverture et clôture, pour mieux se faire connaître et clairement pour recruter (c’est un bon endroit pour le faire indéniablement);
  • Ph. Lagadec (OTAN/NC3A) qui présentait un démonstrateur d’une solution développée dans son laboratoire pour rassembler dans une interface opérationnelle (CIAP) l’ensemble des données de sécurité d’un réseau, sur la base d’un modèle de données commun et un projet connexe (DRA), pour l’analyse de risque en temps réel d’une alerte,
  • E. Barbry (avocat) a su présenter de façon simple et percutante l’environnement juridique en 2010 des RSSI,
  • Les parades contre les attaques physiques sont mises à l’épreuve avec une étude d’Intel VT-d (et une démonstration difficile d’une nouvelle attaque Firewire) et un retour sur les attaques contre les cartes réseaux et en particulier l’implémentation du protocole ASF (Alert Standard Format) par les petits gars de l’ANSSI (voir leur site à ce sujet).
  • Frédéric Connes (HSc) nous a fait partager les résultats de sa thèse sur un système de vote électronique basé sur la distribution d’un reçu à chaque votant et un processus de contrôle collaboratif. La communauté du SSTIC était un peu perplexe, car surtout peu habituée à discuter de ces sujets, mais comme j’avais pu l’évoquer avec G. Desgens dans notre livre L’identité à l’ère numérique, il est indispensable de développer une recherche poussée sur le vote électronique qui sera un outil incontournable de notre démocratie (Patrick Pailloux DG de l’ANSSI le répétait le lendemain),
  • F.-X. Bru et G. Fahrner (article par ici) nous ont fait une très sympathique et efficace présentation de leurs travaux sur la sécurité de Facebook et notamment la capacité de collecter rapidement des données personnelles grâce à la diffusion virale d’une application,
  • H. Welte (son blog) nous a présenté deux projets autour du GSM dans lesquels il est très actif, OpenBSC (plateforme expérimentale d’un contrôleur de station de base GSM) et OsmocomBB (une implémentation opensource de pile réseau de terminal mobile). Il a d’ailleurs été l’un des chanceux qui ont réussi leur démo cette semaine, avec une injection de code au démarrage d’un terminal GSM Nokia,
  • J’étais absent pendant la présentation de N. Ruff sur l’audit des applications .NET complexes, car convié à la présentation des technologies d’une entreprise locale,
  • C. Halbronn a fait un tour d’horizon des défauts de Windows Mobile et une démonstration des risques liés aux rootkits sur cette plateforme,
  • Une mention spéciale à Mathieu Baudet qui a été quelque peu chahuté par la salle, car il n’était pas préparé à ce type de public et donc avait une présentation trop peu technique et pas assez centrée sur son sujet principal. J’ai appris ensuite qu’en fait il remplaçait ici un autre orateur invité qui n’a pas pu venir. Le projet qu’il a présenté, OPA une plateforme de construction d’applications Web sensé améliorer la sécurité n’en est pas moins intéressant. Si les participants au SSTIC sont cohérents, j’espère que l’année prochaine on aura une présentation critique sur les failles éventuelles d’OPA 🙂 !

J’avais aussi la chance d’être invité et donc de pouvoir m’exprimer sans passer par les fourches caudines du comité de programme, donc un grand merci pour cette occasion qui m’était offerte de partager quelques réflexions sur la lutte contre les botnets (mon papier). N’hésitez pas à me contacter (les commentaires sont modérés, donc non publiés par défaut) si vous avez toute idée sur l’action dans ce domaine.

La Rump Session

4 minutes, pas une seconde de plus pour présenter une idée, un projet, une découverte ou se moquer d’un camarade de la communauté… J’ai relevé en particulier:

  • Une démonstration d’attaque contre les cartes de fidélité de machines à café, présentée de façon humoristique et très efficace avec un petit film.
  • Un projet prometteur de Maltego-like intitulé netglub, basé sur un modèle d’agents distribués.
  • Les dernières évolutions d’ExeFilter une plateforme de nettoyage des contenus malveillants potentiels dans les flux Internet (PDF, pages Web, mail,…). Une approche complémentaire aux antivirus, particulièrement intéressante.

Le Challenge SSTIC

Les résultats du Challenge SSTIC 2010 ont été annoncés au début de la deuxième journée du symposium. Particulièrement complexe, il était basé sur l’analyse d’un dump mémoire de téléphone Android, la résolution d’une énigme et pour les plus audacieux, l’utilisation de techniques cryptographiques. Pour y répondre il fallait retrouver une adresse de courrier électronique @sstic.org. Merci à l’ANSSI d’avoir fabriqué le challenge et à tous ceux qui se sont acharnés pour découvrir la solution. Au passage, on note qu’il y a indéniablement du développement à réaliser dans le domaine de l’analyse de la mémoire des systèmes de type Linux !

Bilan

Le public présent au SSTIC 2010 était globalement très jeune et assez pointu. La communauté française de la sécurité numérique technique donne une image dynamique et j’ai noté un vif intérêt pour les sujets liés à l’investigation numérique et à la criminalistique (plus fort en tous cas que chez les RSSI français). Ce n’est clairement pas une conférence pour débuter sa formation dans le domaine de la sécurité, mais avant tout pour partager sur l’actualité de la recherche et de la réflexion sur la sécurité numérique aujourd’hui.

Rendez-vous donc à l’année prochaine, je l’espère, et amitiés à tous les contacts que j’ai pu avoir pendant ces trois jours.