[Linux-Biella] Fw: Exploitation: Returning into libc

Paul TT linux@ml.bilug.linux.it
Wed, 28 Jan 2004 02:47:25 +0100


Emanuele Aina wrote:

> Andrea Ferraris riportò:
>
>> Io non  ho tempo di leggerlo, ma se a qualcuno puo`
>> interessare ha voglia di farcene un riassunto?
>
>
> [NB: è il mio primo approccio a tali techiche, quindi prendete le mie 
> parole con molta cautela]
>
> Riassumendo: le tecniche buffer overflow richiedono che lo stack sia 
> eseguibile per contenere le istruzioni che l'attaccante vuole eseguire 
> ma, recentemente, l'uso di stack non eseguibili (PaX, propolice, 
> etc...) rende impossibile ciò.
>
> In questo documento si propone che l'attaccante, invece che fornire 
> del proprio codice, usi il buffer overflow per lanciare una funzione 
> di libreria, passandole attraverso lo stack parametri opportuni.
>
> La tecnica qui esposta consiste nel mettere gli argomenti della 
> funzione nello stack (usando variabili d'ambiente e appositi 
> programmini), sovrascrivere l'indirizzo che andrà messo nell'EIP al 
> ritorno dalla funzione con l'indirizzo della funzione system() della 
> libc e ottenere in questo modo una shell (con i privilegi del 
> programma bucato).

esatto, invece di eseguire una shell, tramite b.o. si fa eseguire una 
funzione, che e' quindi autorizzata all'esecuzione, che la lancia.
carino :-)

-- 
It was software, in cyberspace...
There was no system core.
It can not be shut down.
The attack began on 6:18 PM...