Format string attack: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 24:
};
</source>
sia <code>0x0804a010</code> l'indirizzo del record di [[rilocazione dinamica]] per la funzione <code>__stack_chk_fail</code>. Dopo aver verificato che l'inizio della stringa di formato è, nello [[stack]], a 8 word (di 4 byte) di distanza dal [[puntatore_Puntatore_(Programmazioneprogrammazione)|puntatore]] a <code>buf</code>
<source lang="text">
# ./a.out `python -c 'print "AAAA" + "_0x%x"*8'`
Riga 39:
* la chiamata a <code>__stack_chk_fail</code> viene attivata da <code>"!"</code> che sovrascrive il primo byte dello [[stack canary]]
* <code>0x41414141</code> è in questo caso un indirizzo non valido, che genera quindi un [[Segmentation fault]].
Si fa uso del [[Puntatore_(programmazione)|puntatore]] a <code>__stack_chk_fail</code> in mancanza di altri [[puntatori a funzione]] richiamati successivamente all'istruzione vulnerabile.
== Collegamenti esterni ==
* {{en}}scut / team teso [http://julianor.tripod.com/teso-fs1-1.pdf Come sfruttare le Format String Vulnerabilities] v1.1 March 24, [[2001]]