首页
社区
课程
招聘
2
[原创]看雪.京东 2018CTF 第十一题 PWN-3pigs
发表于: 2018-7-7 18:59 3157

[原创]看雪.京东 2018CTF 第十一题 PWN-3pigs

2018-7-7 18:59
3157

拿到题目,看名字就觉得似曾相识,一看程序发现果然是HITB原题……有点失望,都不太想写writeup,不过既然写了就多啰嗦一下吧。

当然仔细一看不是原题,简化了原来的一些操作,并限制了泄漏次数。

保护全开的堆考题,有三个0xd0大小的chunk可以分配和释放。在分配逻辑处存在明显的溢出,可以多写16个字节。

图片描述

这样可以随意修改top的大小。readn本身的off by one都显得多余了。

另外还有一个秘密chunk,大小为0x80,输入对应密文即可分配。

图片描述

注意编辑这个秘密chunk的逻辑,可以直接修改下一个chunk的fd和bk。

图片描述

回头再看添加chunk逻辑,发现有个strncpy长度为8的字符串,这样就可以不用被NULL截断了,走这个chunk即可泄漏libc。原题还可以泄漏堆,这里被次数限制了,如下图,当然其实不用泄漏堆。

图片描述

那么思路就很明确了,先走正常chunk的溢出修改top的大小,触发sysmalloc中的_int_free从而搞出0x60的fastbin,用consolidae把他送入unsorted bin,然后随便分配就可以送它上smallbin。

在这个smallbin上事先伪造好file结构体。然后通过秘密chunk攻击unsorted bin,拿到shell。

总体来说是非常简单明了的House of Orange考题……不过出简化的原题实在是没有诚意啊。

完整利用如下:


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2018-7-7 19:00 被diycode编辑 ,原因:
收藏
免费 2
支持
分享
赞赏记录
参与人
雪币
留言
时间
PLEBFE
为你点赞~
2022-7-27 01:59
心游尘世外
为你点赞~
2022-7-27 00:02
最新回复 (0)
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册