CyberGlossary

Vulnerabilidades

Vulnerabilidade de stack overflow

Também conhecido como: Stack smashing

Definição

Buffer overflow que ocorre na pilha do programa, sobrescrevendo tipicamente o endereço de retorno guardado ou ponteiros locais para redirecionar a execução.

O stack overflow é o arquétipo histórico dos exploits de corrupção de memória: uma escrita não verificada num buffer alocado na pilha excede o limite e sobrescreve o frame pointer ou o endereço de retorno guardado, permitindo ao atacante redirecionar o fluxo para bytes controlados (shellcode ou gadgets ROP). As defesas incluem canários de pilha (StackGuard, /GS), pilhas não executáveis (DEP/NX), ASLR, shadow stacks e Intel CET, além de FORTIFY_SOURCE e funções de string mais seguras. Apesar de décadas de mitigação, stack overflows clássicos continuam a surgir em firmware, IoT e software legado, sendo tema recorrente em CVEs e CTFs.

Exemplos

  • CVE-2003-0352 (DCOM RPC): o worm Blaster explorou um stack overflow.
  • CVE-2019-0708 (BlueKeep): stack overflow no serviço de Ambiente de Trabalho Remoto.

Termos relacionados