####################################################################### Luigi Auriemma Applicazioni: Purge e Purge Jihad http://www.purgejihad.com Versioni: Purge <= 1.4.7 Purge Jihad <= 2.0.1 Piattaforme: Windows Bug: broadcast buffer overflow nel client Exploitation: remoto, contro clients (broadcast) Data: 16 Feb 2004 Autore: Luigi Auriemma e-mail: aluigi@autistici.org web: aluigi.org ####################################################################### 1) Introduzione 2) Bug 3) The Code 4) Fix ####################################################################### =============== 1) Introduzione =============== Purge Jihad e' un gioco sviluppato da Freeform Interactive utilizzando il motore grafico Lithtech Talon: "E' un ibrido tra un gioco di ruolo ed un FPS ambientato nel vicino futuro durante una guerra tra le forze diametricalmente oppeste della fantascienza (l'Ordine) e della fantasy (la Scelta)" ####################################################################### ====== 2) Bug ====== Il bug e' un "broadcast" buffer-overflow che affligge i clients. Infatti ogni client che entra nella schermata multiplayer del gioco contatta automaticamente il master server principale e dopodiche' invia una richiesta ad ogni server di gioco online per conoscere informazioni riguardo il match che si sta' disputando su ognuno di essi. Il server dell'attacker deve solo replicare a tali richieste con un pacchetto di informazioni contenente 2 campi troppo grandi: tipo di battaglia e nome della mappa. Questi campi infatti sono gestiti da una funzione vulnerabile che copia la stringa in un buffer di 64 bytes che non e' sufficiente a contenere la grandezza massima di ogni campo che e' di 256 bytes. ####################################################################### =========== 3) The Code =========== http://aluigi.org/poc/purge-cbof.zip ####################################################################### ====== 4) Fix ====== Purge Jihad 2.0.2 #######################################################################