SecurityInsider
Le blog des experts sécurité Wavestone

Compte-rendu de la conférence Hack.lu 2015



Solucom était présent à la 11ème édition de la « Hack.lu » qui s’est déroulée du 20 au 22 octobre, à Luxembourg. Chaque année cette conférence de sécurité gagne en renom avec cette année plus de 500 inscrits.
Nous vous proposons un compte rendu des conférences auxquelles nous avons assisté. Les slides des présentations sont également disponibles en ligne : http://archive.hack.lu/2015/.

Keynote: Internet of Tchotchke (Paul Rascagnères)

La conférence a commencé par une introduction sur l’Internet des objets avec une présentation des différents capteurs « connectés » disponibles sur le marché (capteur de température, d’humidité, de courbure, etc.). Les différents outils nécessaires à l’étude de ces capteurs ont ensuite été présentés,  notamment le matériel requis pour effectuer du reverse engineering (Bus pirate, Shikra, oscilloscope, sniffer, émetteur/récepteur radio, etc.).
Le conférencier a ensuite présenté quelques « hacks » :
  • Dans le premier scénario, une box permettant de rechercher des ondes de fréquence 433 MHz a été conçue. L’objectif étant de capturer les ondes de sonnettes sans fil, ou de portes de garage pilotables. ​Il est ainsi possible de faire sonner de nombreuses sonnettes et d’ouvrir des portes de garages simplement en rejouant les radiofréquences interceptées.
  • Dans le second scénario et sur le même principe que précédemment, il a été démontré qu’il était possible de contrôler à distance des sextoys sans fil dans un rayon de 30 mètres, le signal permettant de piloter ce type d’accessoire étant rejouable (pas de rolling code).
  • Dans le troisième scénario, le présentateur nous a montré que les numéros de cartes de crédit sont directement disponibles dans un fichier « data.raw » d’un ATM. Il est simplement nécessaire de connecter un Bus pirate à la puce flash du contrôleur grâce au connecteur SPI intégré.
  • Dans un quatrième scénario, un disque dur externe chiffré a été ciblé. Il a été observé qu’une pression sur une touche du clavier modifie le signal électrique de 3.3V à 0V et qu’il est ainsi possible d’observer ces variations pour implémenter un keylogger physique dans le boitier du disque dur. Le présentateur a également laissé entrevoir la possibilité de modifier le hardware du disque dur pour que n’importe quel code PIN soit autorisé.
  • Dans un autre scénario, le présentateur s’est focalisé sur un système Linux embarqué et sur la possibilité de connecter un Shikra sur le port UART intégré pour obtenir un accès complet au système.

Security Design and High-Risk Users (Eleanor Saitta)

Dans cette présentation, les modèles de sécurité et leurs maillons faibles ont été abordés. N’oublions pas qu’un système est aussi fort que l’est son maillon le plus faible. Le présentateur a insisté sur le fait que la sécurité ne vient pas des ordinateurs mais des utilisateurs et qu’il fallait par conséquent construire un modèle de menace pour chaque entité. Il est tout d’abord nécessaire de savoir de quoi ont besoin les utilisateurs pour pouvoir limiter et bloquer ce qui est inutile, et par conséquent supprimer de possibles vulnérabilités. Il faut garder en tête que les outils de sécurité sont difficiles à utiliser et surtout à comprendre pour un utilisateur lambda. Lorsque ces derniers vont les utiliser, ils ne pourront alors plus faire leur travail efficacement. Paradoxalement s’il n’y a aucune sécurité sur leur poste, ils seront alors extrêmement performants. En effet, de manière générale, les employés ne mesurent pas les vulnérabilités auxquelles ils pourraient être exposés et n’hésitent pas à désactiver les mécanismes de sécurité car ils les trouvent dérangeant et n’en voient pas l’utilité. En conséquence, il est très important de les tenir informés des outils qui sont installés sur leur poste de travail, de préciser leur fonctionnement et leur utilisation, et de mettre l’ensemble en relation avec leur travail. En conclusion, tous les employés doivent participer à l’élaboration des mesures de sécurité, qui ne doivent pas juste leur être imposées sans qu’ils ne les comprennent.

Totally Spies! (Marion Marschalek, Paul Rascagnères, Joan Calvet)

La conférence s’est poursuivie avec la présentation des derniers malwares découverts dans le cas d’espionnages assimilés à des états. Les principaux malwares étudiés étant NBOT, Bunny, Babar, Casper et Dino. L’étude montre des niveaux de complexité variés et pointe même des morceaux de code récupérés sur Internet.
Tous ces malwares ont cependant une approche similaire et partagent quelques caractéristiques :
  • Chargement de bibliothèques en mémoire ;
  • Génération et vérification systématiques d’empreintes des binaires à exécuter ;
  • Identification d’antivirus au travers de commandes WMI ;
  • Détection d’émulateurs ;
  • Convention de nommage des malwares ;
  • Partage de serveur C&C.
Des statistiques sur les serveurs C&C ont été effectuées afin de tenter d’attribuer ces malwares. La Syrie, l’Iran et les USA ressortent en tête mais aucune conclusion ne peut en être tirée puisqu’il s’agit bien souvent de serveurs de rebond compromis. Quelques indices supplémentaires laissent à penser que des francophones pourraient se trouver derrière ces malwares (des ressources et des en-têtes HTTP en français, des mots en français dans du code en anglais, anglais approximatif, etc.).

HackingTeam - how they infected your Android device by 0days (Attila Marosi)

Lors de cette présentation, les outils de la Hacking Team ont été étudiés, et plus particulièrement les différentes méthodes d’infection de smartphones Android. ​C’est tout d’abord l’infrastructure technique de la Hacking Team qui a été décrite :
  • ​Outils d’administration à distance permettant de surveiller l’ensemble des périphériques compromis ;
  • Outils permettant l’infection des périphériques ;
  • Réseau permettant le déploiement des malwares.
Le cas d’un RCS (Remote Control System) Android a été détaillé. Tout d’abord avec la méthode d’installation et de prise de contrôle du périphérique (exploitation de plusieurs 0-days) :

Ensuite, avec l’installation d’un malware permettant l’interception de tous les contenus audio (dont les appels), quelle que soit l’application source ainsi que la récupération de preuves (captures d’écran par exemple).
Enfin, les différentes méthodes d’obfuscation des différents malwares ont été abordées (protection du code par des packers, détection d’antivirus ou de sandbox, etc.).

Scrutinizing WPA2 Password Generating Algorithms in Wireless Routers (Eduardo Novella)

Dans cette présentation, l’objectif était de vérifier si les clés WPA2 générées par les routeurs Wi-Fi sont bien aléatoires. L’analyse commence à partir de firmwares constructeurs récupérés depuis Internet. Après reverse engineering, le présentateur montre que la création de ces clés WPA2 dépend généralement de l’adresse MAC du routeur, voire même du SSID du réseau. La présentation a ensuite continué sur l’analyse matérielle de routeurs du marché et sur les différentes vulnérabilités qui les affectent, telles que l’injection de commande ou la présence de backdoors.

Stegosploit - Delivering Drive-By Exploits With Only Images (Saumil Shah)

Dans ce talk, le framework Stegosploit nous a été présenté. Comme le précise l’auteur, il ne s’agit ni d’un 0-day, ni d’un exploit caché dans les EXIF, ni d’un shell, ni d’un XSS. Il s’agit en réalité d’un moyen de délivrer des exploits en tant qu’images. En utilisant le framework, il est en effet possible d’insérer du code malveillant dans les pixels d’une image sans qu’il n’y ait de distorsion ou d’abstraction de l’image. Les pixels étant codés sur 8 bits, on peut insérer des données en modifiant le LSB (Least Significant Bit) de chaque pixel, sans qu’on puisse détecter l’altération visuellement. 


L’auteur a ensuite enchaîné sur la possibilité de créer des fichiers qui s’exécuteraient automatiquement en embarquant une image (JPG ou PNG) et du code (HTML + CSS + JavaScript) chargé d’exécuter la portion de code malveillante encodée dans les pixels de l’image. Le fichier alors créé peut être interprété différemment selon son extension (file.jpg ouvrira le logiciel de visualisation d’images, file.js ouvrira l’interpréteur de code). Il s’agit de créer des fichiers appelés « polyglottes », ou ​deux formats (ou plus) coexistent dans un seul conteneur sans casser les spécifications de chaque format.


En conclusion de sa présentation, l’auteur a effectué une démonstration d’un fichier polyglotte ouvert avec un navigateur web classique. Le navigateur ne pouvant pas déterminer quel type de fichier il doit interpréter, le fichier a alors été affiché en tant qu’image et en parallèle le code JavaScript est exécuté, décodant les données dissimulées dans l’image et exécutant la payload.

Learn from Malwares, A Practical guide of spear phishing for Red Teams (Paul Jung)

Lors de ce talk, l’auteur a présenté plusieurs méthodes utilisées par les attaquants pour mettre en place une attaque de type « spear phishing ».
Tout commence par une phase de reconnaissance visant à collecter des informations, notamment des adresses e-mail. Différentes commandes SMTP ont ensuite été rappelées. Tout d’abord, celles permettant d’abuser des relais SMTP des entreprises, afin de vérifier l’existence des e-mails précédemment récoltés. Ensuite, celles permettant d’envoyer des e-mails avec des en-têtes modifiés, afin de faire passer un e-mail malveillant pour un e-mail interne.
Comme dans de nombreuses attaques de ce genre, un lien externe est présent dans le corps de l’e-mail et l’utilisateur doit être incité à cliquer. Des statistiques intéressantes sont alors apportées par le présentateur sur le taux de clic : sur 1200 e-mails envoyés, le taux de clic est de 33%, représentés par 44% de femmes et 56% d’hommes. Globalement, un lien demandant une action à l’utilisateur sera moins efficace qu’un e-mail ne contenant qu’un simple lien externe sans aucune explication. Il est également recommandé d’utiliser un nom de domaine personnalisé commençant comme le nom de domaine de l’entreprise (par exemple : http://mabanque.com.ls.ke.program.exemple.post.sitedelattaquant.com).  La cible doit également être précise puisque les périphériques utilisés ne sont pas toujours les mêmes, bien que des tendances se dégagent : top management sur iPad, smartphone si horaires tardives ou trop tôt dans la journée, Mac pour les médias ou le personnel médical, etc.).
Ensuite, des méthodes de contournement des passerelles de filtrage ont été évoquées pour faciliter le déploiement d’un malware (archives 7-Zip ou RAR, fichiers Word MHTML contenant des macros, écriture de packers « maison » pour contourner les logiciels antivirus ou sandbox).
Enfin, pour l’exfiltration de données, l’auteur mentionne l’API WinInet et les requêtes DNS.
En conclusion, le présentateur a rappelé qu’en 2015, des documents Word avec macros et envoyés en pièce jointe sont encore largement suffisants pour compromettre un poste de travail.

Security of Virtual Desktop Infrastructures: from great concepts to bad surprises (Maxime Clementz, Simon Petitjean)

Les deux auteurs de cette présentation ont exposé ce qu’il a été possible de réaliser à partir d’attaques simples sur une infrastructure de bureaux virtuels. Ils se sont ainsi focalisés sur une console de management du marché, développée par Teradici, et permettant l’application de profils sur des périphériques « Zero-Client » (​machines avec un simple hardware/firmware dédié à déchiffrer les images reçues du serveur de virtualisation : aucune donnée n’est stockée sur le périphérique).
À partir de la machine virtuelle récupérée sur le site de Teradici, plusieurs vulnérabilités ont immédiatement pu être mises en évidence :
  • Mots de passe (4400Dominion) pour les interfaces SSH, web, FTP et base de données ;
  • Page BackupDBDownload.php accessible sans authentification ;
  • Nom des fichiers de sauvegardes basés sur le timestamp ;
  • Chiffrement des fichiers de sauvegarde en  AES256-CBC avec le même mot de passe (4400Dominion) ;
  • Serveur FTP vulnérable (CVE-2015-3306), permettant l’envoi d’un fichier PHP sur le serveur.
L’exploitation de ces vulnérabilités a permis de compromettre la console de management et ainsi de récupérer les mots de passe administrateur de tous les Zero-Client. Également, un certificat ACR a pu être déployé, permettant de rediriger tous les flux des Zero-Client vers un proxy. Il suffit alors de forcer les clients à se reconnecter pour intercepter leurs identifiants de connexion, avant de de rediriger le flux vers le serveur d’authentification original.

How not to build an electronic voting system (Quentin Kaiser)

Lors de cette présentation, l’auteur a commencé par rappeler qu’en mai 2014, la Belgique a relevé plusieurs incohérences lors de la comptabilisation des résultats du scrutin effectué par vote électronique. Il nous a ensuite présenté les principales caractéristiques que devait respecter un système de vote électronique :
  • La confidentialité pour que le vote reste personnel et anonyme ;
  • La non répudiation qui assure que les votes ne sont pas contestables ;
  • L’authentification pour savoir qui a voté ;
  • L’intégrité qui garantit que le choix fait par le votant est bien celui qui va être pris en compte ;
  • La simplicité pour l’utilisateur mais aussi pour le code afin de pouvoir le vérifier ;
  • L’unicité qui permet à chaque inscrit de ne pouvoir voter qu’une seule fois.
Enfin, l’auteur nous a présenté l’éventail des différentes vulnérabilités rencontrées sur les systèmes de vote (​fichiers sensibles téléchargeables sans restriction, mots de passe dévoilés, interfaces d’administration accessibles, cartes magnétiques falsifiables, etc.).

Keynote - Unpatchable: Living with a Vulnerable Implanted Device (Marie Moe)

Dans ce talk, la présentatrice a fait une présentation sur les pacemakers - elle en est elle-même équipée - et sur le fait que sa vie dépendait de cet implant et donc de son bon fonctionnement. Aujourd’hui, il y a environ 500 personnes pour un million qui vivent avec un pacemaker. Le problème c’est qu’une fois un pacemaker implémenté en elles, ces personnes n’ont plus d’autre choix que de faire confiance au matériel et elles ne peuvent pas le choisir. Bien que la présentatrice n’ait pas fait la démonstration de vulnérabilités sur un pacemaker à proprement parler, son objectif était surtout d’éveiller les esprits et d’inviter les fabriquant à tester et à sécuriser leurs produits dès les phases d’étude et de fabrication. Ces matériels sont souvent implantés « vulnérables » et ne peuvent plus être mis à jour sans une intervention chirurgicale importante. 

Trusting Files Formats: Illusions or Reality? (Ange Albertini)

Lors de ce talk, le présentateur a souhaité mettre en avant les dangers induits par les formats de fichiers actuels. Les spécifications des formats de fichiers ont été largement critiquées (parfois payantes, parfois fermées, rédigées après la création du format, pas toujours claires, etc.) ainsi que leur implémentation (ajout de fonctionnalités à un format par un logiciel par exemple). L’auteur nous a ensuite démontré qu’il était possible de tirer parti de ces faiblesses d’implémentation pour éventuellement tromper les utilisateurs et mécanismes de sécurité ou pour envoyer du code malveillant.
Il a ainsi été démontré qu’un même fichier pouvait être ouvert et interprété par plusieurs logiciels (un PDF qui devenait un émulateur de jeux NES lorsque l’extension est changée en .SNES ou en vidéo avec l’extension .MP4 mais aussi en image ou en fichier audio).
Il a également été démontré qu’il était possible de contourner les standards pour tromper les logiciels avec un même type de fichier. Dans l’exemple montré, un fichier PDF a ainsi été affiché différemment sur chacun des lecteurs PDF du marché ou n’a fonctionné que sur un lecteur donné.

How Mobile Applications Are Redefining Information Controls Inside of Iran (Mahsa Alimardani)

Pendant cette présentation, l’Internet iranien, communément appelé « filternet » dans le pays, a été vivement critiqué. Le gouvernement fait office de fournisseur d’accès Internet, observe l’ensemble des communications et bloque tout ce qui ne peut pas être intercepté. Les logiciels « sociaux » les plus populaires sont ainsi bloqués (Facebook, Twitter, Snapchat, WatsApp, etc.). Le gouvernement a en contrepartie développé et publié des applications « copie » mais dont les flux ne sont pas chiffrés ou alors chiffrés de telle sorte que le gouvernement est en mesure de les déchiffrer.

Geek usages for your Fitbit Flex tracker (Axelle Apvrille)

Lors de ce talk, la présentatrice nous a tout d’abord rappelé que les données des traqueurs d’activité – ici un Fitbit – étaient envoyées à des serveurs centraux et que celles-ci pouvaient être revendues et exploitées par des compagnies tierces. Elle a ensuite souhaité nous faire part de ses retours d’expérience sur les usages détournés de son traqueur d’activité qu’il était possible d’envisager, sans qu’aucune donnée ne soit envoyée au fabriquant :
  • Contrôle des LED ;
  • Générateur de nombre aléatoire ;
  • Déclenchement de l’économiseur d’écran du PC lorsque la distance avec l’utilisateur devient trop importante ;
  • Injection de code malveillant sur le traqueur.

Key-Logger, Video, Mouse - How to turn your KVM into a raging key-logging monster (Yaniv Balmas, Lior Oppenheim)

Pendant cette présentation, une démonstration très didactique de reverse engineering a été effectuée. La cible était un KVM connecté d’un côté à une machine sur un réseau sécurisé et déconnecté d’Internet et de l’autre côté à Internet. Grâce à leurs recherches, les présentateurs ont réussi à créer et à déployer sur le KVM un malware permettant de relier les deux réseaux. Dans le scénario d’attaque présenté, le malware se chargeait de récupérer automatiquement via la machine connectée à Internet du code malveillant, pour le transmettre sur la machine sécurisée au travers de frappes claviers émulées. Il a ainsi été possible de déployer un logiciel malveillant sur la machine sécurisée reliée au KVM sans aucune interaction utilisateur.

Keys? Where we’re going, we don’t need keys (Damien Cauquil)

Lors de ce talk, la sécurité d’une « poignée connectée » a été passée en revue. Plusieurs vulnérabilités ont ainsi été mises en avant :
  • Les journaux d’événements sont transmis en clair via Bluetooth, sans aucune authentification ;
  • Les clés d’ouverture/fermeture sont correctement chiffrées mais il est possible de le rejouer en changeant uniquement certains bytes ;
  • L’application smartphone n’authentifie par la poignée, il est ainsi facile de réaliser une attaque de type man-in-the-middle ;
  • Des commandes non documentées sont accessibles.

They Hate Us ‘Cause They Ain’t Us - How We Broke the Internet (Netanel Rubin)

​Lors de ce talk, le présentateur a remis en question la notion de « Secure Coding », qui est aujourd’hui la seule mesure de sécurité communément appliquée dans le cycle de développement. De nombreux cours de développement sécurisé sont disponibles, mais les développeurs ne vont en suivre qu’un ou deux sur leur carrière. De plus, les mêmes cours sont réutilisés au sein d’une même société, ce qui conduit à reproduire les mêmes erreurs. Enfin, l’auteur affirme que ces cours se focalisent sur la vérification des entrées utilisateurs et donne un faux sentiment de sécurité.
L’auteur donne ensuite quatre exemple de CMS open source, largement répandus et pour lesquels les notions de développement sécurisé sont normalement appliquées :
  • Cas 1, MediaWiki : l’auteur a présenté la vulnérabilité CVE-2014-1610 permettant l’exécution de code à distance sur le CMS avec les privilèges d’un administrateur ;
  • Cas 2, vBulletin : l’auteur a présenté la vulnérabilité CVE-2015-7808 permettant l’exécution non authentifiée de code à distance sur le CMS ;
  • Cas 3, Bugzilla : l’auteur a présenté la vulnérabilité CVE-2014-1572 permettant de contourner les mécanismes d’authentification du CMS ;
  • Cas 4, Magento : l’auteur a présenté les vulnérabilités CVE-2015-1397, CVE-2015-1398 et CVE-2015-1399 permettant de contourner les mécanismes d’authentification du CMS, des injections de code SQL, deux inclusions de fichiers locales et une inclusion de fichier distante.

Hack.lu 2015 en synthèse

Cette année encore, la hack.lu est un succès, tant sur le plan de la forme avec une organisation sans faille que sur le fond avec des présentations de qualité et des conférenciers de très bon niveau.


En bref, vivement l’an prochain !
Florent DAQUET, Abderahmane HABAIEB, Laurent LAJUGIE et Pierre NECTOUX

Aucun commentaire:

Enregistrer un commentaire