首页
社区
课程
招聘
[原创]2018全国大学生信息安全竞赛----PWN签到题
发表于: 2018-4-29 18:28 7111

[原创]2018全国大学生信息安全竞赛----PWN签到题

2018-4-29 18:28
7111

第一次在大赛中做出PWN题, 心情有点小激动.

0. 结构体

1.MENU

2. Add

add 一个 commodity, 输入name, price, descrip_size

3. Del

del一个commodity, 数组的指针会清零, des释放, price清零

4. list

列出所有内容,

5. Change the price(没什么用)
6. Change the description of a commodity

    漏洞在realloc, 当重新分配的new_size < pre_size, 返回原指针; new_size > pre_size释放原原指针, 重新分配内存. 但数组中的s指针并没有改成新分配的堆指针, 仍指向已释放的, 这点很重要. 此时又分配一个node, 恰好是这个已释放的堆, 那么上一个堆就可以编辑这个新分配的堆, 恐怖.

    思路: 利用realloc函数产生的释放原指针, 程序没有更新指针. 实现修改leak memory求得system真实地址,修改atoi的got表值为system, 发送/bin/sh\x00.

步骤一

步骤二: leak memory

步骤三: modify

步骤四: get shell

相关文件


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2018-4-30 18:41 被baolongshou编辑 ,原因:
收藏
免费 2
支持
分享
最新回复 (1)
雪    币: 2694
活跃值: (80)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
2
学习
2018-4-30 00:25
0
游客
登录 | 注册 方可回帖
返回
//