Stack overflow: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m +{{S}}
Alez (discussione | contributi)
Nessun oggetto della modifica
Riga 3:
Si immagini l'utilizzo di una allocazione di memoria dedicata all'esecuzione di un programma come una pila.
Mentre le istruzioni vengono allocate in quell'area partendo dall'alto verso il basso della pila, lo [[stack]], utilizzando la sua organizzazione [[LIFO]], crescerà dal basso verso l'alto di questa seguendo quanto indicato dallo [[stack pointer]], un registro dedicato delle [[CPU]].
Se ad ogni operazione di [[push]] nello stack(inserimento) non corrisponde un opportuno numero di operazioni di [[pop]] (prelievo) questo lo stack può continuare a lievitare fino a "traboccare" dallo spazio assegnatogli e giungere a sovrascrivere lealtre informazioniaree di memoria a cui non deldovrebbe programmaaccedere.
Opportunamente sfruttato questo tipo di [[overflow]] può far si che un utente malintenzionato sfrutti questa [[vulnerabilità]] per l'esecuzione di codice arbitrario che si va a sostituire a quello del programma in esecuzione.
 
[[Categoria:Tecniche di attacco informatico]]