CyberGlossary

Vulnerabilidades

Heap overflow

Também conhecido como: Heap buffer overflow

Definição

Buffer overflow em memória alocada dinamicamente, que muitas vezes corrompe metadados do alocador, ponteiros de função ou tabelas virtuais de objetos.

Um heap overflow escreve para além do fim de um buffer alocado dinamicamente, danificando chunks adjacentes ou metadados do alocador (malloc/free, jemalloc, mimalloc, etc.). Como o layout do heap não é determinístico, a exploração usa heap grooming ou "feng shui" para posicionar alvos úteis junto ao buffer vulnerável: ponteiros de função, vtables, blocos de controlo de smart pointers ou estado crítico. Alocadores modernos endurecem metadados, isolam chunks e adicionam guard pages; ASLR, CFI, sandboxing e linguagens memory-safe reduzem o impacto. Os heap overflows são centrais na exploração de navegadores, kernels e parsers de documentos, com várias entradas premiadas no Pwn2Own.

Exemplos

  • CVE-2018-4407: heap overflow TCP no kernel XNU.
  • Vários heap overflows do motor JavaScript do Chrome explorados no Pwn2Own.

Termos relacionados