Address Space Layout Randomization: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Funzionalità collegamenti suggeriti: 2 collegamenti inseriti.
m Aggiunto il collegamento a "Buffer overrun" nell'introduzione
 
Riga 1:
La '''ASLR''' ('''''A'''ddress '''S'''pace '''L'''ayout '''R'''andomization'', "casualizzazione dello spazio degli indirizzi") è una misura di protezione contro [[Buffer overflow|buffer overrun]] e [[exploit]] che consiste nel rendere (parzialmente) casuale l'indirizzo delle funzioni di libreria e delle più importanti aree di memoria. In questo modo un attacco informatico che cerca di eseguire codice malevolo su un computer è costretto a cercare gli indirizzi del codice e dei dati che gli servono prima di poterli usare, provocando una serie di crash del programma vettore (infettato o apertamente malevolo).
 
Normalmente, se durante l'esecuzione di codice si accede a una [[struttura dati]] con l'indirizzo sbagliato si ottengono dati errati, e se si chiama una funzione con l'indirizzo errato si provoca una eccezione, che porta alla terminazione del programma da parte del [[sistema operativo]]; un programma malevolo sfrutterà però l'eccezione generata (legittimamente: non è possibile né consigliabile impedire ai programmi di generare eccezioni) per tenere traccia di quale tentativo è fallito, raccogliendo così sempre maggiori informazioni ad ogni fallimento, fino a conoscere prima o poi con precisione l'indirizzo di memoria delle risorse che gli servono. Questa attività di raccolta di informazioni genera però una serie ripetuta di crash del programma in questione, che è quindi ben visibile all'utente o ai programmi antivirus.