ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

寒假训练 houseoforange_hitcon_2016(7/250)

2021-01-19 03:32:43  阅读:591  来源: 互联网

标签:bin unsorted IO chunk list hitcon houseoforange heap 250


非常有意思的一道题,但这是我第一次写fsop的题,所以几乎都是看wp写的,看的是L.o.W师傅的wp,其次要感谢的文章还有unsorted bin的文章,还有raycp师傅的函数分析,才让我简单的了解了fsop

流程分析

add函数,没什么特别的

 

 edit函数,可以造成堆溢出

 

 show函数

 

 思路

  1. 由于没有free函数,所以得通过house of orange,来达到leak libc的任务,首先申请一个chunk,由于edit函数具有heap溢出,所以可以修改top chunk的值,然后在申请一个比top chunk大的chunk,就可以把剩下的chunk放入unsorted bin中
  2. 在然后申请一个large bin,然后由于chunk没有被初始化,所以此时的fd bk是指向main_arena+0x88的,而fd_nextsize和bk_nextsize指向的是heap地址,所以我们可以leak heap和libc
  3. leak完heap和libc后,我们在通过edit heap溢出,来将unsorted bin中的bin变为small bin,这样unsorted bin会进入small bin中,我们再控制bk指针,指向我们的_IO_list_all指针,这样我们申请的chunk就会指向我们的_IO_list_all,并且_IO_list_all会指向main_arena里面的unsorted bin,这样就劫持了_IO_list_all即可getshell

过几天在来复现一遍写wp

标签:bin,unsorted,IO,chunk,list,hitcon,houseoforange,heap,250
来源: https://www.cnblogs.com/pppyyyzzz/p/14296058.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有