Wednesday, April 16, 2008

Le Duke *

S'emerveiller devant une faille et un exploit se fait rare de nos jours. Il n'y a pas grand chose de nouveau, et on finit toujours avec les memes primitives de bugs et des exploits dont le principe est toujours le meme. Alors quand je dois ecrire l'exploit pour une faille comme celle recemment publiee pour Flash par ISS, je suis heureux.

Le papier de Mark "Duke" Dowd est une perle. Un contenu exact de A a Z, une approche novatrice pour une primitive de bug pas necessairement evidente a exploiter (ecrire 4 octets pas entierement controlables a une addresse multiple de 12 pour simplifier). Ecrire son bytecode AS3 non verifie pour prendre le controle de EIP, c'est marrant. "Exciting and Dynamic" comme dirait Runara.

Bien que le papier soit hyper detaille (ca change des merdes usuelles), il reste pas mal de boulot a un neophite de Flash pour ecrire l'exploit. Quelques heures passees sur les formats SWF et les blobs ABC auront suffit pour satisfaire les exigences de Flash et de sa VM.

Au final, pas la meilleure faille du monde (DEP OptOut introduit une complexite non couverte par le papier de Duke), mais probablement l'exploitation la plus interessante sur laquelle j'ai pu travailler.

* Reference a The Big Lebowski meme si en VO il s'agit du 'Dude' et non du Duc ou Duke, et meme si le sieur Dowd n'a rien a voir avec.

3 comments:

mxatone said...

J'ai moi même lu le paper ce matin et j'avoue avoir adoré. J'adore les exploitations ou le gars part d'une vulnérabilité peu ou pas exploitable pour en faire quelque chose qui marche quasiment à tous les coups.

Ct pas mal aussi le poste de matasano donnant le lien sur l'article :

"The evidence is now overwhelming that Mark Dowd was, in fact, sent back through time to kill the mother of the person who will grow up to challenge SkyNet. Please direct your attention to Dowd’s 25-page bombshell on a Flash bytecode attack."

L'idée de prendre la main sur la VM en overwrittant la table de reconnaissance des opcodes valides c'est clairement génial. Les mecs de IBM X-Force ont pas finit de nous étonner ;).

D'ailleurs je conseil à tout le monde le bouquin qu'il a écrit avec John McDonald (The Art of Sofware Security Assessment). C'est pas du tout dans la mouvance reverse binaire (rah le reverse de la VM AS3 ...).

toto said...

Le problème c'est que l'on se dirige de plus en plus vers ce type d'exploitation qui est très spécifique à l'application ciblée.

Bien sûr le challenge est beaucoup plus interessant (merci les "safe" apis) mais le problème c'est que le temps pour exploiter une faille peut rapidement passer de 1 minutes (stack overflow de base) à 1 semaine.

Enfin, il reste encore de vraies failles: http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=688

newsoft said...

Hmmm, il va falloir que je publie un truc sur Zlib alors ;)