Vous trouverez ci-dessous un compte-rendu des conférences auxquelles nous avons assisté.
Jour 1
1.1 Voting between sharks
Les chercheurs Jésus Choliz et Sandra Guasch ont présenté une conférence sur la possibilité de mise en place d’un système de vote en ligne ainsi que les différents moyens de mettre à mal ce dernier. Pour citer les auteurs du talk : « il est possible de le mettre en œuvre correctement, même si il existe des milliers de façons de mal s’y prendre ».
Le système de vote proposé est assez similaire au système actuel, en remplaçant les différents éléments de la chaîne de vote (urne, personnes en charge de la validation du vote ou du décompte, etc) par des infrastructures numériques. Le système est alors vulnérable aux attaques auxquelles sont soumises ces infrastructures et par conséquent, un certains nombres de vérifications doivent être mises en place pour assurer l’anonymat, l’intégrité et la confidentialité d’un bout à l’autre de la chaîne.
Dans un premier temps, le votant reçoit un jeton unique lui permettant d’émettre son vote, puis de vérifier une fois ce dernier émis la conformité avec le choix sélectionné. Le bulletin de vote est ensuite chiffré côté client, puis envoyé sur un canal sécurisé (SSL/TLS). Enfin, ce bulletin ne pourra être déchiffré par le comité des élections ni avant la fin du vote ni de manière unitaire, grâce aux procédés suivants :
- Le partage des clés secrètes de Shamir : chaque destinataire connaît une partie de la clé, ne lui permettant pas de déchiffrer le message ;
- Le chiffrement homomorphe : tous les bulletins doivent être déchiffrés en même temps et un bulletin ne peut pas être déchiffré de manière unitaire
Le système de vote complet permet ainsi de sécurisé le vote électronique tout en restant proche du modèle de vote classique grâce à un certain nombre de propriétés cryptographiques et en se reposant sur des mécanismes robustes et éprouvés, tels que les infrastructure à clé publique ou bien l’authentification double facteur.
1.2 Whisper in the Wire: Voice command injection Reloaded
Ce talk a été présenté Chaouki Kasmi et Jose Lopes Esteves, experts sécurité à l’ANSSI, et fait suite à la conférence Hack in Paris 2015 intitulée « You don’t hear me but your phone voice interface does ». Lors de cette conférence, les auteurs ont présenté les résultats de leur recherche sur l’injection de commandes vocales à destination de smartphones via des ondes électromagnétiques situées sur une bande de fréquence inaudible.
Les auteurs du talk ont remarqué que sur une grande majorité des smartphones, la connectique liée au chargeur USB était située suffisamment proche de celle du microphone pour que les variations d’intensité et de tension puissent être utilisées pour transmettre des commandes vocales au microphone, qui agit alors comme une antenne. Trois scenarii d’attaque ont été présentés :
- Attaque via le réseau électrique sur le téléphone en chargement via câble USB et bloc d’alimentation USB à secteur ;
- Attaque via le réseau électrique sur lequel est branché un ordinateur utilisé pour recharger le téléphone : un contournement des filtres passe-haut de la carte mère est nécessaire, ainsi que le maintien du poste de travail dans un état fonctionnel ;
- Attaque directe du téléphone en chargement via l’utilisation d’un bloc d’alimentation modifié.
1.3 Machine learning-based techniques for network intrusion detection
Cette conférence a été présentée par Clarence Chio (Shape Security) et se concentre sur la mise en application des avancées dans le domaine de l’apprentissage et de la fouille de données. Ces avancées sont actuellement utilisées par des fonctionnalités du type « les utilisateurs qui ont acheté ceci ont aussi acheté… ».
Le chercheur propose d’utiliser ces mêmes avancées afin de détecter des comportements suspects, malveillants ou bien de détecter de nouvelles attaques sur les systèmes actuels.
La conférence s’est majoritairement concentrée sur les techniques de création de modèles de « normalité » et la sélection des caractéristiques pertinentes, puis sur l’entraînement de ces modèles afin d’augmenter leur robustesse.
La seconde partie du talk s’est orienté vers les différents types d’attaques qu’il est possible de mettre en œuvre à l’encontre de ce système de détection. Bien que les méthodes utilisées soient particulièrement techniques, le but reste le même : il s’agit d’élargir peu à peu la frontière définissant la « normalité » par insertion de bruit ou de comportements proches de cette frontière à une fréquence faible. Sur le long terme, il redevient alors possible de contourner le système de détection.
1.4 What could have derailed the Northeast Regional no. 188?
Présentée par Moshe Zioni, cette conférence analyse l’accident du train Northeast Regional 188 et montre en quoi cela aurait pu être une cyberattaque. Ledit train a souffert d’un excès de vitesse (100 miles/h) dans une courbe limitée à 50 miles/h, entraînant son déraillement ainsi qu’un bilan de 8 morts et plus de 200 blessés.
Le modèle de train évoqué est l’Amtrak Citites Sprinter, possédant en tête des wagons une locomotive électrique contrôlée par un automate Siemens SIBAS 32. Les ordres sont transmis entre les différents composants du train par un bus appelé MVB (Multifunction Vehicle Bus), partagé entre un nœud maître et des nœuds esclaves.
Le protocole utilisé par le MVB souffre des mêmes défauts qu’une grande partie des protocoles liés aux automates industriels, à savoir une absence d’authentification ou de chiffrement des communications. Après avoir examiné la structure des paquets transitant sur le MVB, le conférencier explique qu’il est possible d’abuser de la fonctionnalité de détection de nouveaux nœuds du nœud maître afin de s’insérer comme second nœud maître. L’accès physique au MVB est possible depuis des cabines/systèmes accessibles aux voyageurs (gestion des lumières, de la climatisation, etc). Selon l’auteur, il pourrait également être possible d’accéder au MVB depuis le Wifi proposé en accès libre dans le train.
Le talk se conclut sur le besoin d’abandonner ces systèmes vétustes au profit de réseaux alternatifs tout aussi fonctionnels, ainsi que sur la nécessité de forcer la séparation logique et physique entre les systèmes de contrôles et les systèmes offerts en accès aux utilisateurs.
1.5 All your door belong to me – Attacking physical access systems
Lors de sa conférence, Valérie Thomas a présenté les dernières avancées dans le domaine de la sécurité du contrôle d’accès physique (portes, portiques, lecteurs de cartes, badges d’accès…). La vision de la sécurité au sein de ce domaine est différente de celle que l’on observe dans le monde de la sécurité informatique : héritée d’une culture militaire, les utilisateurs ne sont pas habitués au système de mise à jour qui rend ce système réticent au changement.
La présentation des attaques s’est orientée autour de trois axes :
- Vulnérabilités des badges d’accès : différences techniques entre les badges haute et basse fréquence, chiffrement des données (si applicable), duplication des badges d’accès (exemple avec Proxmark3)… ;
- Vulnérabilités des lecteurs de cartes : rejeu des authentifications, attaques par déni de service… ;
- Vulnérabilités des équipements de contrôle d’accès : déclenchement de l’ouverture depuis l’autre côté du portique, présence de l’équipement sur le réseau et protocoles non sécurisés en place (FTP, http non authentifié…)
La conférence s’est conclue sur le long chemin restant à parcourir avant d’obtenir un niveau de sécurité pour le contrôle d’accès physique équivalent au niveau actuel en sécurité logique.
1.6 From zero to SYSTEM on full disk encrypted Windows system
Les chercheurs Nabeel Ahmed et Tom Gilis ont présenté un talk concernant le déverrouillage et l’élévation de privilèges sur un poste de travail Windows (jusqu’à Windows 10 compris), même chiffré avec Bitlocker. Dans ce dernier cas, leur attaque nécessite cependant que Bitlocker utilise la clé stockée sur TPM et non un code PIN pré-boot ou un jeton USB.
L’attaque proposée prend la suite de l’exploitation de MS15-122 telle que décrite par Ian Haken, à savoir la corruption du cache d’identifiant local en utilisant un faux contrôleur de domaine simulant un mot de passe expiré pour la victime. Lors de cette attaque, bien que le changement de mot de passe ait été un succès, l’attaquant ne pouvait pas s’authentifier correctement sur le faux contrôleur puisque le compte machine de la victime n’était pas présent avec les identifiants corrects. Cette vulnérabilité a depuis été corrigées.
Le patch proposé par Microsoft a cependant été contourné par les deux chercheurs qui ont ajouté le nom principal de service (SPN) au compte machine situé sur le faux contrôleur. Un ticket Kerberos TGT est émis, puis un ticket TGS. Cependant, le TGS n’est vérifié (à l’aide du mot de passe du compte machine, ici inconnu) qu’après changement du cache local du mot de passe utilisateur.
Les deux chercheurs décident alors d’aller plus loin dans l’exploitation, et d’obtenir les privilèges SYSTEM sur le poste. Ils choisissent d’utiliser l’application des GPO machines (exécutée avec les droits SYSTEM) pour forcer l’exécution d’une invite de commande. Le point bloquant rencontré (la nécessité de correspondance entre le SID machine et le SID présent sur le faux contrôleur) a été résolu grâce à l’une des fonctionnalités récentes de l’outil Mimikatz. L’exploitation réussit, et les chercheurs sont désormais administrateurs du poste.
Jour 2
2.1 API + 1000 lines of code = Super pretty OSINT
Matias Katz a présenté ce talk dans lequel il décrit comment il a interfacé les API Twitter et Google avec la bibliothèque Python Natural Language Toolkit (NLTK) pour créer un outil capable rapidement d’identifier le lieu d’écriture d’un tweet, ainsi que la tendance générale (positive, négative ou neutre) associée à ce tweet.
L’outil proposé n’a aucune vocation commerciale, et permet à son auteur de déterminer le point de vue moyen d’une région particulière du blog (l’exemple fourni étant le point du vue des États-Unis sur le brexit).
2.2 Security offense and defense strategies: Video-game consoles architecture under microscope
Mathieu Renard et Ryad Benadjila (ANSSI) ont présenté un talk sur la sécurité des consoles de jeu vidéo. L’importance du risque financier associé au piratage des jeux vidéo l’attention particulière portée à la sécurité hardware des consoles.
La Playstation 1 ne présentait presque aucune mesure de sécurité, ce qui a permis l’apparition de systèmes de triches tels qu’Action Replay. Le système de protection des CD de jeu par DRM a également été contourné.
Le conférencier a ensuite présenté les différents systèmes de sécurité des consoles récentes et les attaques mises en œuvre pour contourner ces systèmes dont :
- Xbox 1 : utilisation du secure boot, de code bootloader read-only...
- Xbox 360 : utilisation d’un coprocesseur cryptographique, virtualisation via un hyperviseur avec contrôles d’intégrités, présence d’un « e-fusible » en prévention de rétrogradation de la version du firmware console ;
- PS3 : virtualisation via un hyperviseur, protection contre les attaques Direct Memory Access (DMA), mais absence de protection W^X (write or execute, but not both)
- PS4 : utilisation du secure boot, protection W^X, ASLR sur l’espace mémoire utilisateur…
Les attaques sur consoles ont montré qu’il était possible de compromettre ces dernières soit par une exploitation software ou hardwarevisant à trouver des vulnérabilités dans les systèmes de protection ou codes de bootstrap de la console.
2.3 DIFFDroid – Dynamic analysis made easier for Android
L’outil DIFFDroid présenté par Anto Joseph est un framework d’analyse d’applications Android permettant à son utilisateur de journaliser les opérations effectuées, ou bien de modifier la logique de ces dernières. Il se base sur l’outil Frida qui permet d’instrumenter les applications Android.
DIFFDroid permet à l’utilisateur de reposer sur des modules préexistants (dont les modules XPosed) ou bien écrits en JavaScript afin de réaliser l’instrumentation de l’application. Il est ainsi possible de faire croire à un téléphone rooté que ce dernier n’est pas rooté, permettant alors de contourner les restrictions de plusieurs applications tierces.
2.4 HARDSPLOIT tool: the next hardware hacking laboratory?
Yann Allain et Julien Moinard ont présenté Hardsploit, un outil physique dédié aux tests d’intrusion matériels. L’outil peut permettre d’analyser des équipements « intelligents » (Internet of Things ou IOT), qui sont particulièrement révélateurs des habitudes de leur possesseur.
Hardsploit repose sur des procédés connus d’accès aux équipements embarqués (CAN, UART, JTAG, SPI…) pour accéder au firmware de ce dernier, permettant à l’utilisateur de le reverser.
Une démonstration a été effectuée sur un système de digicode pour porte.
Quelques auditeurs Wavestone ont suivi l’an dernier la formation sur le Hardware Hackingdonnée par les auteurs, qui est de grande qualité. Yann Allain et Julien Moinard seront présents cette année à la BlackHat, mais leur formation est « sold out ».
2.5 Type=5, Code=1 (or Lady-in-the-Middle)
Dorota Kulas a présenté un talk autour de l’attaque de type ICMP redirect, permettant d’effectuer des interceptions réseau (Man-in-the-Middle). Des évolutions du noyau Linux ont rendu cette attaque impraticable, assertion qu’essaiera d’invalider la conférencière.
L’attaque historique consistait en l’envoi d’un paquet ICMP redirect à la victime afin de s’ajouter en tant que canal de communication plus rapide que le passage par la passerelle par défaut. La mitigation de cette attaque consistait à vérifier que le paquet ICMP redirect émanait bien de la gateway par défaut.
Le contournement proposé par Dorota Kulas consiste à simuler une communication d’un serveur externe vers la victime pour que la victime envoie un paquet hors du LAN. Les conditions suivantes sont requises :
- Connaissance de l’adresse IP de la passerelle par défaut « G »
- Connaissance d’un serveur externe « T » susceptible de communiquer avec la victime
- Présence dans le même sous-réseau que la victime « V »
L’attaquant envoie alors un paquet ICMP echo requestà destination de « V » en usurpant l’adresse de « T ». La victime envoie alors un paquet echo replyà destination de « T » qui passe par la passerelle. Le serveur envoie alors un paquet ICMP redirectà destination de « V » en usurpant l’adresse de « G ».
2.6 How to successfully execute a professional Social Engineering attack – and make money with it!
Dominique Brack (Reputelligence) a présenté un talk centré sur le Social Engineering, à savoir la capacité à mettre à mal les ressources humaines et sociales d’une infrastructure afin d’obtenir des informations sensibles.
Le conférencier a montré l’importance du Social Engineering comme élément clé des attaques ciblées, de par sa facilité d’exécution (personnel non sensibilisé, toolkitsà disposition de l’attaquant) et la qualité des informations obtenues.
A suivi un tour d’horizon des différentes techniques, dont font partie l’écoute active, la récupération des données sensibles jetées aux ordures… dans le but d’établir un schéma des connexions et niveau de relation entre les différents acteurs et composants de l’infrastructure ciblée, permettant ensuite à l’attaquant de sélectionner avec précision le maillon faible de sa cible.
Reputelligence a publié un ouvrage dénommé « Social Engineering Engagement Framework » qui récapitule les différentes techniques et principes utilisés lors de telles attaques, ainsi qu’un tour d’horizon des moyens de détection et remédiation.