首页
社区
课程
招聘
[原创]题目:qemu逃逸
发表于: 2019-11-29 00:35 14533

[原创]题目:qemu逃逸

2019-11-29 00:35
14533

设计思路:

1.去除默认网卡设备 e1000模拟上的一行长度校验,修改size从uint_16为uint_32。可造成对网卡对象0x100的越界写。
2.修改网卡对象的size并调用e1000_receive.通过pci_dma_write实现任意长度的地址泄露。
3.泄露出elf_base及网卡对象地址。
4.再次进行越界写,覆盖网卡对象的mit_timer位置为伪造timer.
5.在网卡对象data位置提前构造伪造的timer对象及timer_list对象,实现调用system(cat flag);
考察部分:

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

最后于 2019-12-21 12:00 被kanxue编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 6839
活跃值: (3719)
能力值: ( LV13,RANK:1664 )
在线值:
发帖
回帖
粉丝
2
请教一下怎么样 去除默认网卡设备 e1000模拟上的一行长度校验?
是否有什么工具?
2019-12-22 23:08
0
雪    币: 3671
活跃值: (636)
能力值: ( LV15,RANK:379 )
在线值:
发帖
回帖
粉丝
3
xym 请教一下怎么样 去除默认网卡设备 e1000模拟上的一行长度校验? 是否有什么工具?
patch掉那一行,重新编译的
2019-12-23 10:07
0
雪    币: 6839
活跃值: (3719)
能力值: ( LV13,RANK:1664 )
在线值:
发帖
回帖
粉丝
4
修改网卡对象的size是怎么实现的?
直接编译exp.c运行不能触发漏洞,是否还需要其他操作?
2019-12-28 17:33
0
雪    币: 3567
活跃值: (467)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
5
2019-12-28 18:52
0
游客
登录 | 注册 方可回帖
返回
//