Stack-Overflow-Schwachstelle
Was ist Stack-Overflow-Schwachstelle?
Stack-Overflow-SchwachstellePufferüberlauf auf dem Programm-Stack, der typischerweise die gespeicherte Rücksprungadresse oder lokale Funktionspointer überschreibt, um die Ausführung umzulenken.
Der Stack-Overflow ist der historische Archetyp speicherkorruptiver Exploits: Ein ungeprüfter Schreibzugriff in einen auf dem Stack allokierten Puffer überschreibt den Frame-Pointer oder die gespeicherte Rücksprungadresse, sodass Angreifer den Kontrollfluss in kontrollierte Bytes (Shellcode oder ROP-Gadgets) umlenken können. Abwehrmaßnahmen sind Stack-Canaries (StackGuard, /GS), nicht ausführbare Stacks (DEP/NX), ASLR, Shadow Stacks und Intel CET sowie FORTIFY_SOURCE und sicherere String-Funktionen auf Compiler-Ebene. Trotz jahrzehntelanger Gegenmaßnahmen treten klassische Stack-Overflows in Firmware, IoT und Altsoftware weiterhin auf und sind regelmäßiger Stoff für CVEs und CTFs.
● Beispiele
- 01
CVE-2003-0352 (DCOM RPC): Der Blaster-Wurm nutzte einen Stack-Overflow.
- 02
CVE-2019-0708 (BlueKeep): Stack-Overflow im Remote-Desktop-Dienst.
● Häufige Fragen
Was ist Stack-Overflow-Schwachstelle?
Pufferüberlauf auf dem Programm-Stack, der typischerweise die gespeicherte Rücksprungadresse oder lokale Funktionspointer überschreibt, um die Ausführung umzulenken. Es gehört zur Kategorie Schwachstellen der Cybersicherheit.
Was bedeutet Stack-Overflow-Schwachstelle?
Pufferüberlauf auf dem Programm-Stack, der typischerweise die gespeicherte Rücksprungadresse oder lokale Funktionspointer überschreibt, um die Ausführung umzulenken.
Wie schützt man sich gegen Stack-Overflow-Schwachstelle?
Schutzmaßnahmen gegen Stack-Overflow-Schwachstelle kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für Stack-Overflow-Schwachstelle?
Übliche alternative Bezeichnungen: Stack Smashing.