####################################################################### Luigi Auriemma Applicazione: Icecast http://www.icecast.org Versioni: <= 2.0.1 Piattaforme: il bug sembra affliggere solo la version Win32 Bug: array overflow Exploitation: remoto Data: 28 Settembre 2004 Autore: Luigi Auriemma e-mail: aluigi@autistici.org web: aluigi.org ####################################################################### 1) Introduzione 2) Bug 3) The Code 4) Fix ####################################################################### =============== 1) Introduzione =============== Icecast e' un sistema di broadcast audio che distribuisce musica in entrambi i formati MP3 ed Ogg Vorbis. ####################################################################### ====== 2) Bug ====== Il server Icecast accetta un massimo di 32 intestazioni nella richiesta HTTP dei clients. In alcune situazioni (la versione Win32 sembra la sola vulnerabile) una richiesta con piu' di 31 intestazioni HTTP causa la sovrascrittura dell'indirizzo di ritorno della funzione vulnerabile con un puntatore all'inizio della trentaduesima intestazione. In breve cio' significa che e' possibile eseguire codice remoto usando semplicemente una richiesta HTTP piu' 31 intestazioni seguite dallo shellcode che verra' eseguito direttamente senza il bisogno di chiamare indirizzi o registri od altre tecniche. ####################################################################### =========== 3) The Code =========== http://aluigi.org/poc/iceexec.zip ####################################################################### ====== 4) Fix ====== Versione 2.0.2 #######################################################################