Type de contrat Stagiaire école
Début du contrat 01/03/2022
Localisation Paris 15e Arrondissement, 75, Paris, Île-de-France
Niveau d'études Diplôme d'ingénieur, Master 2 ou titre équivalent de niveau Bac + 5
Domaine professionnel Spécialiste sécurité d'un domaine technique
Niveau d'expérience Etudiant
Rémunération Gratification ou rémunération légale mensuel net
Gratification ou rémunération légale annuel brut (selon expérience)
Avantages en nature -
Télétravail Non

Empreinte des implémentations logicielles embarquées F/H

Descriptif de l'organisation

 Rejoindre l’Agence nationale de la sécurité des systèmes d’information (ANSSI), c’est mettre ses compétences au service de l’intérêt général en participant à une mission capitale, d’actualité et porteuse de grandes responsabilités dans un monde où la cybersécurité est devenue l’affaire de tous ! 


Au sein de la division Scientifique et Technique, le laboratoire Sécurité des Composants (LSC) est le pôle d'excellence dans le domaine des composants sécurisés et des logiciels qu'ils embarquent. Le LSC a pour objectif d'anticiper les risques, de soutenir le centre de certification national lors des évaluations des produits de sécurité, de contribuer à la recherche, à l'analyse des besoins et à la conception de solutions propres à les satisfaire.

Descriptif des missions

Contexte du stage :

Les logiciels embarqués dans les composants sécurisés sont généralement peu documentés, leurs versions difficilement identifiables et les fabricants indiquent rarement les détails de leurs implémentations. À cause de ce manque d’information, il est compliqué de déterminer la présence d’une vulnérabilité connue, pour un produit donné.


Objectifs du stage :

Le but de ce stage est de réaliser une empreinte des implémentations logicielles embarquées afin de déterminer, par une analyse statistique, les ressemblances et divergences entre plusieurs implémentations. Cette analyse permettra de classer les implémentations rencontrées selon une métrique à déterminer.


Les objectifs du stage sont :

  • Caractériser, via de nouvelles méthodologies, l’empreinte des implémentations logicielles embarquées en boite noire (e.g. sans pouvoir instrumenter le système étudié),


  • Concevoir des méthodes permettant de résoudre les trois problèmes suivants :
  1. Être capable d’affirmer avec assurance si deux systèmes ont exactement la même implémentation avec un minimum de tests
  2. Être capable de différencier deux implémentations différentes d’une même spécification
  3. Être capable de déterminer une version de l’implémentation d’un même développeur.


  • Constituer une base de données de marqueurs caractéristiques pour un ensemble de produits.


Pour cela, le stage est divisé en plusieurs étapes :

  1. Analyse de l’état de l’art des approches de prises d’empreintes ; 
  2. Prise en main des travaux existants ;
  3. Développement d’un framework de tests basé sur les travaux existants ;
  4. Expérimentation et classification.

Profil recherché

Vous êtes étudiant en dernière année de master ou d'école d'ingénieur et vous recherchez votre stage de fin d'études.


Vous suivez une formation dans le domaine des technologies de l'information et de la communication et des implémentations embarquées.

Vous avez des compétences solides en informatique et vous maîtrisez au moins le langage de programmation Python avec des compétences en analyse de données/statistique.

Compétences recherchées

  • Systèmes embarqués, 
  • Développement embarqué, C, python, statistique, fuzzing.

Process de recrutement

  • Si votre candidature est présélectionnée, vous serez contacté(e) pour apprécier vos attentes et vos motivations au cours d'un entretien téléphonique ou physique.
  • Des tests techniques pourront vous être proposés.
  • Vous ferez l'objet d'une procédure d'habilitation.