Retour sur l'édition 2016 de la Black Hat Europe

Cette année encore, XMCO était partenaire de la conférence Black Hat Europe. Voici notre retour sur cette cuvée 2016.

La réputation de la Black Hat n’est plus à faire et cette année encore, nous avons eu la chance d’assister à des conférences particulièrement intéressantes. Cette édition 2016 se déroulait au Business Design Center en plein centre de Londres, en Angleterre.

Au vu du nombre impressionnant de présentations (à minima 4 en parallèle), nous ne décrirons ici que les quatre présentations nous ayant le plus intéressés au cours de ces deux jours de briefing. Les autres conférences auxquelles nous avons pu assister seront disponibles dans le prochain numéro de l’ActuSécu.

WiFi-based IMSI Catcher, par Piers O’Hanlon et Ravishankar Borgaonkar

SLIDES

Cette conférence, présentée par deux chercheurs de l’université d’Oxford, se concentrait sur les problématiques de sécurité et de protection de la vie privée inhérente à l’utilisation des protocoles de télécommunication mobile (GSM/UMTS/LTE).

La conférence portait sur la présentation d’un nouveau type d’IMSI-catcher. L’IMSI (International Mobile Subscriber Identity) est le numéro unique qui permet aux réseaux mobiles d’identifier un utilisateur (et de l’authentifier). Ce numéro est inconnu de l’usager et est stocké dans la carte SIM du téléphone.

Un IMSI-catcher est une fausse antenne-relais permettant l’interception du trafic de téléphonie mobile entre l’usager et l’antenne-relais. Ce matériel d’espionnage est également utilisé pour pister les mouvements des terminaux et par conséquent leurs porteurs. Ce type d’IMSI-catcher est cher et exploite des vulnérabilités dans le protocole (2G) ou via des attaques de type « Downgrade attacks » (3G/4G). Les attaques de type « Downgrade » consistent à passer d’un mode de sécurité élevé (chiffré par exemple) à un ancien mode déprécié comportant des failles de sécurité protocolaires (2G).

Les chercheurs ont ainsi présenté deux nouvelles approches permettant de tracer les terminaux mobiles en s’appuyant sur l’analyse des protocoles d’authentification supportés par les terminaux en Wifi. Ces protocoles sont, à ce jour, largement déployés sur les différents systèmes d’exploitation mobile, ce qui permet la création d’un IMSI-catcher à bas coût.

Ils ont illustré leurs propos par une démonstration de leur outil qui peut être utilisé à la fois en mode passif (sans aucune interaction de l’utilisateur ciblé) ou en mode actif. L’outil peut uniquement tracer l’IMSI et la localisation du terminal (pour l’instant pas d’interception). Les deux techniques distinctes sont : « Wifi Network Authentication (‘WLAN direct IP access’) » et « WiFi-calling authentication (‘WLAN 3GPP IP access’) ».

Il existe trois types de réseau Wifi :

  • Wifi chiffré (mot de passe partagé)
  • Wifi non chiffré (portail captif)
  • Auto Connect Wifi

Les présentateurs se sont focalisés sur ce dernier type de réseau Wifi. Ce service d’Auto Connect permet au terminal mobile de basculer la connexion internet du réseau mobile vers le réseau Wifi automatiquement et de manière transparente pour l’utilisateur final. L’authentification se réalise avec les identifiants présents dans la carte SIM. Ils ont pu constater que l’authentification se basait sur les protocoles EAP-SIM et EAP-AKA. Ceux-ci ne sont pas chiffrés, de ce fait il est possible de récupérer l’IMSI via une écoute passive.

La deuxième technique nommée ‘WiFi-calling authentification’ se base sur IPSec et la gestion des clefs est réalisée avec IKEv2. La deuxième phase de l’échange (IKE_AUTH) utilise à nouveau EAP-AKA qui n’est pas protégé par un certificat ce qui peut permettre à un attaquant de récupérer l’IMSI via une attaque de type « Man-In-The-Middle » (MITM). Néanmoins, les clefs IPSec (ESP en particulier) n’en sont pas compromises pour autant.

Enfin, les deux chercheurs ont présenté les recommandations devant être appliquées par les constructeurs et les opérateurs téléphoniques, afin de réduire les risques de fuites de données privées des usagers. À l’heure actuelle, il n’existe malheureusement pas vraiment de recommandations pour se prémunir des IMSI-catcher classiques.

Rooting EVERY Android: From Extension to Exploitation, par Di Shen et Jiahong (James) Fang

SLIDES, ARTICLE

Les deux chercheurs Di Shen et Jiahong Fang de Keen Security Lab (Keen Lab, Tencent) se sont concentrés sur les différents bugs du noyau Linux (côté offensif). Ces experts ont découvert et exploité plusieurs vulnérabilités permettant de « rooter » les terminaux Android.

Le déblocage (rooting) des terminaux Android est de plus en plus complexe à réaliser, et la configuration de SELinux réduit d’autant plus la surface d’attaque disponible sur le noyau Linux. De ce fait, ces experts ont décidé de s’intéresser aux extensions sans fil (WEXT – Linux Wireless-Extensions) qui semblent être un point d’entrée moins difficile pour élever ses privilèges localement. Les applications Android sont en mesure d’interagi avec ces extensions WEXT via l’utilisation d’IOCTL envoyée au travers de sockets, et de ce fait, de réaliser une élévation de privilèges dans le cas de la présence d’une vulnérabilité.

Une extension sans fil sur Android est implémentée par le fournisseur de puces Wifi en tant que module du noyau Linux. Il existe de multiples chipsets disponibles pour les appareils Android. Le chipset Wifi Broadcom est utilisé par le Google Nexus 6p, Huawei Mate 8, Samsung Galaxy et de nombreux autres smartphones haut de gamme. Le périphérique Mediatek dispose toujours de son propre jeu de puces Wifi. Le reste des périphériques, comme Nexus 5x et Nexus 7, utilise en revanche le chipset Qualcomm.

Les deux chercheurs ont exposé certaines vulnérabilités de ces extensions WEXT (Broadcom, Qualcomm et Mediatek WEXT) permettant d’élever leurs privilèges afin d’obtenir les privilèges « root » sur n’importe quel terminal Android.

Les trois études de cas ont porté sur les extensions WEXT suivantes :

  • Qualcomm WEXT (exploitation via un débordement de pile – CVE-2015-0570)
  • Mediatek WEXT (exploitation via un débordement DS – Data Section)
  • Broadcomm WEXT (exploitation via une vulnérabilité de type use-after-free – CVE-2016-2475)

Les deux experts ont conclu cette présentation en annonçant que les extensions WEXT étaient des surfaces d’attaques encore trop peu connues à ce jour et que les applications de vendeurs présentaient encore trop de failles de sécurité. Enfin, le rootage de terminaux Android est devenu de plus en plus complexe et il sera nécessaire dans un future proche de trouver de nouveaux points d’entrées pour pouvoir exploiter des vulnérabilités affectant le noyau.

Breaking BHAD : Abusing Belkin Home Automation Devices, par Scott Tenaglia et Joe Tanen

SLIDES

La deuxième journée a débuté sur les chapeaux de roues avec la présentation de deux vulnérabilités de type « 0-days » affectant la gamme WeMo de Belkin. Ces produits sont utilisés dans les maisons connectées.

La première vulnérabilité de type « Injection SQL » permettait à un attaquant d’injecter du code malveillant au sein de l’application Android WeMo, dans le but de prendre le contrôle du dispositif connecté.

L’application mobile WeMo (disponible sous iOS et Android) permet à un utilisateur de créer des règles sur les équipements Belkin. Ces règles sont configurées par l’utilisateur au travers de l’application, puis envoyées sur les équipements en question via le réseau local au sein d’un fichier de base de données SQLite. Une fois les règles reçues par l’équipement, ce dernier les décompresse et les insère au sein de sa base de données locale.

L’absence de contrôle sur les fichiers envoyés permet à un utilisateur malveillant d’écrire des fichiers arbitraires sur l’équipement de maison.

De plus, l’absence de mécanisme d’authentification et de chiffrement des données permet à un attaquant présent sur le même réseau d’envoyer des fichiers malveillants à n’importe quel équipement du réseau.

L’injection SQL précédemment trouvée s’est, par la suite, transformée en injection de code grâce à l’interprétation du code injecté par l’interpréteur de l’équipement ; permettant ainsi à un attaquant d’obtenir le plus haut niveau de privilège (root) sur l’équipement, en complément d’un accès Telnet.

De manière similaire aux attaques de Déni de Service via des caméras de vidéosurveillance que l’actualité à récemment mis en avant, il est donc également possible pour un attaquant d’utiliser ces équipements pour réaliser des attaques de Déni de Service en s’appuyant sur ces vulnérabilités affectant les équipements Belkin.

La deuxième vulnérabilité quant à elle est une faille de sécurité de type « Cross-Site Scripting » (XSS) ciblant l’application Android Wemo.

Celle-ci est due à l’absence de filtrage du paramètre « FriendlyName » permettant à un utilisateur de donner un nom explicite, tel que « chambre bébé », à l’ensemble de ces équipements.

En envoyant du code JavaScript au sein de cet attribut, un attaquant est alors en mesure de déclencher une attaque de type XSS sur le téléphone de la victime.

Une attaque XSS peut sembler de moindre importance. L’exploitation de cette faille permet cependant à l’attaquant d’obtenir les mêmes droits que ceux dont dispose l’application (écriture sur la carte SD, accès à la caméra, accès au GPS, etc.).

Pour conclure leur présentation, les deux chercheurs ont réalisé un POC prenant des photos avec l’appareil photo du smartphone, les envoyant sur un serveur distant, le tout accompagné des coordonnées GPS.

Après avoir contacté Belkin et avoir attendu la mise en place de correctifs de sécurité (firmware 10885 et version 1.15.2 de l’application mobile), les deux chercheurs ont été en mesure de rendre publiques leurs trouvailles.

(Pen)Testing Vehicles with CAN Toolz, par Alexey Sintsov

SLIDES

Le chercheur Alexey a commencé sa conférence en listant l’ensemble des points présents au sein de la surface d’attaque des nouveaux véhicules, tels que le navigateur Web, les applications installées (merci les voitures connectées), l’interface On-Board Diagnostics (OBD), Wifi ou encore Ethernet.

L’approche sur les interfaces OBD ayant déjà beaucoup été abordée, le chercheur a préféré se focaliser sur l’interface CAN (Controller Area Network).

À cette occasion, Alexey a développé son propre outil intitulé YACHT (Yet Another Car Hacking Tool) permettant de réaliser une batterie de tests sous forme d’ECU (Electronic Unit Control) grâce à la simulation d’une connexion avec une voiture (sorte de virtualisation de voiture).

La suite de la conférence s’est orientée sur l’ensemble des fonctionnalités de l’outil du chercheur permettant notamment de manipuler / intercepter le trafic des différents équipements de la voiture.

Nous attendons avec impatience la prochaine édition de cette conférence de qualité. En attendant, rendez-vous dans le prochain numéro de l’ActuSécu pour un résumé complet et détaillé de cette dernière !

Adrien Guinault

Découvrir d'autres articles

  • Conférences

    Retour sur WestDataFestival 2024

    Lire l'article
  • Conférences

    DORA et la résilience opérationnelle des fournisseurs

    Lire l'article
  • Conférences

    Retour sur la Black Hat Europe 2023

    Lire l'article