House of Einherjar

Reading time: 3 minutes

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

Informazioni di base

Codice

Obiettivo

  • L'obiettivo è allocare memoria in quasi qualsiasi indirizzo specifico.

Requisiti

  • Creare un chunk falso quando vogliamo allocare un chunk:
  • Impostare i puntatori per puntare a se stessi per bypassare i controlli di sanità
  • Overflow di un byte con un byte nullo da un chunk al successivo per modificare il flag PREV_INUSE.
  • Indicare nel prev_size del chunk abusato off-by-null la differenza tra se stesso e il chunk falso
  • La dimensione del chunk falso deve essere stata impostata alla stessa dimensione per bypassare i controlli di sanità
  • Per costruire questi chunk, avrai bisogno di un heap leak.

Attacco

  • Un chunk A è creato all'interno di un chunk controllato dall'attaccante che punta con fd e bk al chunk originale per bypassare le protezioni
  • Altri 2 chunk (B e C) sono allocati
  • Abusando l'off by one nel chunk B, il bit prev in use viene ripulito e i dati prev_size vengono sovrascritti con la differenza tra il posto in cui il chunk C è allocato e il chunk falso A generato prima
  • Questo prev_size e la dimensione nel chunk falso A devono essere gli stessi per bypassare i controlli.
  • Poi, il tcache viene riempito
  • Poi, C viene liberato in modo che si consolidi con il chunk falso A
  • Poi, un nuovo chunk D viene creato che inizierà nel chunk falso A e coprirà il chunk B
  • La casa di Einherjar finisce qui
  • Questo può essere continuato con un attacco fast bin o avvelenamento Tcache:
  • Libera B per aggiungerlo al fast bin / Tcache
  • fd di B viene sovrascritto facendolo puntare all'indirizzo target abusando del chunk D (poiché contiene B all'interno)
  • Poi, vengono eseguite 2 malloc e il secondo andrà a allocare l'indirizzo target

Riferimenti e altri esempi

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks