house of apple2和house of cat的利用总结

前言

最近感觉apple2和cat有些利用条件搞混了,就想出一篇博客总结一下。

house of apple2

调用链:

exit -->> __run_exit_handlers -->> _IO_cleanup -->> _IO_flush_all_lockp 
-->> _IO_wfile_overflow -->> _IO_wdoallocbuf -->> _IO_WDOALLOCATE
-->> *(fp->_wide_data->_wide_vtable + 0x68)(fp)/
     *(fp->_wide_data->_wide_vtable->_doallocate)(fp)

绕过检查: 

  • f->flags!=0x8  &&  f->flags!=0x800 && f->flags!=0x2
  • fp->_mode <= 0 && fp->_IO_write_ptr > fp->_IO_write_base(这个一般不用考虑,只要你用largbinattack将堆块地址写到全局变量里面,一般就会满足,满足不了看下一个条件)
  • fp->_mode > 0 && (fp->_wide_data->_IO_write_ptr> fp->_wide_data->_IO_write_base)

  • vtable设置为_IO_wfile_jumps使其能成功调用_IO_wfile_overflow即可
  • _wide_data设置为可控堆地址hea
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值