首页
社区
课程
招聘
[原创]linux pwn防守篇题目投稿(malloc_consolidate+unlink+rop)
发表于: 2017-5-30 20:53 4978

[原创]linux pwn防守篇题目投稿(malloc_consolidate+unlink+rop)

2017-5-30 20:53
4978

考点:

malloc_consolidate+unlink+rop

运行环境:

1. amd64(作者本地测试为kali,远程测试环境为ubuntu16.04),无libc要求,已经上传远程测试libc

2. 开启aslr

编译方式:gcc -no-pie main.c -o main ; strip main

题目说明:

1. 题目可以给出bin与libc供下载,也可以仅给出bin文件,通过查找libc-db的方式找到对应libc版本号(作为一只pwn狗,建议给出libc,省去大家查libc的浪费的生命。。QAQ都是血泪史)


设计思路:

1. 首先给用户输入姓名,此时以malloc一个chunk的方式存储用户的输入

2. 给了4个功能,create、delete、edit、show,其中show功能无效

3. create函数可以申请一个小于4096字节的chunk,并往里面写入数据,然后置flag位为1,同时用一个全局变量number来记录已申请的chunk个数,number不得大于4.

4. delete函数可以free一个指针并置flag位为0,但是不检查是否已经free这个指针

5. edit检查flag位,只能修改已经flag为1的chunk

6. 数据结构如下


漏洞点:

1. uaf,在dele一个指针后没有清零,可以再次free这个freed的指针

2. 漏洞什么的。。应该没了吧。。


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

上传的附件:
收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 261
活跃值: (55)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2

大大,设计说明我要不要再写点,写完后感觉好像要再详细点。。。?

2017-5-30 20:54
0
雪    币: 14462
活跃值: (3935)
能力值: (RANK:520 )
在线值:
发帖
回帖
粉丝
3
尽量详细点吧
2017-5-30 21:39
0
雪    币: 261
活跃值: (55)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
4
嗯嗯
2017-5-30 23:09
0
雪    币: 261
活跃值: (55)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
5
netwind 尽量详细点吧
更新详细说明。
2017-5-31 12:50
0
雪    币: 208
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
6
请教使用你的exp失败,提示错误
Traceback  (most  recent  call  last):
    File  "exp.py",  line  90,  in  <module>
        pwn(p)
    File  "exp.py",  line  75,  in  pwn
        edit(4,  p64(0x1)  +  p64(got_free)  +  p64(0x1)  +  p64(got_fflush))
    File  "exp.py",  line  43,  in  edit
        p.recvuntil('$')
系统版本:Linux  kali  4.12.0-kali1-amd64  #1  SMP  Debian  4.12.6-1kali6  (2017-08-30)  x86_64  GNU/Linux

2017-11-11 20:37
0
游客
登录 | 注册 方可回帖
返回