Sommaire

Cas concret : Ability Server

Pour travailler sur les attaques de type buffer overflow, le mieux est d’avoir deux machines virtuelles (par exemple VirtualBox) qui vont nous permettre de recréer la machine victime en local avant de réaliser l’attaque en réel.

La première machine sera sous Debian et la seconde, la victime, sous Windows.

La prise d’informations sur la victime sera bien sûr faite au préalable afin de recréer une machine parfaitement identique. Il faut connaître l’OS utilisé, la version exacte du logiciel installé qui est susceptible d’être faillible et savoir si un Service Pack a été installé.

Pour l’exemple, la victime sera une machine avec un Windows XP, Service Pack 2 avec Ability Server 2.34. Vous pouvez trouver ce serveur FTP en faisant une recherche sur Google.

1. Fuzzing

La première chose à faire est de tester le logiciel afin de découvrir s’il est susceptible d’être faillible. Il existe pour cela des logiciels presque "clés en main" tels que Fusil ou Spike. Mais le but ici est de comprendre le fonctionnement d’un fuzzer, nous allons donc le fabriquer.

Nous pouvons utiliser n’importe quel langage, il faut savoir programmer des sockets (connexions à distance TCP/IP ou UDP) et connaître le protocole que l’on va attaquer, FTP pour notre exemple. Le meilleur moyen pour connaître un protocole est de se procurer sa RFC ; une simple recherche ...