Buffer Overflow
Definizione rapida
Il buffer overflow avviene quando un processo scrive più dati di quanti il buffer possa contenere.
Spiegazione
La parte eccedente supera lo spazio assegnato e raggiunge aree successive, dove può alterare o sostituire informazioni già presenti. Il problema può nascere da un errore di programmazione oppure essere sfruttato per compromettere la sicurezza dei dati.
Esempio pratico
Un processo tenta di copiare nel buffer una quantità eccessiva di dati e finisce per sovrascrivere quelli conservati nell'area seguente.
Spiegazione tecnica
L'errore dipende dalla mancata corrispondenza tra la dimensione dei dati in ingresso e la capacità disponibile nel buffer.
Da non confondere con
Il buffer overflow riempie oltre il limite l'area di memoria; il buffer underrun descrive invece l'esaurimento dei dati attesi da un dispositivo.