首页
论坛
专栏
课程

支持32/64位Win7SP1的CVE-2019-0803 PoC

2019-7-30 18:52 2512

支持32/64位Win7SP1的CVE-2019-0803 PoC

2019-7-30 18:52
2512

这个漏洞在网上可以搜到一个PoC:https://github.com/ExpLife0011/CVE-2019-0803

(这个Github仓库看上去不是原作者的,是fork过来的;原作者似乎已经把这个仓库删掉了)
但是这个PoC只能在64位Win7下运行。按照资料上的描述,这个漏洞在32位系统上也存在。于是我就想试试能不能移植到32位Win7上。
本人水平太菜,一开始对这个漏洞利用是完全懵逼的。后来搜到了COMMSEC的这份PPT,懵逼程度才稍微减少一点。同时,我也参考了一些前辈大牛的分析(360分析看雪分析1看雪分析2)。

经过一番折腾,PoC已经能在32位Win7下成功提权了,但是有一个小问题:程序退出的时候,机器会直接蓝屏——原因呢,应该是SetWindowTextW替换Token进行提权的时候,EPROCESS结构体的WorkingSetPage成员被字符串尾部的0x0000覆盖破坏掉了。64位Win7也有类似的问题,但蓝屏的概率不大。
虽然这个漏洞有其他利用方式,但本人实在太菜,所以还是套用原作者利用tagWND这个方法,把WorkingSetPage原先的数值重新写进去,这样看上去就没有蓝屏问题了。

如果是其他版本的系统,应该还有一些偏移量之类的要改一下。



[挑战]看雪.纽盾 KCTF 2019晋级赛Q3攻击方进行中……,华为P30 Pro、iPad、kindle等你来拿!

最后于 2019-7-30 18:55 被cleanll编辑 ,原因:
上传的附件:
最新回复 (4)
fengyunabc 1 2019-7-31 14:06
2
0
感谢分享!
王cb 5 2019-7-31 21:23
3
0
还不错
东方二狗 2019-8-6 15:26
4
0
hBitmap[i] = CreateBitmap(16查看bitmap大小?
cleanll 2019-8-6 15:46
5
0
东方二狗 hBitmap[i] = CreateBitmap(16查看bitmap大小?
https://xz.aliyun.com/t/3146
游客
登录 | 注册 方可回帖
返回