Stack overflow: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
m +stile |
||
Riga 1:
{{S|informatica}}
Uno '''stack overflow''' consiste (solitamente) nella sovrascrittura della locazione di memoria interna allo [[stack]] contenente l
I moderni [[sistema operativo|sistemi operativi]] e compilatori sono dotati di vari meccanismi di protezione e randomizzazione dello stack, e di riorganizzazione fisica delle variabili sensibili (per evitare la sovrascrittura di puntatori).
=== Esempio di programma vulnerabile in Linux/x86 (senza protezioni) ===
Riga 28:
Inoltre, nell'esempio di cui sopra:
* in <code>0xbffff7c8</code> abbiamo il valore <code>0xbffff7c8</code>, corrispondente all'istruzione assembly <code>enter 0xfff7,0xbf</code>, ripetuta fino all'indirizzo <code>0xbffff7dc</code>
* in <code>0xbffff7e0</code> (la locazione della prima istruzione successiva a quella in <code>0xbffff7dc</code>) incontriamo casualmente un riferimento ad un indirizzo non valido, con conseguente [[
{{Portale|Sicurezza informatica}}
|