• Aucun résultat trouvé

Stockage et manipulation de secrets dans un système embarqué

N/A
N/A
Protected

Academic year: 2022

Partager "Stockage et manipulation de secrets dans un système embarqué"

Copied!
3
0
0

Texte intégral

(1)

Groupe Innovation & Recherche en Cybersécurité Avril 2018

Proposition de stage de fin d'études 2017-2018

Stockage et manipulation de secrets dans un système embarqué

Descriptif

Contexte :

De nombreux systèmes embarqués manipulent des informations qui doivent rester confidentielles, c’est-à-dire inintelligibles à des personnes non autorisées. Ces informations sensibles peuvent être par exemple des clés cryptographiques dans le cas de cartes à puce bancaires, des données liées à la vie privée de l’utilisateur dans le cas des cartes de sécurité sociale (Vitale) ou même des algorithmes couverts par le secret industriel. Lorsque ces secrets sont stockés et manipulés au sein d’un système embarqué, ils sont vulnérables à de nombreuses attaques logicielles exploitant des failles au sein des applications, du système d’exploitation ou de l’hyperviseur (débordements de tampon, faille dans le pilote d’un périphérique, porte dérobée, compte privilégié codé en dur...).

Ces attaques peuvent potentiellement être exploitées à distance si le système possède des interfaces de communication (WiFi, Ethernet...).

En plus de ces attaques informatiques « classiques », les systèmes embarqués sont vulnérables à des attaques utilisant la possibilité d’accéder physiquement au système. En effet, le système embarqué peut plus facilement tomber entre les mains d’une personne mal intentionnée (suite à un vol par exemple). Enfin, l’utilisateur légitime du système peut dans certains cas avoir un intérêt à l’attaquer.

En dehors du cas évident du déni de service, ces attaques matérielles visent pour la plupart à violer la confidentialité ou l’intégrité de ces secrets. Ces attaques peuvent cibler :

 Les composants de calcul (processeur, microcontrôleur, System-on-Chip) : c’est notamment le cas des attaques par canaux auxiliaires (Side-Channel Attacks), injection de fautes par perturbation, retro- conception, micro-probing...

 Les canaux de communication : espionnage des bus (mémoire, bus périphériques, etc.), connexion sur un port série sans connecteur mais routé sur la carte mère ou présent sur les pattes d’un SoC, utilisation des canaux de debug (JTAG, SWR, points de test, etc.)...

 Les composants de stockage : lecture/modification directe d’une mémoire flash, lecture du contenu d’une RAM malgré une interruption d’alimentation (cold boot attack), lecture ou modification du contenu de la RAM via DMA en prenant le contrôle d’un périphérique (attaque DMA)...

Face à ces différentes attaques, une solution courante est de stocker et de manipuler les secrets au sein d’un Secure Element. Ce Secure Element est typiquement un circuit (souvent basé sur un cœur de carte à puce) intégrant un composant de calcul (petit processeur), de la mémoire vive et de la mémoire de stockage non volatile.

Il est en général doté de contre-mesures pour pallier un certain nombre d’attaques physiques. Il exécute un microcode permettant la gestion des données sensibles et d’une interface bien spécifiée pour la communication avec le reste du système. La partie logicielle est en général suffisamment petite pour pouvoir être prouvée plus ou moins formellement.

L’utilisation d’un Secure Element présente plusieurs inconvénients dont le plus important est le coût qui peut être problématique s’il a vocation à s’intégrer dans un système embarqué destiné à être largement diffusé.

(2)

Groupe Innovation & Recherche en Cybersécurité Avril 2018

Nous nous intéresserons donc dans le cadre de ce stage à la possibilité de se passer de Secure Element pour stocker et manipuler les secrets dans un système embarqué tout en conservant un niveau de protection adéquat en fonction du modèle d’attaque considéré dans le contexte d’utilisation retenu.

Deux approches pour atteindre cet objectif sont possibles :

 Soit en disposant d’une solution basée sur des plates-formes matérielles classiques disponibles sur étagère. Cette approche a le gros avantage de limiter le surcoût mais le niveau de sécurité atteignable sera probablement plus bas. Elle a donc vocation à s’appliquer à des systèmes embarqués à faible coût et ne nécessitant pas un niveau de sécurité maximal.

 Soit en s’autorisant des ajouts matériels spécifiques (exemple : IP dédiée sur un SoC). Cette approche mènera à un niveau de sécurité élevé au prix d’un matériel spécifique et donc plus coûteux. Elle a donc vocation à s’appliquer à des systèmes embarqués plus coûteux mais devant disposer d’un niveau de protection très élevé.

Dans le cadre de ce stage, seule la première approche sera explorée.

Objectifs :

L'objectif général du stage est donc d'étudier les différentes technologies de sécurité existantes sur étagère (c'est- à-dire n'impliquant pas de modifications ad-hoc du matériel) sous plusieurs angles :

 Niveau de sécurité

 Acceptabilité industrielle (impact sur les performances et la consommation, coûts, temps de développement, etc.).

Dans un premier temps, le stagiaire définira des objectifs de sécurité ainsi que plusieurs modèles d'attaque qui serviront ultérieurement de base à l'analyse du niveau de sécurité, ainsi qu'une liste de solutions à étudier.

Parmi ces solutions, on peut notamment citer les technologies TrustZone d’ARM [1], Intel Software Guard Extensions (SGX) [2] et Trusted Execution Technology (TXT) [3], AMD Secure Technology [4]. Des techniques plus avancées, issues du domaine de la cryptographie en boite blanche (White Box Cryptography) [5] et de l’offuscation de code seront également être prises en compte dans cette étude. Enfin, une utilisation astucieuse des ressources matérielles disponibles (et notamment des mémoires locales et des caches) peut permettre d’atteindre un certain niveau de sécurité (en arrivant par exemple à faire en sorte que les secrets restent confinés à l’intérieur du compostant de calcul).

Dans un deuxième temps, le stagiaire classera ces différentes solutions en fonctions de différents critères (sécurité, acceptabilité industrielle...).

Enfin, un ou plusieurs démonstrateurs des solutions les plus prometteuses seront mis en place pour démontrer la résistance de celles-ci aux attaques envisagées.

Il est important de noter que ce stage est préalable à une thèse financée par EDF.

Références

[1] ARM TrustZone, http://www.arm.com/products/security-on-arm/trustzone [2] Intel Software Guard Extensions, https://software.intel.com/en-us/sgx

(3)

Groupe Innovation & Recherche en Cybersécurité Avril 2018

[3] Intel Trusted Execution Technology, http://www.intel.com/content/www/us/en/architecture-and- technology/trusted-execution-technology/trusted-execution-technology-security-paper.html

[4] AMD Secure Technology, http://www.amd.com/en-gb/innovations/software-technologies/security [5] Whitebox Crypto, Protecting cryptographic keys in software application, http://www.whiteboxcrypto.com/

Compétences requises:

 Sécurité des systèmes informatiques ;

 Sécurité des systèmes embarqués ;

 Connaissances souhaitées réseaux informatiques et spécificités IoT.

Qualités recherchées:

 Esprit critique et de synthèse ;

 Autonomie et force de proposition ;

 Ouverture sur de nouvelles problématiques.

Cadre

Au sein de l’entité R&D d’EDF, vous intégrerez l’équipe ICCOS (Infrastructures de Calcul, COmmunication &

Sécurité), et vous travaillerez sur une thématique de recherche qui fait partie des sujets étudiés au sein du Laboratoire commun SEIDO entre Telecom ParisTech et EDF R&D.

Encadrement : Guillaume DUC et Jean-Luc DANGER (Télécom ParisTech) Pierre NGUYEN PHONG CHAU (EDF R&D)

Lieu du stage : Télécoms Paris. Quelques déplacements à prévoir.

Durée : 6 mois

Indemnité de stage : en fonction de l’école du stagiaire

Candidature

Envoyer CV, Lettre de motivation et Recommandations à Pierre NGUYEN PHONG CHAU (pierre.nguyen@edf.fr) et Guillaume DUC (guillaume.duc@telecom-paristech.fr). Les relevés de notes sont fortement recommandés.

Références

Documents relatifs

Les sites à très forte maturité sont surtout caractérisés par un grand nombre de TGB et de TTGB vivants, de bois mort debout et au sol, et par un fort diamètre du plus gros

DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,

- Relier à l’ordinateur un PDA tournant sous Windows Mobile et extraire via ActiveSync les fichiers de la ROM Î impossible car les fichiers situés en ROM sont protégés et ne

La pre- mière approche de réseau sur puce proposée (réseau CuNoC) est caractérisé à la fois par un faible taux de ressources logiques nécessaires pour son implantation, par

Afin d’obtenir des systèmes mécatroniques dans lesquels les utilisateurs placent une grande confiance, des études de sûreté de fonctionnement, et en particulier de fiabilité,

77 Genista canariensis Genista flagellaris Genista humifusa Genista microphylla Genista pulchella Genista spachiana Genista tournefortii Genista spartioides Genista

Ce travail de th` ese a port´ e sur le d´ eveloppement d’un syst` eme de d´ etection ultra- large bande millim´ etrique simple bas´ e sur le principe du radar impulsionnel pour

95 Figure 4.14 – Heudiasyc Laboratory in France, 2010, Carmen: From a stored Otsu threshold, in the top images, the interest pixels classified as navigable area are