Nous voici dans la section qui reste ma préférée : l'exploitation système et applicative. De mon point de vue,
elle reste très importante, que ce soit dans l'optique exploit, pentest ou audit. Elle reste cependant
plus difficile à suivre. Contrairement aux autres sections, celle-ci nécessite des pré-requis, à savoir un minimum de
connaissances du langage C et des commandes basiques du shell. Ceci dit, j'ai essayé de commenter les sources de façon adéquate
et pour qu'une majorité de personnes puisse comprendre le maximum. Toute cette partie s'appuie sur l'architecture Intel 32 bits mais
se transpose sous toutes les architectures (à quelques détails près, parfois pas si négligeables).
Cette section est en majorité dédiée à la compréhension de mécanismes de base sous Unix et de la gestion de la
mémoire dans les architectures Intel, puis l'apprentissage de notre premier exploit. Je me suis notamment appuyé sur la section introductive
du livre "Hacking: The Art of Exploitation" de Jon Ericksson.
- Les bases : explications et pré-requis
- La mémoire : son organisation et son utilisation
- Les Buffer Overflows : stack-, heap- et bss-based overflows
Dans un deuxième temps, nous vous invitons à rejoindre la section dédiée au shellcode, destinée à
l'apprentissage des bases de l'écriture de shellcode, ce qui nous semble aussi très important, bien que pas forcément facile.