Basiswissen Buffer Overflow

14.05.2004
Von Thomas Wölfer

char Name[ 15];

char Vorname[ 15];

Je 15 Byte: Die maximale Größe der beiden Strings ist festgelegt.

Nun einmal angenommen, dass die beiden Variablen die ersten im Programm definierten sind. Dann hat Name die Adresse 0 und reicht bis zur Adresse 14, Vorname hat die Adresse 15 hat und belegt die folgenden 15 Bytes. Die Variablen wurden aber noch nicht mit Inhalten belegt, also enthalten die zugehörigen Speicherzellen auch nur zufällige Werte. Diese zufälligen Werte sind in der Abbildung mit einem X markiert. Die Adressen der einzelnen Zellen stehen jeweils über der Zelle.

Speicher wird beschrieben