Sploitus

Exploit for winxp-stack-buffer-overflow

githubexploit Β· 2026-08-06

Exploit Code

README53 lines
## https://sploitus.com/exploit?id=78C6893A-A03D-53CE-B0E1-C1CDAF71B4A7
# Stack Buffer Overflow & Local Privilege Escalation Project

**Autori:** Andrea Erpini (2082488), Eleonora Conti (2082947)  
**Corso:** Sicurezza Informatica β€” UniversitΓ  degli Studi

---

## πŸ“Œ Descrizione Generale

Questo progetto illustra l'analisi dinamica, la progettazione e l'esecuzione di un attacco di **Stack Buffer Overflow** su un'applicazione C vulnerabile (`guess_game.exe`), sviluppata ad hoc. 

Il progetto spazia dall'ispezione dei registri della CPU in un ambiente di testing controllato (**Windows XP Professional 32-bit SP3**) alla scrittura di uno shellcode custom in Python, fino alla concatenazione con un exploit kernel-level (**KiTrap0D**) per l'ottenimento dei massimi privilegi di sistema (`NT AUTHORITY\SYSTEM`).

---

## πŸ“ Struttura della Repository
La repository Γ¨ organizzata nelle seguenti cartelle e sezioni:

.
β”œβ”€β”€ README.md                           # Documentazione principale della repository
β”œβ”€β”€ LICENSE                             # Licenza MIT
β”œβ”€β”€ Relazione/                          # Documentazione dettagliata del progetto
β”‚   β”œβ”€β”€ Relazione Homework 1.pdf        # Relazione finale in formato PDF
β”‚   └── Relazione Homework 1.docx       # Relazione finale in formato Word editable
└── Codice/                             # Moduli software e script di attacco
    β”œβ”€β”€ Programma Vulnerabile/          # Sorgenti e compilato del gioco vulnerabile
    β”‚   β”œβ”€β”€ guess_game.c                # Codice sorgente C con vulnerabilitΓ  get_name()
    β”‚   └── guess_game.exe              # Eseguibile compilato senza mitigazioni
    β”œβ”€β”€ Base/                           # Attacco Buffer Overflow (Parte Obbligatoria)
    β”‚   β”œβ”€β”€ payloadBase.py              # Script Python per la generazione del payload
    β”‚   └── payload.bin                 # Payload binario generato (Spawna cmd.exe)
    └── Opzionale/                      # Escalation dei Privilegi a SYSTEM (Parte Opzionale)
        β”œβ”€β”€ escalation.py               # Script Python con shellcode modificato per KiTrap0D
        └── payload2.bin                # Payload binario per l'esecuzione di vdmallowed.exe
        

## πŸ” Guida alla Navigazione e Riferimenti
Per comprendere a fondo tutti i dettagli tecnici, i problemi riscontrati e le relative soluzioni adottate, fare riferimento alla Relazione presente nella cartella Relazione/.


## πŸ› οΈ Requisiti e Strumenti Utilizzati
Sistema Operativo Target: Windows XP Professional SP3 32-bit (senza mitigazioni/patch attive).

Debugger: Immunity Debugger (per l'analisi dei registri e l'individuazione di JMP ESP a 0x7C86467B e WinExec a 0x7C8623AD).

Compilatore: GCC (gcc -fno-stack-protector -o guess_game.exe guess_game.c).

Scripting: Python 3 (utilizzando il modulo struct per l'impacchettamento Little-Endian).


## ⚠️ Note sulla Parte Opzionale (KiTrap0D)
Come dettagliato nella Sezione 7.2.2 della relazione, i file binari dell'exploit locale vdmallowed.exe e vdmexploit.dll non sono inclusi nella repository per evitare segnalazioni di sicurezza/antivirus. Per riprodurre l'escalation dei privilegi, i binari originali devono essere scaricati da Exploit-DB e posizionati all'interno della cartella dell'eseguibile vulnerabile come specificato nei requisiti operativi (Sezione 7.4).