56 min

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

    • Technologies

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

Classement des podcasts dans Technologies

Underscore_
Micode
Acquired
Ben Gilbert and David Rosenthal
Tech Café
Guillaume Vendé
Comptoir IA 🎙️🧠🤖
Nicolas Guyon
De quoi jme mail
BFM Business
Tech&Co, la quotidienne
BFM Business