Details of the offer for Etude de solutions d’instrumentation de binaires - H/F about reversing at Sogeti in Issy-Les-Moulineaux

[ PROVIDED ]
Sogeti Logo

L’ESEC (European Security Expertise Center - http://esec.fr.sogeti.com/) est le centre de compétences et d’expertise en sécurité des systèmes d’information de Sogeti France regroupant près de 200 consultants et experts de haut niveau.

Au sein du laboratoire de R&D de l'ESEC (http://esec-lab.sogeti.com/), nous recherchons un stagiaire ingénieur sécurité pour étudier les solutions d’instrumentation de binaires.

Contexte

Les solutions d’instrumentation dynamique de binaires sont de plus en plus matures. Il est possible d’instrumenter des programmes closed-source afin d’y effectuer des traitements plus poussés. Notamment sur les opérations mémoire, par exemple pour vérifier l’accès par des instructions sur des zones du tas libérées (ce qui ne devrait pas exister normalement). On se rapproche dans ce cas du data-tainting ou taint-checking. Les frameworks existants les plus connus sont PIN et dynamoRIO.

Sujet

Le but du stage est de choisir le meilleur outil de DBI afin de l’appliquer sur des programmes pour mesurer leur comportement dans des situations de stress. Notamment pour y détecter des bugs.
Le stage se déroulera en plusieurs parties :
1. État de l’art sur les diverses solutions de DBI
2. Étude d’une solution de DBI
  a. Étude des limites du framework
  b. Développement d’un programme de vérification mémoire à partir de ce framework
3. Tests et évaluations
  a. Tests réalisés sur des programmes dans des situations de stress

Compétences recherchées
  • Bonnes connaissances en reverse engineering. IDA, WinDBG
  • Windows Internals : SDK, WDK
Modalités
  • Durée du stage : 6 mois environ
  • Profil idéal : stage de fin d’étude
Références

1. http://en.wikipedia.org/wiki/Taint_checking
2. http://en.wikipedia.org/wiki/Pin_%28computer_program%29
3. http://prezi.com/7a6pw6r94hwx/dbifuzz-framework/
4. https://github.com/zer0mem/ShowMeYourGongFu/tree/x64userland
5. http://shell-storm.org/blog/In-Memory-fuzzing-with-Pin/
6. http://www.shell-storm.org/blog/Stack-and-heap-overflow-detection-at-runtime-via-behavior-analysis-and-PIN/
7. http://shell-storm.org/blog/Taint-analysis-and-pattern-matching-with-Pin/
8. http://seanhn.wordpress.com/tag/pin/
9. http://actes.sstic.org/SSTIC09/Utilisation_du_data_tainting_pour_lanalyse_de_logiciels_malveillants/SSTIC09-article-F-Marceau-Utilisation_du_data_tainting_pour_lanalyse_de_logiciels_malveillants.pdf

Apply