Les offres de “Orange”

Expire bientôt Orange

Stage - Recherche de vulnérabilités sur le mécanisme d'extension de Linux F/H

  • Stage
  • Châtillon (Hauts-de-Seine)
  • Développement informatique

Description de l'offre

about the role

Les versions récentes du noyau Linux disposent d'un nouveau mécanisme d'extension, BPF. BPF permet aux applications de charger des programmes sous forme de bytecode dans le noyau afin, par exemple, de traiter les paquets réseaux au niveau des pilotes réseaux, de tracer les évènements noyaux ou de restreindre les permissions d'une application.
Ces programmes s'exécutent dans le contexte restreint de la VM BPF mais peuvent faire appel à certaines fonctions noyaux pour accéder à des structures de données, au matériel, ou aux données noyaux (ex. temps courant). Ce stage aura pour objectif le développement d'une plateforme de fuzzing de fonctions noyaux au travers de programmes BPF.

Le fuzzing consiste en l'injection de données aléatoires en entrée d'une fonction afin de détecter d'éventuels bugs et vulnérabilités. En l'occurrence, la plateforme injectera des programmes BPF qui feront appel aux fonctions noyaux testées.

Ce stage a pour objectif le développement d'une plateforme permettant le fuzzing des fonctions noyaux accessibles au travers des programmes BPF.
Le stage s'organisera selon les étapes suivantes :
- Prise en main des programmes BPF et documentation sur le format de bytecode BPF.
- État de l'art sur les plateformes de fuzzing existantes pour le noyau Linux.
- Conception et implémentation d'une plateforme de fuzzing à partir de programmes BPF.
- Évaluation de l'efficacité de la plateforme.
- Analyse des bugs découverts.
- Amélioration de la génération des programmes BPF afin d'augmenter la couverture du code noyau ciblé.

En fonction des résultats remontés par le fuzzer, le stage pourra donner lieu à l'écriture d'exploits pour les vulnérabilités identifiées et/ou à la contribution de correctifs au noyau Linux. Ce stage sera l'occasion de monter en compétence sur les techniques de fuzzing et, si les résultats sont concluants, de publier des CVE. Les résultats seront publiés en open source et pourront donner lieu à une présentation dans une conférence sécurité.

about you

Ingénieur ou master en informatique

- Bonne compréhension de l'assembleur et connaissance du langage C.
- Capacité à déboguer un noyau Linux (gdb, QEMU, compilation du noyau).
- Connaissance des techniques d'exploitation de vulnérabilités mémoires (ex. buffer overflow, use-after-free).
- Développement Python ou Go.

department

Le département Sécurité (SEC) d'Orange Labs Services propose des solutions innovantes pour protéger les réseaux et services du Groupe Orange, ainsi que les données de ses clients ; il accompagne les projets du Groupe dans leur démarche de gestion des risques de sécurité. Il développe et maintient pour cela une expertise de référence sur toutes les technologies utilisées par l'opérateur : réseau, cloud, systèmes, cryptographie, etc. à travers des activités de recherche et de développement.

contract

Internship

Duration : 6 months

Level : Master 2

Faire de chaque avenir une réussite.
  • Annuaire emplois
  • Annuaire entreprises
  • Événements