Compte-rendu de la conférence JSSI 2012
Date : 30 Mars 2012
La 11ème édition de la conférence JSSI (Journée de la Sécurité des Systèmes d'Information), organisée par l’OSSIR (Observatoire de la Sécurité des Systèmes d'Information), s’est déroulée à Paris le 13/03/2011. Comme les années précédentes, elle a réuni une centaine de participants. Nous faisons ici un compte-rendu des différentes présentations. Le programme complet et les présentations sont disponibles sur le site de la conférence.
Cette année, la conférence était axée sur le thème de l’intrusion dans les SI (réalisation de tests d’intrusions, outils de défenses DDOS, analyse post incident, etc..). Les sujets présentés étaient plutôt techniques : hormis les 2 premières présentations qui traitaient de problèmes organisationnels et juridiques, les 5 autres présentations étaient fortement liées à des outils et des méthodes pratiques.
Le rôle de la prestation de services en sécurité (par MBDA)
Cette présentation aborde les différents aspects liés à la prestation de service pour l'audit de sécurité :
- Pourquoi faire un audit ?
- Pourquoi faire appel à un prestataire ?
- Comment le choisir ?
- L'importance de la phase de démarrage,
- Le suivi et la restitution.
Tout en restant classique, le discours est étayé d'exemples intéressants (comme la suggestion que certains travaux sensibles soient réalisés sur du matériel de l'entreprise uniquement pour en préserver la confidentialité), et insiste sur :
- L'importance de la compréhension réciproque : prendre le temps de connaître son prestataire, lui demander une restitution adaptée au contexte de l'entreprise (un discours compréhensible et des préconisations pertinentes),
- L'importance de la confiance dans le prestataire.
Aspects juridiques des tests d'intrusion (par HSC)
Cette présentation analyse les problèmes légaux qu’il faut prendre en compte lorsque l’on réalise un test d’intrusion comme par exemple :
- A-t-on le droit de faire des tests d’intrusion ?
- Le prestataire choisi peut-il sous-traiter la réalisation ?
- Est-ce que certaines techniques d’attaques sont interdites (par exemple l’ingénierie sociale) ?
- L’hébergeur du serveur audité peut-il porter plainte en considérant l’audit comme une attaque de son infrastructure ?
- etc…
Le présentateur indique que ces problèmes sont résolus si une convention d’audit correctement rédigée est préparée et signée entre les parties impliquées à un niveau hiérarchique approprié. Il donne le contenu type de cette convention d'audit (11 pièces qui incluent en particulier : une feuille d’autorisation, une description du périmètre, les limites du test, etc...)
Protection du site Charlie Hebdo par le logiciel NAXSI (par NBS)
Cette intervention présente NAXSI, un logiciel WAF (Web Application Firewall) que la société NBS a développé pour protéger les sites web contre les tentatives d’attaques.
NAXSI est un logiciel OpenSource qui s’installe sur un reverse-proxy Nginx. Pour détecter les attaques, il n’utilise pas une base de signatures (approche baptisée WAA – Web Application Antivirus – par le présentateur). Il utilise plutôt un moteur d’analyse qui évalue les requêtes web et leurs attribue un score. Si le score dépasse une limite fixée, la requête est considérée comme dangereuse et refusée. Pour éviter les faux positifs, NAXSI utilise des listes blanches qu’il construit lors d’une période d’apprentissage préalablement à sa mise en production. L’apprentissage se fait en observant les requêtes web générées par des utilisateurs non malveillants et en en déduisant les caractéristiques du trafic légitime.
NAXSI a été utilisé pour la première fois en grandeur nature en novembre 2011, pour défendre le site web de Charlie Hebdo lorsque celui-ci a été attaqué suite à la publication d’un numéro du journal jugé islamophobe.
Retour d'expérience sur les outils d'audit d'applications Web en boite noire" (par Orange)
L’orateur présente un retour d’expérience sur les outils automatiques pour l’audit de sites web. Il explique tout d’abord que ce type d’outils est composé de 4 briques, et que ces 4 briques doivent être correctement implémentées pour que l’outil soit performant :
- La brique « crawler » : elle a pour rôle de parcourir le site web à la recherche des points d'entrées de l’application web.
- La brique d'injection : elle doit être capable d’injecter les tentatives d’attaque au travers des différents vecteurs disponibles : paramètres GET, POST, cookies, etc…
- La brique d’analyse des vulnérabilités : elle doit être capable d’explorer les différents types d’attaques : XSS, SQLi, etc…
- La brique de reporting.
L’orateur présente ensuite les résultats des tests faits sur 4 outils open-sources du domaine : w3af, Arachni, Wapiti et Skipfish. Arachni semble globalement le plus efficace, mais w3af a une meilleure couverture en termes d'exhaustivité des tests (brique d’analyse).
Globalement, ces outils automatiques ne sont pas la panacée. En particulier, ils ne sont pas utilisables dans un environnement de production (on risque d’injecter dans la base de données des données automatiques générées par l’outil) et sont assez démunis dans le cas où le site à tester est difficile à « crawler ».
Les injections No-SQL (par NGM Security)
No-SQL est une nouvelle famille de bases de données qui ne repose pas sur le modèle classique de la base de données relationnelle. Cette technologie est encore assez peu répandue mais elle est utilisée en particulier sur des applicatifs traitant de très gros volumes de données et nécessitant de bonnes performances. Par exemple Facebook et Twitter indiquent utiliser la technologie No-SQL. L’exemple le plus connu de base de données No-SQL est MongoDB.
La présentation étudie si le principe des attaques par injections (attaques très connues dans le monde SQL) peut être transposé aux bases de données No-SQL. Et la réponse est oui : tout comme pour une base de données classique, si les données utilisateur ne sont pas contrôlées et filtrées, alors l’injection No-SQL est possible.
XML et sécurité (par Agarri.fr)
L'orateur présente tout d'abord la technologie XML :
- une structure de base très simple (un document hiérarchisé au moyen de balises), mais fortement extensible. En créant des espaces de noms ou « NameSpaces », on peut décrire en XML n'importe quelle nouvelle structure de données.
- XML introduit ainsi la notion d'homo-iconicité : toutes les données XML ont la même apparence, mais pourtant elles décrivent des sémantiques totalement différentes (en fonction du NameSpace auquel elles se rapportent). Ainsi, un fichier XML peut contenir des choses aussi différentes que du SVG (format graphique) ou une XSLT (une transformation textuelle), des instructions PI, du XHTML (HTML étendu), ou même mélanger tous ces objets au sein d'un même fichier XML.
- Même si on ne le voit pas au premier abord, XML est en fait présent sur de nombreux sites web. Il est par exemple utilisé sur les sites web de Microsoft Azure, de WordPress, du W3C ou de Chronopost.
La suite de l'exposé est consacrée à la présentation de failles de sécurité liées à XML, dont voici quelques exemples :
- La dissimulation de contenu malveillant par encapsulation. Il est possible par exemple de placer un document PDF à l'intérieur d'un fichier XML en utilisant le NameSpace XDP défini par Adobe. Cette encapsulation permet de dissimuler des fichiers PDF malveillants (les antivirus ne savent pas les détecter).
- Les attaques au moyen de la « LOL Bomb » (une entité XML complexe contenant des millions de fois le mot « LOL ») qui peut servir soit à créer un déni de service, soit à identifier qu’un serveur distant contient un moteur XML (finger-printing)
- Les attaques XEE (XML External Entity) qui permettent de forcer les moteurs XML vulnérables à traiter des contenus externes, et par exemple à visualiser le contenu de fichiers normalement non accessibles.
- Les vulnérabilités XSLT. Il s’agit ici d’une actualisation de l’étude sur l’usage offensif de XSLT que l’orateur avait présent en 2011 à la conférence SSTIC (cf. notre compte-rendu de cette conférence).
Forensics Windows (par Devoteam)
Cette présentation fait le point sur les outils d'investigation disponibles pour une analyse « forensics » de Windows. Elle n'étudie pas les approches basées sur la capture de l'état instantané du système Windows (capture de l'image de la mémoire vive, capture des processus et connexions réseau en cours, etc...) car le plus souvent les incidents analysés sont anciens (l'investigation a lieu plusieurs mois après l'incident) ce qui limite beaucoup les possibilités de ce type d'analyse. Les techniques utilisées couvrent les domaines suivants :
- Analyse du système de fichiers. Trois grands domaines sont explorés lors de cette analyse : l'examen des dates associées aux fichiers (date de création, modification et d'accès), l'examen des ACL posés sur les répertoires (pour le cas où un pirate aurait ajouté un ACL pour accéder au contenu du répertoire) et l'étude des ADS (Alternate Data Stream).
- Analyse des journaux d’événements Windows. Le présentateur aborde surtout les difficultés introduites par le nouveau format des journaux d'événements (fichiers « .evtx » apparus avec Windows Vista) par rapport au format traditionnel (fichier « .evt » existant avant Vista). Par exemple, le format binaire du fichier s'est complexifié, en passant d'un format séquentiel, à un format organisé en groupes d'événements. Le présentateur recommande les outils suivants : Evtx Parser (PERL), TZWorks Windows Event Log Viewer et Microsoft Wevtutil.
- Analyse de la base de registres. La base de registres contient un grand nombre d'informations utiles lors d'une analyse forensics car la plupart des actions utilisateur provoquent sa modification (comme par exemple les informations MRU – Most Recently Used).
Il n'existe pas d'outils unifié intégrant ces différentes approches (alors qu'il existe des « framework » comme Volatility pour les analyses « live » ou des outils avancés de récupération de données effacées) et la trousse à outils de l'investigateur est par conséquent pleine de petits utilitaires qu'il faut maitriser. Pour pallier à ce manque, le présentateur participe au développement d'un outil baptisé « RtCA ». Il s'agit d'un produit jeune (la version 0.1 est disponible depuis octobre 2011 cf. cette annonce sur le blog de l’auteur), qui évolue de façon rapide.
Conclusion
Le sujet traité par la conférence JSSI cette année (l’intrusion informatique) couvrait un domaine très large qui a surtout été abordé sur des aspects techniques. Même si l’on regrette un peu de ne pas avoir reçu une vision plus globale sur la gestion de cette menace, les présentations étaient d’un bon niveau ce qui a rendu la conférence intéressante.