Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 391

Double Free

Geprüft vonCybersecurity entrepreneur & security researcher

Was ist Double Free?

Double FreeSpeicherfehler, bei dem derselbe Heap-Chunk zweimal freigegeben wird, was Allokator-Metadaten beschädigt und häufig beliebige Codeausführung ermöglicht.


Ein Double Free entsteht, wenn free()/delete mehr als einmal auf denselben Pointer angewendet wird. Freelists oder Bins des Allokators werden inkonsistent, sodass Angreifer eine spätere Allokation dazu bringen können, beeinflussten Speicher oder mit lebenden Objekten überlappenden Speicher zurückzugeben – ein Primitiv, das zu beliebigen Schreibvorgängen und Codeausführung führen kann. Klassifiziert als CWE-415, oft zusammen mit Use-After-Free- und Double-Fetch-Bugs. Abwehr: Single-Ownership-Muster (RAII, Smart Pointer), Pointer nach free auf NULL setzen, gehärtete Allokatoren mit Double-Free-Erkennung (glibc-tcache-Schutz, scudo), AddressSanitizer-Tests und speichersichere Sprachen.

Beispiele

  1. 01

    CVE-2015-1322: glibc-tcache-Double-Free führt zu Heap-Korruption.

  2. 02

    CVE-2019-19377: Linux-btrfs-Double-Free durch missgebildete Images.

Häufige Fragen

Was ist Double Free?

Speicherfehler, bei dem derselbe Heap-Chunk zweimal freigegeben wird, was Allokator-Metadaten beschädigt und häufig beliebige Codeausführung ermöglicht. Es gehört zur Kategorie Schwachstellen der Cybersicherheit.

Was bedeutet Double Free?

Speicherfehler, bei dem derselbe Heap-Chunk zweimal freigegeben wird, was Allokator-Metadaten beschädigt und häufig beliebige Codeausführung ermöglicht.

Wie schützt man sich gegen Double Free?

Schutzmaßnahmen gegen Double Free kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.

Welche anderen Bezeichnungen gibt es für Double Free?

Übliche alternative Bezeichnungen: Double-Free-Schwachstelle.

Verwandte Begriffe