Guide pas à pas pour exploiter un débordement de tampon dans le serveur FTP FreeFloat en utilisant le fuzzing Python, Immunity Debugger avec mona.py, et IDA Free pour l'analyse binaire et le développement de payload.
Plateforme cible : Windows
Ce guide détaille tous les outils nécessaires pour réaliser l'analyse des vulnérabilités et le fuzzing du binaire. Suivez les étapes dans l'ordre pour garantir une configuration correcte.
Téléchargement : python.org/downloads/windows
Python 3 est le langage que nous utiliserons pour écrire des scripts de fuzzing. Sa simplicité et son écosystème riche le rendent idéal pour automatiser la livraison de charges utiles au binaire cible, gérer les connexions réseau et traiter les réponses.
Installation : Téléchargez l'installateur .exe depuis le lien et exécutez-le. Pendant l'installation, assurez-vous de cocher ✅ « Ajouter Python au PATH » — sinon, vous ne pourrez pas invoquer python depuis le terminal.
Téléchargement : github.com/kbandla/ImmunityDebugger
Immunity Debugger est un débogueur au niveau processus spécialement conçu pour l'analyse de sécurité et la recherche d'exploits. Il permet d'inspecter les registres, la mémoire, la pile et le tas en temps réel pendant l'exécution du programme — exactement ce dont nous avons besoin pour identifier et vérifier un débordement de tampon.
⚠️ Note : Immunity Debugger n'est plus maintenu et son site officiel n'est plus disponible. Cependant, il est encore largement utilisé dans la communauté de la sécurité et dans les environnements académiques en raison de son intégration avec le plugin mona.py, de sa faible consommation de ressources et de son interface intuitive pour l'analyse d'exploits sur les systèmes Windows 32 bits. Le dépôt GitHub référencé contient le binaire de l'installateur tel que distribué à l'origine.
Installation : Clonez le dépôt. L'exécutable se trouve dans ImmunityDebugger\1.85\ImmunityDebugger.exe et ne nécessite pas d'installation.

Téléchargement : python.org/download/releases/2.7
Le moteur de script d'Immunity Debugger est basé sur Python 2.7, ce qui rend cette version strictement nécessaire au bon fonctionnement de l'outil — en particulier pour exécuter le plugin mona.
ℹ️ Python 2.7 et Python 3 peuvent coexister sur le même système sans problème. Assurez-vous simplement que Python 3 reste la version principale dans votre PATH.
Installation : Téléchargez et exécutez l'installateur. Il n'est pas nécessaire de l'ajouter au PATH si Python 3 est déjà configuré.

Téléchargement : github.com/corelan/mona
mona.py est le plugin phare d'Immunity Debugger, développé par la Corelan Team. Il automatise les parties les plus fastidieuses du développement d'exploit :
pattern_create, pattern_offset)JMP ESPInstallation :
mona.py dans le répertoire des commandes d'Immunity :ImmunityDebugger\1.85\PyCommands\mona.py
Une fois copié, vous pouvez l'invoquer depuis la barre de commandes d'Immunity avec :
!mona help

Téléchargement : code.visualstudio.com
🟡 Facultatif — mais fortement recommandé.
VS Code est l'éditeur dans lequel nous écrirons nos scripts Python de fuzzing. Il offre la coloration syntaxique, l'autocomplétion intelligente, un terminal intégré et la prise en charge des extensions qui améliorent considérablement l'efficacité du travail.
Extension recommandée : Python — Microsoft
Elle fournit IntelliSense, le linting, le débogage intégré et la sélection de l'interpréteur Python directement dans VS Code. Une fois installée, assurez-vous de sélectionner le bon interpréteur (Python 3) dans la barre inférieure de l'éditeur.

Téléchargement : hex-rays.com → section Téléchargements → IDA Free
IDA (Interactive DisAssembler) est la référence en matière de rétro-ingénierie de binaires. La version gratuite (IDA Free) est plus que suffisante pour cette analyse : elle permet de désassembler l'exécutable cible, de naviguer dans ses fonctions, d'identifier les appels dangereux comme strcpy ou gets, et de comprendre le flux du programme sans accès au code source.
🔐 Licence : La version individuelle non commerciale est totalement gratuite. Elle nécessite simplement une inscription avec une adresse e-mail valide. L'installateur et la licence sont téléchargés depuis le Portail client Hex-Rays.
Installation :
Téléchargez l'installateur .exe depuis le Portail client et exécutez-le en suivant les étapes de l'assistant.
Après l'installation, l'assistant indiquera que vous devez placer le fichier de licence (.hexlic) dans le chemin suivant :
%APPDATA%\Hex-Rays\IDA Pro\
.hexlic depuis la section Licences du Portail client et copiez-le à cet emplacement. La prochaine fois que vous lancerez IDA, la licence sera automatiquement activée. ✅Le binaire cible est FreeFloat FTP Server v1.0, un serveur FTP léger pour Windows. Il s'agit d'un logiciel dont les vulnérabilités sont connues et bien documentées dans la communauté de la sécurité, ce qui en fait une cible classique pour s'entraîner aux techniques de débordement de tampon dans des environnements contrôlés.
📦 L'exécutable est disponible dans ce même dépôt : FreeFloatFtpServer1.0.zip
Extrayez le fichier zip pour obtenir Win32/FTPServer.exe, qui est le binaire que nous utiliserons tout au long de l'analyse.
Continuer dans 02 Vulnérabilité →
Happy hacking ! 🎯