CyberGlossary

Schwachstellen

Use-After-Free

Auch bekannt als: UAF

Definition

Speicher-Sicherheitsfehler, bei dem ein Programm Speicher weiterhin nutzt, nachdem dieser bereits freigegeben wurde – ermöglicht oft Kontrolle über Objektzustand und Kontrollfluss.

Ein Use-After-Free (UAF) tritt auf, wenn ein Pointer ein Objekt weiter referenziert, nachdem free()/delete den Speicher freigegeben hat. Schafft es ein Angreifer, denselben Speicherbereich als anderes Objekt neu zu allokieren, fungiert der dangling Pointer als perfekte Type-Confusion – ideal, um Vtable-Pointer, Callback-Adressen oder sensiblen Zustand zu überschreiben. UAFs dominieren Browser- und Kernel-Exploitation (CWE-416). Abwehr: disziplinierte Besitzmodelle (RAII, Smart Pointers), GC- oder speichersichere Sprachen, gehärtete Allokatoren (Quarantäne, Isolation Pools, GWP-ASan) und Tests mit KASAN/Valgrind. Browser ergänzen Schutzmechanismen wie MiraclePtr und PartitionAlloc.

Beispiele

  • CVE-2018-8174 (VBScript-Engine): UAF, von APT-Akteuren ausgenutzt.
  • CVE-2022-0609 (Chrome-Animation): UAF, als Zero-Day verwendet.

Verwandte Begriffe