CyberGlossary

Schwachstellen

Null-Pointer-Dereferenz

Auch bekannt als: Null-Deref

Definition

Fehler, bei dem ein Programm über einen Pointer mit Wert null (oder anderweitig ungültig) liest oder schreibt – meist mit Crash und gelegentlich mit Exploit-Potenzial.

Null-Pointer-Dereferenzen (CWE-476) treten auf, wenn Code einen Pointer dereferenziert, der nie initialisiert, nach free auf NULL gesetzt oder durch eine still gefehlte Funktion entstanden ist. Auf den meisten modernen Systemen führt das zu einem Segfault und Prozessabbruch – also DoS. In bestimmten beschränkten Umgebungen – ältere Kernel mit mappbarer Adresse 0, embedded Systeme ohne MMU, einige JIT-Compiler – lassen sich Null-Derefs in Speicherkorruptions-Primitive verwandeln. Abwehr: strikte Null-Checks, Sprachfeatures (Optional/Maybe, nicht nullable Referenzen), statische Analyse, Sanitizer-Tests und OS-Kontrollen wie mmap_min_addr, die das Mappen niedriger Adressen unterbinden.

Beispiele

  • Webserver, der bei fehlendem optionalem Header abstürzt.
  • Historische Linux-Kernel-Null-Derefs, ausnutzbar bei mmap_min_addr = 0.

Verwandte Begriffe