56 Min.

Meetup Septembre 2019 - Obfuscation de Code 10**2+(2*a+3)%2 - Gaetan Ferry Codeurs en Seine

    • Technologie

Obfuscation de Code 10**2+(2*a+3)%2

Lorsque l'on parle de protection de donnée sensible, le sujet arrivant en tête de discussion est la cryptographie. Mais qu'en est-il de la protection des algorithmes qui manipulent ces données hors d'enclaves d'exécution sécurisées? Comment protéger l'anti-triche de votre jeux vidéo préféré? Comment faire pour qu'il ne soit pas copié illégitimement sur un autre logiciel?

C'est là qu'intervient l'obfuscation.

L'obfuscation de code vise à rendre un programme aussi inintelligible que possible. On emploie pour cela diverses méthodes permettant de transformer le programme d'origine en une nouvelle version plus difficile à lire et analyser mais équivalente. Le programme devient alors opaque, compliquant grandement la compréhension de quiconque osera l'étudier.

En pratique, l'obfuscation est utilisée aussi bien par les éditeurs logiciel, pour protéger leur programmes et empêcher leur rétro-ingénierie, que par les attaquants, pour contourner les détections anti-virus.

De fait, connaître les techniques de base de l'obfuscation permet aussi bien d'en appliquer les principes, pour protéger ses programmes sensibles, que d'aider à l'analyse de codes protégés.

Dans cette présentation, nous chercherons à détailler certaines des méthodes de base de l'obfuscation de code que nous mettrons en pratique sur le langage Python.

Par Gaetan Ferry

Issus de l'Université de Rouen, je suis aujourd'hui expert sécurité chez Synacktiv. Touche a tout de la sécurité offensive, je me plaît dans le web ou la cryptanalyse. J'aime aussi faire profiter les autres de mon expérience dans des conférences ou en enseignant à l'Université.

Obfuscation de Code 10**2+(2*a+3)%2

Lorsque l'on parle de protection de donnée sensible, le sujet arrivant en tête de discussion est la cryptographie. Mais qu'en est-il de la protection des algorithmes qui manipulent ces données hors d'enclaves d'exécution sécurisées? Comment protéger l'anti-triche de votre jeux vidéo préféré? Comment faire pour qu'il ne soit pas copié illégitimement sur un autre logiciel?

C'est là qu'intervient l'obfuscation.

L'obfuscation de code vise à rendre un programme aussi inintelligible que possible. On emploie pour cela diverses méthodes permettant de transformer le programme d'origine en une nouvelle version plus difficile à lire et analyser mais équivalente. Le programme devient alors opaque, compliquant grandement la compréhension de quiconque osera l'étudier.

En pratique, l'obfuscation est utilisée aussi bien par les éditeurs logiciel, pour protéger leur programmes et empêcher leur rétro-ingénierie, que par les attaquants, pour contourner les détections anti-virus.

De fait, connaître les techniques de base de l'obfuscation permet aussi bien d'en appliquer les principes, pour protéger ses programmes sensibles, que d'aider à l'analyse de codes protégés.

Dans cette présentation, nous chercherons à détailler certaines des méthodes de base de l'obfuscation de code que nous mettrons en pratique sur le langage Python.

Par Gaetan Ferry

Issus de l'Université de Rouen, je suis aujourd'hui expert sécurité chez Synacktiv. Touche a tout de la sécurité offensive, je me plaît dans le web ou la cryptanalyse. J'aime aussi faire profiter les autres de mon expérience dans des conférences ou en enseignant à l'Université.

56 Min.

Top‑Podcasts in Technologie

Passwort - der Podcast von heise security
Dr. Christopher Kunz, Sylvester Tremmel
13 Minutes to the Moon
BBC World Service
Acquired
Ben Gilbert and David Rosenthal
Lex Fridman Podcast
Lex Fridman
c’t uplink - der IT-Podcast aus Nerdistan
c’t Magazin
Mac & i - der Apple-Podcast
Mac & i