长城杯pwn1

题目存在off by one 以及UAF漏洞

我们可以利用爆破

低字节修改到malloc-0x23

以及改变fastbin堆的fd指向unsortedbin堆

这样就能在下次申请的时候把这个unsortedbin拉进fastbin

我们只要改这个unsortedbin的fd指针就可以生效了,低字节修改到malloc-0x23。

再去利用off by one修改unsortedbin的大小为fastbin的大小

连续申请两次就可以在heaparry上得到libc的指针

接着再去把unsortedbin的fd改为0,bk改为__memalign_hook(在malloc-0x10上)

再去利用off by one 把unsortedbin大小复原

申请和unsortedbin大小一样的chunk去复原不然无法通过检测

最后利用onegadget打malloc_hook

利用

1
2
# malloc不符合onegadget触发条件
# malloc_printerr触发malloc_hook

最后double的时候即可触发啦

不进来看看咩(╥╯^╰╥)
  • Copyrights © 2021-2023 H.greed
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信