[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Giugno 2001 ml@sikurezza.org
Soggetto: Re: Un byte di overflow
Mittente: Bonelli Nicola
Data: 14 Jun 2001 11:13:55 -0000

ACK.
L'idea come dice Ale e' quella di andare a ricostruire altrove l'intero
frame dell'instanza precendente, forzando in quest'ultima il [ret].

Significa che il frame ricostruito devra' consentire alla
instanza chiamante di arrivare al termine della propria esecuzione
(senza generare ulteriori segmentation fault), in modo che possa dar luogo
(al ret) all'esecuzione della shellcode stessa.

Ti serve quindi una funzione vulnerabile di 3' livello, spazio, fortuna e
sopratutto una buona dose di calcoli per far tornare tutti i calcoli
relativi agli offset.

Il problema si riduce drasticamente se la funzione chimante non ha
variabili locali; in quest'ultimo caso il suo frame si riduce
proprio ad un unico [fp][ret].

Soltanto 8 byte che potrebbero garantirti di indovinare un giusto
allineamento se hai l'opportunita' di ricostruire l'istanza n-volte.



Buona fortuna.

Nicola

-nb-
Conscience makes egotists of us all. 

Linux & C. contributor. bonelli@oltrelinux.com   

			bonelli@antifork.org     

			awgn@sicurezza.org    

Get my pgp.pub key at: http://awgn.antifork.org/pgp
Key fingerprint = E1FF 4CCE 5D60 F437 364E  7A6A A13E D061 6BE8 F7B8



________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005