2.6 KiB
Sobrescrevendo um chunk liberado
Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!
Outras maneiras de apoiar o HackTricks:
- Se você quiser ver sua empresa anunciada no HackTricks ou baixar o HackTricks em PDF Confira os PLANOS DE ASSINATURA!
- Obtenha o swag oficial PEASS & HackTricks
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe seus truques de hacking enviando PRs para os HackTricks e HackTricks Cloud repositórios do github.
Várias das técnicas de exploração de heap propostas precisam ser capazes de sobrescrever ponteiros dentro de chunks liberados. O objetivo desta página é resumir as vulnerabilidades potenciais que poderiam conceder esse acesso:
Uso Simples Após Liberação
Se for possível para o atacante escrever informações em um chunk liberado, ele poderia abusar disso para sobrescrever os ponteiros necessários.
Dupla Liberação
Se o atacante puder liberar
duas vezes o mesmo chunk (liberar outros chunks entre eles potencialmente) e fazer com que ele esteja 2 vezes no mesmo bin, seria possível para o usuário alocar o chunk posteriormente, escrever os ponteiros necessários e então alocá-lo novamente acionando as ações do chunk sendo alocado (por exemplo, ataque de fast bin, ataque de tcache...)
Estouro de Heap
Pode ser possível estourar um chunk alocado tendo em seguida um chunk liberado e modificar alguns cabeçalhos/ponteiros dele.
Estouro por 1
Neste caso, seria possível modificar o tamanho do chunk seguinte na memória. Um atacante poderia abusar disso para fazer com que um chunk alocado tenha um tamanho maior, então liberá-lo
, fazendo com que o chunk seja adicionado a um bin de um tamanho diferente (maior), então alocar o tamanho falso, e o ataque terá acesso a um chunk com um tamanho maior do que realmente é, concedendo assim um estouro de heap (verifique a seção anterior).