hacktricks/binary-exploitation/libc-heap/house-of-lore.md

4.8 KiB

House of Lore | Attacco Small bin

{% hint style="success" %} Impara e pratica l'Hacking su AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking su GCP: HackTricks Training GCP Red Team Expert (GRTE)

Sostieni HackTricks
{% endhint %}

Informazioni di Base

Codice

Obiettivo

  • Inserire un falso small chunk nel small bin in modo da poterlo allocare.
    Nota che il piccolo chunk aggiunto è quello falso creato dall'attaccante e non uno falso in una posizione arbitraria.

Requisiti

  • Creare 2 chunk falsi e collegarli insieme e con il chunk legittimo nel small bin:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (è necessario modificare un puntatore nel chunk del small bin liberato tramite qualche altra vulnerabilità)
  • legit.bk -> fake0

In questo modo sarà possibile allocare fake0.

Attacco

  • Viene allocato un piccolo chunk (legit), quindi un altro viene allocato per evitare la consolidazione con il top chunk. Successivamente, legit viene liberato (spostandolo nell'elenco dei chunk non ordinati) e viene allocato un chunk più grande, spostando legit nel small bin.
  • Un attaccante genera un paio di falsi small chunks e crea i collegamenti necessari per aggirare i controlli di integrità:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (è necessario modificare un puntatore nel chunk del small bin liberato tramite qualche altra vulnerabilità)
  • legit.bk -> fake0
  • Viene allocato un piccolo chunk per ottenere legit, facendo diventare fake0 il primo della lista dei piccoli bin
  • Viene allocato un altro piccolo chunk, ottenendo fake0 come chunk, consentendo potenzialmente di leggere/scrivere puntatori al suo interno.

Riferimenti

{% hint style="success" %} Impara e pratica l'Hacking su AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking su GCP: HackTricks Training GCP Red Team Expert (GRTE)

Sostieni HackTricks
{% endhint %}