Compte rendu de la conférence SSTIC 2012 (2ème partie)
Date : 28 Septembre 2012
Nous poursuivons dans ce second article notre revue des présentations qui se sont déroulées à la conférence SSTIC 2012 en juin 2012. La première partie de cet article, parue dans le Bulletin Sécurité du mois d’août, est disponible ici.
La qualité d'hébergeur en 2012 (par OVH)
Cette présentation est réalisée par le directeur juridique d’OVH. Elle s’intéresse à définir le statut légal d’hébergeur : qui est hébergeur, et quelles sont ses obligations légales ? La LCEN définit 3 statuts : fournisseur d’accès, hébergeur et éditeur de site. Pour un certain nombre de contenus (par exemple, les sites participatifs comme YouTube.com ou les sites d’enchères comme Ebay.com), il y a une ambiguïté de statut (sont-ils hébergeurs ou éditeurs ?) et la plupart de ces sites préfèrent se considérer comme hébergeur, car cela diminue leur responsabilité lorsqu’un contenu illégal est hébergé. Il est possible que dans le futur de nouveaux statuts apparaissent, comme par exemple celui de « courtier » pour eBay. Pour ce qui est des obligations légales, celles des hébergeurs sont assez claires :
- Conserver les logs 12 mois
- Mettre en place un mécanisme de signalement pour les contenus manifestement illicites
- Traiter les notifications reçues dans un délai rapide (typiquement en 24 h).
L’orateur précise que les notifications doivent être envoyées en courrier recommandé et inclure obligatoirement :
- La date de notification
- Le demandeur (identité et statut)
- Le destinataire
- Le motif de la notification (contre-façon, diffamation, etc…)
- Les objets délictueux et leurs localisations exactes (URL)
Avant de s’adresser à l’hébergeur, le plaignant doit avoir d’abord contacté l’éditeur du site concerné.
Les présentations courtes
Elsim et Androguard, par Antony Desnos (VirusTotal.com)
L’orateur présente un outil qui recherche les similarités entre 2 binaires Android. Cela permet, par exemple, de déterminer quelles bibliothèques (en particulier les bibliothèques publicitaires) sont utilisées dans les applications Android gratuites.
Dissecting web attacks Using Honeypots, par Davide Canali (Eurecom)
L’orateur présente l’infrastructure Honeypot mise en place par Eurecom pour observer ce que font les pirates sur les sites web, une fois qu’ils ont infecté ces sites. L’infrastructure comporte 500 sites web herbergeant chacun 7 CMS vulnérables. Le tout redirige vers une série de serveurs virtualisés hébergés au sein d’Eurecom. Le dépouillement des données collectées est en cours.
Durcissement de programmes C avec SIDAN, par Pierre Karpman (ENS Cachan)
Le principe est d’insérer dans le code C des assertions afin de détecter les tentatives d’attaques. L’outil s’appuie sur SIDAN (un plugin pour l’outil Frama-C d’analyse de code) et a fait l’objet d’un rapport de Master.
Netusse, un fuzzer de kernel, par Clément Lecigne (Google)
L’orateur présente Netusse, un fuzzer de de kernel conçu en 2006. Il montre comment ce fuzzer a mis en évidence un débordement mémoire dans le kernel FreeBSD.
Vérification de code système par typage statique, par Etienne Million (EADS-IW)
L’orateur étudie comment la mise en place d’un typage fort dans les appels au noyau Linux peut permettre de détecter des appels noyaux dangereux (et en particulier des tentatives d’attaques).
Détection des noms de domaines malveillants, par Ronan Mouchoux (La Poste)
L’orateur présente différentes techniques permettant d’identifier que des noms de domaines sont suspects (et correspondent, par exemple, à des noms de domaine générés aléatoirement par des malwares) : une liste de règles de contrôle, l’analyse bayésienne, le calcul de distance de Shannon, etc…
Contrôle d’accès mandataire pour Windows 7 (par le CEA)
L’orateur montre comment, en reprenant le modèle de SELinux, on peut implémenter un modèle d’accès MAC sur Windows 7. Pour rappel, le modèle MAC (Mandatory Access Control) s’oppose au modèle DAC (Discretionary Access Control) classique.
Expert judiciaire en informatique (par Zythom)
Zythom est le pseudonyme de l’auteur d’un blog dédié à l’expertise judicaire en informatique. L’objet de sa présentation est d’expliquer ce qu’est un expert judiciaire. Tout d’abord, il précise qu’il ne s’agit pas d’un métier, mais d’une activité, et que lui la pratique en plus de son métier de responsable informatique. Il explique les démarches à suivre pour devenir expert judiciaire, puis donne des exemples d’affaires qu’il a eues à traiter et des outils qu’il utilise. Il précise par exemple que ce n’est pas parce qu’il est expert auprès d’un juge d’instruction qu’il est expert dans toutes les technologies informatiques qu’il a à traiter. Lorsque ce n’est pas le cas, il s’appuie sur son expérience et sur son écoute des parties impliquées pour analyser la situation et donner son avis au juge.
Forensics iOS (par SOGETI ESEC)
Cette présentation s’intéresse au chiffrement des données sur les terminaux iOS. On notera sur ce point qu’Apple a publié fin mai 2012 un premier document consacré à ce sujet.
- Le chiffrement est apparu sur iOS 3 en juin 2009. Il s’agissait alors d’un chiffrement intégral des 2 partitions du système de fichiers (une partition système et une partition données), à partir d’une clé liée au matériel (la clé UID). Une fois que le terminal est booté, les données sont déchiffrées à la volée, et sont donc accessibles en clair par n’importe quel processus s’exécutant sur le terminal.
- A partir de l’iOS 4 (juin 2010), il est aussi possible de chiffrer individuellement chaque fichier, et chaque fichier a alors sa propre clé.
- L’iOS 5 (octobre 2011) apporte des améliorations à la version précédente.
Les orateurs indiquent que globalement le chiffrement mis en place est robuste. Mais actuellement peu d’applications (parmis lesquelles l’application Mail) exploitent les possibilités apportées par l’iOS 4. Les données des autres applications sont alors non protégées lorsqu’un code malveillant s’exécute sur le terminal.
Source Address Validation Improvements –SAVI (par Orange)
Afin de résoudre le problème des attaques utilisant des adresses IP usurpées, l’IETF a créé en 2008 un groupe de travail pour mettre au point le mécanisme de SAVI. Le principe est de demander à certains équipements réseaux (baptisés les « entités SAVI »), se trouvant le plus proche possible de la source du trafic, de vérifier que le trafic qu’il transmet n’utilise pas des adresses sources usurpées. Cela peut être fait par plusieurs moyens, ce qui donne lieu à plusieurs variantes de SAVI. Par exemple le « DHCP-SAVI » s’appuie sur l’observation du trafic DHCP pour connaitre les machines se trouvant en amont d’une entité SAVI. Seules les machines connues en termes de DHCP sont alors autorisées à traverser l’entité SAVI. Les autres variantes de SAVI sont « FCFS SAVI » (First Come First Served), « SEND SAVI » (Secure Neighbor Discovery) et « MIX SAVI ».
Les entités SAVI sont souvent implémentées au niveau des routeurs de bordure d’un opérateur, en amont de la chaine CPE (Customer Premise Equipment) et AN (Access Node). SAVI a par exemple été déployé en Chine sur le réseau CERNET.
Utilisation malveillante des suivis de connexions (par Eric Leblond)
L’orateur explique que la fonction de suivi des connexions de NetFilter (accessible via la commande « ConnTrack ») pose des problèmes lorsque certains modules « Helpers » sont activés. Les « Helpers » sont des compléments, qui permettent à Netfilter de s’adapter à des protocoles qui créent dynamiquement des flux (comme FTP, H323, SIP ou IRC). Par exemple, il existe un « Helper » pour FTP qui surveille le traffic FTP, détecte qu’une connexion de données va être ouverte, et demande à Netfilter d’autoriser cette connexion puisqu’elle est relative à une connexion FTP légitime. Si un attaquant parvient à tromper un « Helper », il peut être possible de faire ouvrir des connexions arbitraires.
Certains « Helpers » exotiques sont ainsi clairement dangereux (par exemple, le helper « FTP » en mode « loose=0 » ou le helper « IRC »). Mais des attaques sont également possibles avec des « Helpers » classiques, si l’attaquant génère un trafic usurpé semblant provenir du serveur. En exemple, l’orateur fait la démonstration d’un programme nommé « opensvp », qui en générant des paquets FTP usurpés, parvient à faire ouvrir le port TCP 22 sur le firewall. La vulnérabilité fonctionnerait sur certaines configurations trop laxistes de firewalls Checkpoint …
Influence des bonnes pratiques sur les incidents BGP (par l’ANSSI et Orange)
Cette présentation s’intéresse aux incidents BGP, et plus particulièrement aux problèmes induits par l’annonce de fausses routes BGP : s’il diffuse de fausses annonces BGP, le propriétaire d’un réseau peut faire passer par chez lui un trafic réseau arbitraire. Ce type d’anomalie se produit régulièrement, et le plus souvent par accident (erreur de manipulation). Les outils de surveillance du trafic BGP (comme BGPmon) permettent de détecter les annonces erronées et donc d’enclencher rapidement des mesures de désinfection des tables de routage BGP. Quelques autres exemples d’incidents et les moyens de résolutions associés sont également présentés.
Success and limitations of static binary analysis (par Halvar Flake)
L’objet de la présentation est de faire un point sur l’efficacité des outils de recherche de failles. L’orateur s’intéresse ici aux outils qui font une recherche logique, par analyse du code source (ou binaire) de l’application, par opposition avec les outils de recherche de type « boite-noire » comme les « fuzzers ». De nombreux progrès ont été faits dans ce domaine, avec des techniques telles que l’Exécution symbolique, la Concolic Execution ou les solvers SMT.
Malgrès tout, l’orateur montre que ce type d’outils peut être mis en échec sur des codes simples. Par exemple, il est très difficile pour un outil de détecter la vulnérabilité découverte en 2003 dans le code de la fonction « crackaddr() » de sendmail (voir cet article pour plus de détails).
Face à cette difficulté, l’orateur propose une démarche surprenante, mais pragmatique : le plus simple aujourd’hui serait de demander aux développeurs de lancer systèmatiquement l’outil de recherche de failles sur le code qu’ils écrivent, et de simplifier leur code lorsque l’outil indique que le code à analyser est trop complexe pour que l’on puisse détecter les vulnérabilités.
Miasm : Framework de reverse engineering (par le CEA)
Miasm est un outil développé pour faciliter le reverse engineering. Il permet de manipuler un binaire et le transforme pour cela dans un langage intermédiaire propre à Miasm. Miasm est ensuite capable de faire de l’exécution symbolique (il simule l’exécution du binaire). Miasm est très proche dans ses fonctionnalités de l’outil Metasm. Le développement de cet outil a démarré en 2007 et ce dernier est disponible publiquement depuis juillet 2011. Miasm peut être complété avec elfesteem (qui permet de générer un exécutable autonome à partir du programme en cours d’analyse sous Miasm) ou grandalf (pour visualiser le binaire sous forme graphique). Il est prévu que ce dernier soit complété pour devenir un outil comparable à IDA Pro et qui sera baptisé “frida” (qui phonétiquement est identique à “Free IDA” …).
Rétroconception et débogage d'un baseband Qualcomm (par Sogeti ESEC)
La présentation s’intéresse au composant « Baseband » Qualcomm d’une clé 3G. Le « Baseband » est le processeur spécialisé qui dans un smartphone gère tout l’aspect téléphonie (en complément du processeur principal chargé lui de faire fonctionner l’OS du téléphone). L’orateur explique comment il a réussi à dumper le firmware de la clé 3G, puis il analyse ce firmware.
Protéger et défendre le cyberespace militaire : la démarche nationale
Cette présentation de clôture de la conférence a été faite par le contre-amiral Coustillière, qui est l’officier général cyberdéfense au sein de l’état major de la Défense Nationale. Il présente la stratégie du Ministère de la Défense en matière de lutte informatique défensive. Sa présentation montre clairement que la cyber-défense est un sujet de préoccupation majeur et que des efforts importants sont faits par le ministère dans ce domaine.
Pour plus d’informations :
- Le site officiel de la conférence : https://www.sstic.org/2012/actes/
- Quelques-uns des blogs qui parlent de la conférence 2012 :