Symposium sur la sécurité des technologies de l'information et des communications

Conférence francophone sur le thème de la sécurité de l'information.
Elle a eu lieu à Rennes du 5 au 7 juin 2019.

KeynoteAlex Ionescu


Date : 05 June 2019 à 10:00 — 60 min.

Side-Channel assessment of Open Source Hardware WalletsCharles Guillemet, Manuel San Pedro, Victor Servant


Date : 05 June 2019 à 11:30 — 30 min.

Side-channel attacks rely on the fact that the physical behavior of a device depends on the data it manipulates. We show in this paper how to use this class of attacks to break the security of some cryptocurrencies hardware wallets when the attacker is given physical access to them. We mounted two profiled side-channel attacks: the first one extracts the user PIN used through the verification function, and the second one extracts the private signing key from the ECDSA scalar multiplication using a single signature. The results of our study were responsibly disclosed to the manufacturer who patched the PIN vulnerability through a firmware upgrade

Side-Channel Attack on Mobile Firmware EncryptionAurélien Vasselle


Date : 05 June 2019 à 12:00 — 15 min.

Side-Channel Analysis (SCA) has become a common practice to stress the security of embedded devices like smartcards or secure controllers. Nowadays, it is more than relevant on mobile and connected devices requiring a high security level. Yet, their applicability to smartphones is not obvious, as the architecture of modern System-on-Chips (SoC) is becoming ever more complex.

This work describes how a secret AES key was retrieved from the hardware cryptoprocessor of a smartphone, as part of an attack scenario targeting the bootloader decryption. The focus is held on practical realization and the challenges it brings. In particular, catching meaningful signals emitted by the cryptoprocessor embedded in the main SoC can be troublesome. Indeed, the Package-on-Package technology makes access to the die problematic and prevent straightforward near-field electromagnetic measurements.

The described scenario can apply to any device whose chain-of-trust fully or partially relies on firmware encryption, such as smartphones or Internet-of-Things nodes.

LEIA: the Lab Embedded ISO7816 Analyzer A Custom Smartcard Reader for the ChipWhispererDavid El-Baze, Mathieu Renard, Philippe Trebuchet, Ryad Benadjila


Date : 05 June 2019 à 12:15 — 30 min.

Among the hardware security evaluation toolkits that are publicly available, the ChipWhisperer has become very popular in the recent years. This framework based on low-cost open hardware platform and open source software, allow performing Side-Channel Analysis (SCA) like Simple Power Analysis (SPA), Differential Power Analysis (DPA) or Correlation Power Analysis (CPA) on Integrated Circuits (ICs). The ChipWhisperer gives the user an easy way to apply the recent research publications and understand the results. This evaluation step appears as essential in order to level-up the security of embedded systems. Unfortunately, it is currently not possible to find a smart card reader compatible with the ChipWhisperer. In order to allow the community to study such targets which are ubiquitous in the world of security, but have a specific form factor, we will present through this work LEIA, a daughter board for smart card security assessment with the ChipWhisperer.

iDRACKAR, integrated Dell Remote Access Controller’s Kind Approach to the RAMNicolas Iooss


Date : 05 June 2019 à 14:45 — 30 min.

While Baseboard Management Controllers (BMC) grow in popularity as solutions to manage and monitor servers remotely, several critical vulnerabilities targeting them have recently been found. On servers manufactured by HP, it has been published that the compromise of the BMC enables attackers to read and write the memory of the main operating system through Direct Memory Access (DMA) channels. As these communication channels are not specific to HP, it can be expected that a vulnerability allowing attackers to execute arbitrary code on a BMC from another manufacturer provides a similar access.

In 2018, a remote code execution vulnerability targeting Dell's BMC (named iDRAC) has been published. The access provided by the exploitation of the vulnerability puts attackers in a similar position to being in the datacenter with physical access to the server: they can watch the screen, use a keyboard and a mouse, reboot the server, etc. However, they cannot read or write the RAM of the server. More precisely, nobody has described how the iDRAC could perform DMA to the main RAM of a server.

On a Dell PowerEdge server, the iDRAC has a low-level access to many hardware components, for example in order to monitor the power and temperature of the CPU. It does not usually perform DMA with the main memory, but this might be possible to achieve if the iDRAC has access to the relevant hardware interfaces. This presentation digs into the interfaces used by iDRAC 8 in order to find out whether it can access the main memory. It focuses on components that are more likely to provide such an access, like the virtual USB devices, the CPLD connected to the iDRAC and the PCIe device that previous iDRAC revisions exposed. In the end, none of these devices seem to provide an access to the memory of the main operating system. Nevertheless the iDRAC interracts with a H8S microcontroller that appears to be closely related to the PCIe bus. The analysis of this new microcontroller is still a work in progress.

WEN ETA JB? A 2 million dollars problemEloi Benoist-Vanderbeken, Fabien Perigaud


Date : 05 June 2019 à 15:15 — 30 min.

iPhones are generally considered to be the most secure in their category. Indeed, unlike the Android ecosystem, Apple has the advantage of controlling both the hardware and the software part of its phones. As a result, it is possible for them to directly take advantage of the latest advances in hardware as soon as they are available.

This presentation aims at showing that the $2M bounty from Zerodium for a remote iOS jailbreak might not be overrated.

Everybody be cool, this is a robbery!Gabriel Campana, Jean-Baptiste Bédrune


Date : 05 June 2019 à 15:45 — 30 min.

Les HSM (Hardware Security Modules) sont des équipements électroniques utilisés comme brique cryptographique de confiance dans des environnements nécessitant de hautes exigences de sécurité. Ils sont utilisés comme enclave de sécurité afin de générer, stocker et protéger des clés cryptographiques. La protection de ces clés repose à la fois sur des mécanismes logiciels et matériels. Dans cet article, nous présentons la méthodologie que nous avons utilisée pour évaluer et améliorer la sécurité d’un modèle de HSM.

Un HSM n’étant pas un équipement courant, nous détaillons tout d’abord son rôle, son fonctionnement, ses interactions avec le monde extérieur et les types de messages qu’il traite. Notre méthodologie est ensuite expliquée ; elle a permis de découvrir plusieurs vulnérabilités sur cet équipement en quelques semaines. Certaines de ces vulnérabilités et leur exploitation sont par la suite présentées. Nous montrons plusieurs chemins d’attaque permettant à un attaquant non authentifié de prendre le contrôle total du HSM. Cela rend ensuite possibles la récupération de tous les secrets du HSM (que ce soit les clés cryptographiques ou les authentifiants des administrateurs), et l’introduction d’une porte dérobée persistante, survivant à une mise à jour complète du firmware.

Tous les problèmes découverts ont été divulgués au fabricant de manière responsable, en lui laissant suffisamment de temps pour publier des mises à jour de son firmware contenant des correctifs de sécurité. Nous montrons enfin comment réduire grandement la surface d’attaque, en implémentant un module de filtrage des requêtes dans le HSM. L’introduction de ce module empêche d’atteindre, par construction, la plupart des problèmes que nous avions identifiés.

L’audit des GPOAurélien Bordes


Date : 05 June 2019 à 17:00 — 30 min.

Les GPO sont apparues avec Windows 2000 et l'Active Directory. Elles permettent d'appliquer des paramètres de configuration sur les ordinateurs et les utilisateurs et d'être distribuées au moyen d'un domaine Active Directory.

Très appréciées et largement utilisées, il n'est pas rare de voir, avec le temps, des domaines définir plusieurs milliers de GPO : il devient alors très difficile de maîtriser tous les paramètres appliqués ou de détecter des problèmes de configuration.

Cette présentation se propose d'expliquer le fonctionnement des GPO puis de fournir différents points d'audit sur la forme (configuration des GPO) et sur le fond (paramètres définis par les GPO).

Afin d'aider l'analyse, différents outils sont également décrits et mis à disposition.

IDArling, la première plateforme de rencontre entre reversersAlexandre Adamski, Joffrey Guilbon


Date : 05 June 2019 à 17:30 — 15 min.

At REcon 2016 was presented a collaborative Reverse Engineering plugin for IDA called Sol[IDA]rity. It looked awesome, so everyone was excited to try it out! But months passed, then years, without any release or source code.

Tired of waiting, IDArling's authors decided they wanted to develop this tool, see for themselves if it was really worth it, while open-sourcing the project from the very beginning. This process proved more difficult than expected.

This presentation aims to explain the plugin functionalities, the reasons behind the choices that were made, the major difficulties encountered, the workarounds that were found, and finally discuss when alternatives like the well-known YaCo plugin are more appropriate.

Journey to a RTE-free X.509 parserArnaud Ebalard, Patricia Mouy, Ryad Benadjila


Date : 06 June 2019 à 09:00 — 30 min.

Nous présentons le travail de développement en C d'un parseur de certificats X.509 garanti sans bugs (de type "runtime errors"). L'objectif est de faire un retour d'expérience concret à destination des développeurs sur l'utilisation du framework de validation Frama-C afin d'obtenir ces garanties de sécurité. Une comparaison des résultats d'analyse du parseur (9000 lignes de C) avec d'autres outils sera également présentée. Le code du parseur (incluant les annotations permettant sa validation) sera publiié avant la présentation.

DLL shell game and other misdirectionsLucas Georges


Date : 06 June 2019 à 09:30 — 30 min.

Windows developers use extensively shared libraries (DLLs) in order to maximize code reuse and update subcomponents independently on deployed systems. However using shared libraries also opens up a myriad of issues coming from DLL incompatibilities, also known as DLL Hell (or more generically speaking dependency hell). That's why over the years the Windows core team has implemented various magic tricks based on DLL redirection in order to keep systems up to date while retaining backwards compatibility.

In this article we will present several of these sleight of hands as well as other ways to dynamically load libraries, and some vulnerabilities that can be exploited via DLL hijacking still present in modern software.

Finally, this article also present Dependencies (https://wwww.github.com/lucasg/Dependencies.git) a tool written by the author to analyze and troubleshoot DLL dependency issues on modern Windows binaries.

Mirage : un framework offensif pour l’audit du Bluetooth Low EnergyEric Alata, Guillaume Auriol, Jonathan Roux, Romain Cayre, Vincent Nicomette


Date : 06 June 2019 à 10:00 — 30 min.

L'Internet des Objets est aujourd'hui en pleine expansion: de nouveaux types de systèmes embarqués, les objets connectés, ont fait leur apparition et leur usage se généralise au sein des foyers et des entreprises. Dans ce contexte, il est indispensable de disposer d'outils et de méthodes d'audit efficaces permettant d'analyser la sécurité de ces systèmes d'un nouveau genre. Cependant, mener ce type d'audit reste aujourd'hui une tâche particulièrement complexe : les outils offensifs existants, matériels comme logiciels, imposent de sérieuses limitations à l'analyste, notamment liées à leur hétérogénéité et leur incompatibilité. Dans cette présentation, nous introduisons un framework offensif nommé Mirage destiné à l'audit des technologies sans fil utilisées dans l'IoT, et plus particulièrement la technologie Bluetooth Low Energy. Nous présentons l'architecture modulaire de ce framework, ainsi que la pile protocolaire et les modules offensifs développés plus spécifiquement dans le cadre de l'analyse du Bluetooth Low Energy. Finalement, nous illustrons son usage par un cas d'audit concret d'un objet connecté disponible dans le commerce.

Le Monitoring de BGP : où la sécurité rencontre la géométrie Riemmanienne [Conférence invitée]Kavé Salamatian


Date : 06 June 2019 à 11:00 — 45 min.

The monitoring of large dynamic networks is a major challenge for a wide range of applications. The complexity stems from properties of the underlying graphs, in which slight local changes can lead to sizable variations of global properties, e.g., under certain conditions, a single link cut that may be overlooked during monitoring can result in splitting the graph into two disconnected components. Moreover, it is often difficult to determine whether a change will propagate globally or remain local. In this presentation, we tackle the problem of real-time monitoring of dynamic large scale graphs by developing a geometric approach that leverages notions of Ricci curvature in differential geometric and recent development in graph embedding. We illustrate the use of our method by considering the practical case of monitoring dynamic variations of global Internet using topology changes information provided by combining several BGP feeds. In particular, we use our method to detect major events and changes via the geometry of the embedding of the graph, where a major event is defined as an incident that either impacts a substantial number of prefixes or can be observed by numerous route monitors within a given period of time.

GUSTAVE : Fuzz It Like It’s AppAnaïs Gantet, Stephane Duverger


Date : 06 June 2019 à 11:45 — 30 min.

Nous présentons le travail réalisé sur GUSTAVE, un outil alliant fuzzing avancé et plateforme de simulation dans le but de rechercher des vulnérabilités dans des systèmes d’exploitation embarqués. L’idée clé de notre plateforme est de tirer partie de la puissance de technologies existantes, que ce soit pour le fuzzing grâce à AFL ou la simulation grâce à QEMU, sans y apporter de modifications significatives. Notre objectif est d'être capable de fuzzer un noyau en laissant penser à AFL qu’il s’agit d’une simple application.

Dissection de l’hyperviseur VMwareBrice L'Helgouarc'H


Date : 06 June 2019 à 12:15 — 30 min.

L’utilisation croissante de la virtualisation des systèmes d’exploitation a contribué à l’émergence de nouvelles vulnérabilités spécifiques aux hyperviseurs, telles que les VM escape. Il peut donc être intéressant de comprendre les mécanismes internes des hyperviseurs afin de réduire au maximum leur surface d’attaque et se prémunir de telles vulnérabilités. Dans cette optique, ce document décrit des travaux de rétro-ingénierie menés sur l’hyperviseur VMware afin d’en expliquer les mécanismes internes, et plus particulièrement ceux de son mode Unity, jusqu’alors non documenté publiquement.

Watermarking électromagnétique de dronesJosé Lopes Esteves


Date : 06 June 2019 à 14:45 — 15 min.

Les agressions électromagnétiques sont généralement envisagées comme outil d’attaque pouvant porter atteinte à la sécurité de l’information des équipements électroniques. Dans certains cas, les effets de ce type d’interactions laissent des traces sur le système cible qui sont stockées de manière non volatile. Cette étude introduit pour la première fois le watermarking électromagnétique qui repose sur l’exploitation de tels effets pour introduire un marqueur dans des cibles, de manière non collaborative et non invasive. La contribution de cet article est double : tout d’abord, le concept de watermarking électromagnétique est défini et l’intérêt de son utilisation dans le cadre d’analyses forensics est mis en évidence. Ensuite, cette technique est appliquée à des drones grand public et est proposée comme une alternative à la neutralisation lorsque le contexte ne permet pas d’y recourir.

Résultats et solution du challengesstic


Date : 06 June 2019 à 15:00 — 60 min.

Rumpssstic


Date : 06 June 2019 à 16:30 — 120 min.

Commentaire de l'auteur

Versions Full HD 1080p disponibles dans https://static.sstic.org/rumps2019/1080p/. Exemple : https://static.sstic.org/rumps2019/1080p/SSTIC_2019-06-06_P09_RUMPS_01.mp4 pour la première rump.

Russian Style (Lack of) RandomnessLéo Perrin, Xavier Bonnetain


Date : 07 June 2019 à 09:15 — 15 min.

It is crucial for a cipher to be trusted that its design be well explained. However, some designers do not publish their design method and instead merely put forward a specification. While this information is sufficient for implementers, the lack of explanation hinders third party cryptanalysis.

In a recent string of papers, Biryukov, Perrin and Udovenko identified increasingly strong patterns in a subcomponent shared by the last two Russian standards in symmetric cryptography, namely the hash function Streebog (GOST R 34.11-2012) and the block cipher Kuznyechik (GOST R 34.12-2015). In this paper, we summarize the latest result of Perrin on this topic and argue that, in light of them, these algorithms must be avoided.

Le quantique, c'est fantastique !Xavier Bonnetain


Date : 07 June 2019 à 09:30 — 30 min.

L'informatique quantique est un sujet à la mode, dans lequel de nombreux états et grandes entreprises investissent des millions, si ce n'est des milliards de dollars. Cette présentation propose un panorama des conséquences de l'apparition de l'informatique quantique en cryptographie, tant du côté des primitives cryptographiques, symétriques et asymétriques, que des protocoles de communication.

Ethereum: chasse aux contrats intelligents vulnérablesKorantin Auguste


Date : 07 June 2019 à 10:00 — 30 min.

Cette soumission présente les recherches de l'auteur sur la sécurité des "contrats intelligents" sur la blockchain Ethereum.

Il s'agira de présenter le fonctionnement d'Ethereum et les problématiques soulevées en terme de sécurité. Puis l'outil "Pakala" sera introduit. Il s'agit d'un moteur d'exécution symbolique capable d'analyser le code exécutable des contrats intelligents, et de trouver une succession d'appels qui conduira à un bug. Une méthode complémentaire d'analyse de l'historique des transactions effectuées sur les contrats sera également présentée. Puis seront étudiés les résultats trouvés avec ces outils, et on donnera des exemples de contrats intelligents vulnérables typiques.

Analyse de sécurité d'un portefeuille matériel sur smartphoneJean-Baptiste Bédrune


Date : 07 June 2019 à 10:30 — 15 min.

HTC a commercialisé en octobre 2018 un nouveau modèle de téléphone, EXODUS 1, dédié à la blockchain. Il propose une fonctionnalité de hardware wallet. Les clés privées protégeant l'accès aux fonds d'un utilisateur sont sécurisées dans une enclave ; ainsi, même si un attaquant compromet totalement le système d'exploitation Android, il ne pourra pas accéder à ces clés privées.

Une fonctionnalité novatrice de ce hardware wallet est la possibilité de sauvegarder sa seed, secret maître à partir duquel sont dérivées toutes les clés privées, auprès de ses contacts. Un partage de clé secrète de Shamir est utilisé. Ainsi, chaque contact possède une partie du secret, et la seed n'est jamais stockée sur un serveur de sauvegarde. Si un utilisateur perd sa seed, il peut la reconstruire en demandant à trois de ses contacts de lui fournir leur partie du secret.

Nous présentons deux attaques cryptographiques sur cette fonctionnalité. Premièrement, nous montrons que le secret peut être retrouvé à partir de deux contacts au lieu de trois. Ensuite, nous présentons une autre attaque permettant de reconstruire complètement le secret à partir d'une seule partie : chaque contact peut en réalité totalement calculer la seed de l'utilisateur et dérober ses fonds. Les vulnérabilités ont été corrigées par HTC ; nous concluons par la description des correctifs.

A tale of Chakra bugs through the years [Conférence invitée]Bruno Keith


Date : 07 June 2019 à 11:15 — 45 min.

JavaScript engines have always been one of the main targets in order to compromise browsers. While they are only one of the main attack surfaces reachable remotely, their size (hundreds of thousands of lines of code) makes it so that even inside them, there are multiple areas that have been targeted to find bugs throughout the years. People initially focused on the outter most layers of these engines by trying to find bugs in the interpreters and have gradually moved towards more complex component such as Just-In-Time compilers as other parts became more and more resilient.

After a brief introduction to the world of JavaScript engines, this talk will explore some of the bug patterns that have affected Chakra through the years and walk through several examples of bugs found both by the author and other well-known researchers. This presentation will also try to highlight various techniques to abuse these bugs and turn them into interesting exploit primitives.

V2G Injector: Whispering to cars and charging units through the Power-LineSebastien Dudek


Date : 07 June 2019 à 12:00 — 30 min.

Since vehicles became connected to a bus called CAN (Controller Area Network), many "garage" hackers got interested in investigating the different controllers, known as ECUs (Engine Control Units), and accessible via the On-Board Diagnostics (OBD) port. Among those different controllers, some of them are accessible via Wi-Fi, others via GPRS, 3G and 4G mobile networks, that could be attacked during a radio interception attack. Moreover, another little-known vector of attack will appear with the deployment of V2G (Vehicle-to-Grid) systems that communicate via power lines support. Nevertheless, no public tool exists to interface with these systems, but also to analyse and to inject V2G traffic. That is why we have developed a tool called "V2G Injector" to attack these systems.

In this presentation, we will briefly introduce the V2G concept and its similarities with domestic Power-Line Communication systems. Then, we will present the techniques we use in our tool that aim to interface with the system, monitor and inject traffic. We will also present a new specification vulnerability in the communication medium we have been able to exploit to intrude the V2G network. To finish, we will talk about issues we have found during our tests on real equipment, and mitigations we can encounter, or apply, in some contexts as well as possible bypasses.

Analyse de firmwares de points d'accès, rétro-ingénierie et élévation de privilègesFlorent Fourcot, Romain Bellan, Victorien Molle


Date : 07 June 2019 à 12:30 — 15 min.

Grâce à des analyses sur les points d'accès WiFi Ruckus et Aerohive, nous avons trouvé de multiples failles de sécurité pouvant mener à des élévations de privilèges et la modification des systèmes d'exploitation installés.

Notre présentation se concentre sur les différents chemins empruntés (notamment via la rétro-ingénierie) pour la recherche de vulnérabilités sur ces équipements. Nous élargissons ensuite aux exploitations éventuelles, notamment l'installation de firmwares personnalisés rendant possible des attaques persistantes.

Under the DOM: Instrumentation de navigateurs pour l'analyse de code JavaScriptErwan Abgrall, Sylvain Gombault


Date : 07 June 2019 à 14:45 — 30 min.

Les attaquants font, de plus en plus, usage de langages dynamiques pour initier leurs attaques. Dans le cadre d’attaques de type point d’eau où un lien vers un site web piégé est envoyé à une victime, ou lorsqu’une application web est compromise pour y héberger un exploit kit, les attaquants emploient souvent du code JavaScript fortement obfusqué. De tels codes sont rendus adhérents au navigateur par diverses techniques d’anti-analyse afin d’en bloquer l’exécution au sein des honeyclients. Cet article s’attachera à expliquer l’origine de ces techniques, et comment transformer à moindre frais un navigateur web du commerce en outil d’analyse JavaScript capable de déjouer certaines de ces techniques et ainsi de faciliter notre travail.

SourceFu, utilisation de l'interprétation partielle pour la "deobfuscation" de sourcesNicolas Zilio


Date : 07 June 2019 à 15:15 — 15 min.

SourceFu se veut être un outil proposant de la deobfuscation de sources via une approche intermédiaire entre une interprétation complète instrumentée, et une analyse par regex. L'idée principale est de construire un arbre syntaxique d'un code, puis d'y interpréter les expressions constantes afin de simplifier cet arbre, et d'en déduire ainsi un code deobfusqué. Il s'agira donc de présenter le projet  : approche retenue, ses limites, ses possibilités, l'ouverture d'un tel projet à d'autres disciplines de l'informatique... afin de le faire connaître au public. Et qui sait, peut-être serez-vous intéressé pour devenir contributeur...

Enfin, les plus curieux pourront déjà trouver le github à l'adresse suivante


SourceFu is a deobfuscation tool using an intermediate approach between traditional regex and full interpretation. It is based on the construction of an AST of the source, then the interpretation of its constant parts, and last its reduction.

This talk will present the project to the public: the functioning, its limitations, its possibilities,... Hopefully, this project will be interesting enough for it to see some contributions. Here is a github link for interested people.

Présentation de cloture - Hyper-V: techniques d'attaque et de défense contre la corruption de mémoireJordan Rabet


Date : 07 June 2019 à 15:30 — 60 min.

Aujourd’hui, tout le monde utilise le cloud, et tous les plus gros fournisseurs de cloud basent leur architecture sur un système de virtualisation tel que Hyper-V ou KVM. Il en découle que la sécurité de ces produits est cruciale, et donc que d’importants investissements sont faits pour la maintenir. Par exemple, Microsoft paye une bug bounty de $250,000 pour des vulnérabilités dans Hyper-V.

Afin de ne pas avoir à attendre de se faire attaquer, Microsoft recherche continuellement de nouvelles vulnérabilités en interne et produit ses propres exploits pour renforcer la sécurité de son cloud. Cette présentation se concentrera sur un tel exploit, incluant une description de l’architecture de Hyper-V, tous les détails de l’attaque en question ainsi qu’une vue d’ensemble des efforts de prévention qui ont été faits et sont encore en cours afin d’empêcher que ce genre d’attaques ne soit possible à l’avenir. Il y aura également une démo en live pour donner une idée de l’importance de la sécurité de cette surface.