Overwriting a freed chunk
Last updated
Last updated
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
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 potenciais vulnerabilidades que poderiam conceder esse acesso:
Se for possível para o atacante escrever informações em um chunk liberado, eles poderiam abusar disso para sobrescrever os ponteiros necessários.
Se o atacante puder liberar
duas vezes o mesmo chunk (liberando outros chunks entre potencialmente) e fazê-lo estar 2 vezes no mesmo bin, seria possível para o usuário alocar o chunk mais tarde, 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...)
Pode ser possível transbordar um chunk alocado tendo ao lado um chunk liberado e modificar alguns cabeçalhos/ponteiros dele.
Neste caso, seria possível modificar o tamanho do chunk seguinte na memória. Um atacante poderia abusar disso para fazer um chunk alocado ter um tamanho maior, então liberá-lo
, fazendo com que o chunk fosse 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 que é maior do que realmente é, concedendo assim uma situação de chunks sobrepostos, que é explorável da mesma forma que um overflow de heap (ver seção anterior).
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)