Glossary · Term

use-after-free

← all terms

Definition

Plain language

A memory bug where a program keeps using a chunk of memory after it has been released, often leading to crashes or exploits.

As stated in the literature

A memory-safety vulnerability in which a pointer is dereferenced after the underlying heap allocation has been freed, frequently producing exploitable conditions in C/C++ systems.

Also called: use-after-frees

Why it matters: Use-after-frees are among the most common and dangerous bugs in C and C++ codebases, and a major motivation for memory-safe languages like Rust.

For example, freeing a struct holding a network connection and then accidentally writing to it later can corrupt unrelated memory or let attackers run their own code.

Mentioned in 1 episode

  1. 024
    An AI Agent That Found 28 Zero-Days in Windows — And What Made It Work

Related concepts

Related terms