Les articles de Bourry Eric

Python Simple Smartcard Interpreter

Magazine
Marque
MISC
Numéro
52
|
Mois de parution
novembre 2010
|
Domaines
Résumé
Alors que les cartes à puce sont de plus en plus présentes dans notre environnement, et que les lecteurs, avec ou sans contact, sont de moins en moins chers, peu d'outils permettent aux usagers d'examiner le contenu de leurs cartes. Dans cet article, nous présentons tout d'abord la philosophie et l’objectif de notre outil libre, PSSI (Python Simple Smartcard Interpreter). Nous rappelons ensuite les bases concernant la communication avec une carte à puce, afin de comprendre ce dont l’outil permet de s’abstraire. Enfin, nous présentons un cas concret d’utilisation du logiciel pour lire une carte SIM.

Mémoire non exécutable : vers le Return Oriented Programming (ROP)

Magazine
Marque
MISC
Numéro
51
|
Mois de parution
septembre 2010
|
Domaines
Résumé
Depuis quelques années, l'exploitation des failles applicatives, en particulier des débordements de tampons, est rendue de plus en plus difficile par les protections mises en place dans les divers systèmes d'exploitation. En particulier, il est de plus en plus rare de pouvoir exécuter des données sur la pile. Dans la première partie de l'article, nous rappelons les techniques de retour dans la libc, permettant de contourner ces protections, en particulier lorsque les arguments des fonctions, ainsi que leur adresse (ASCII Armor), contiennent des octets nuls. Nous voyons dans un second temps comment automatiser la création de shellcodes dans une pile non exécutable, à l'aide d'une preuve de concept en Python qui interface des outils déjà existants, tels que objdump ou ldd. Enfin, nous présentons les évolutions de ces techniques et les progrès actuels dans le domaine du « Return Oriented Programming », dont l'objectif est d'aller plus loin qu'un simple chaînage de fonctions, en proposant par exemple des boucles ou des branchements.