hacktricks/binary-exploitation/heap/house-of-einherjar.md

3.9 KiB

Casa de Einherjar

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks:

Informações Básicas

Código

Objetivo

  • O objetivo é alocar memória em quase qualquer endereço específico.

Requisitos

  • Off by one sobre o cabeçalho do próximo chunk para modificar o prev em uso
  • Ser capaz de modificar os dados prev_size, que faz parte do chunk atual (no final)
  • Vazamento de heap

Ataque

  • Um chunk falso A é criado dentro de um chunk controlado pelo atacante apontando com fd e bk para o chunk original para contornar proteções
  • 2 outros chunks (B e C) são criados.
  • Abusando do off by one no B, o bit prev in use é limpo e os dados prev_size são sobrescritos com a diferença entre o local onde o chunk C é alocado e o chunk falso A gerado anteriormente.
  • Este prev_size e o tamanho do chunk falso A devem ser iguais para contornar verificações.
  • Em seguida, o Tcache é preenchido
  • Em seguida, C é liberado para que ele se consolide com o chunk falso A
  • Em seguida, um novo chunk D é criado que começará no chunk falso A e cobrirá o chunk B
  • Em seguida, B é liberado e seu fd é sobrescrito para o endereço alvo fazendo-o apontar para o endereço alvo abusando do chunk D que o contém.
  • Em seguida, são feitos 2 mallocs porque o segundo conterá o endereço alvo

Referências

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks: