Hack.lu 2016 – troisième journée

Liens vers les comptes-rendus des autres jours :

Jour 3

BtleJuice: the Bluetooth Smart Man In The Middle Framework

Damien Cauquil

Damien Cauquil a entamé cette journée et a réussi à capter notre attention malgré le manque de sommeil apparent (sans doute dû à l’heure matinale et plus probablement suite au social event de la veille…).

Après une revue des spécifications du protocole BLE (Bluetooth Low Energy) principalement utilisé par les objets connectés pour ses performances et sa faible consommation, il nous a présenté son framework « BtleJuice » écrit en Node.js et permettant l’interception et la manipulation de paquets utilisant ce protocole.

Plusieurs prérequis sont néanmoins nécessaires : deux machines distinctes ainsi que deux adaptateurs BLE sont en effet pour le moment requis pour réaliser ces scénarios d’attaque.

Plusieurs objets connectés ont ensuite été éprouvés par Damien pour lesquels des vulnérabilités ont été trouvées via l’utilisation de son framework.

La première démonstration a consisté en l’écoute passive du trafic réseau et a permis de déverrouiller le cadenas connecté Quicklock via un smartphone et une application.

Quicklock

Après analyse du trafic, il s’avère que le code PIN est transmis en clair et que l’authentification du processus de déverrouillage est simplement basée sur l’adresse BD (Bluetooth Device).

Damien a ensuite réalisé du rejeu de requêtes sur son robot connecté wowwee MIP en utilisant son framework BTLEJuice afin de réaliser du fuzzing manuel permettant de découvrir et d’appeler des fonctionnalités non documentées :

Wowwee MIP

Pour la dernière démonstration, Damien a réalisé une injection de paquet en usurpant l’adresse BD d’un appareil de mesure de taux de glucose dans le sang. L’authentification se base encore ici uniquement sur l’adresse BD :

Appareil de mesure de taux de glucose dans le sang

Damien a conclu sa présentation en expliquant comment il serait possible de détecter l’utilisation de son outil en observant le temps de réponse lors des opérations de lecture et/ou d’écriture.

Le code source de BTLEJuice est open source et disponible sur Github :

https://github.com/DigitalSecurity/btlejuice

ARM Shellcode Basics

Saumil Shah a présenté dans cet atelier les bases de la compilation ARM.

Grâce à une installation simple composée d’une Raspberry pi et d’un routeur WiFi, il a été possible de se connecter au lab mis en place par Saumil afin de compiler et tester différents exploits ARM :

Installation atelier shellcode

Note : Saumil Shah a également présenté ces travaux lors du talk « 2016: The Infosec Crossroads ». Le support de cette présentation peut être récupéré à cette adresse:

http://www.slideshare.net/saumilshah/hacklu-the-infosec-crossroads

FastIR Collector

Sébastien Larinier nous a présenté lors de cet atelier l’analyse de différents codes malveillants tels que Casper, Babar ou encore Poweliks facilités par l’outil FastIR.

Celui-ci prend la forme d’un exécutable nécessitant les droits administrateur lors de son exécution afin de récupérer l’ensemble des artéfacts Windows.

FastIR

La présentation sera prochainement publiée et le code source de l’outil sur le dépôt Github suivant :

https://github.com/SekoiaLab/Fastir_Collector

Annexes

Les différents supports de présentations seront bientôt disponibles à l’adresse suivante :

http://archive.hack.lu/2016/

En attendant, voici quelques liens pour visionner les différentes conférences :