CVE-2019-5786 漏洞原理分析及利用

本文深入剖析了CVE-2019-5786漏洞,该漏洞源于FileReader的Use-after-free问题。通过对谷歌补丁的分析,揭示了漏洞的成因。文章详细介绍了漏洞利用的思路,包括通过读取大文件触发多次onprogress事件,利用悬挂指针实现内存操纵。作者分享了调试Chrome浏览器的技巧,并提到了通过WebAssembly执行shellcode来实现代码执行的可能性。
摘要由CSDN通过智能技术生成

CVE-2019-5786 漏洞原理分析及利用

作者:Kerne7@知道创宇404实验室
时间:2020年6月29日
原文链接:https://paper.seebug.org/1257/

从补丁发现漏洞本质

首先根据谷歌博客收集相关CVE-2019-5786漏洞的资料:High CVE-2019-5786: Use-after-free in FileReader,得知是FileReader上的UAF漏洞。

然后查看https://github.com/chromium/chromium/commit/ba9748e78ec7e9c0d594e7edf7b2c07ea2a90449?diff=split上的补丁

对比补丁可以看到DOMArrayBuffer* result = DOMArrayBuffer::Create(raw_data_->ToArrayBuffer()),操作放到了判断finished_loading后面,返回值也从result变成了array_buffer_result_(result的拷贝)。猜测可能是这个返回值导致的问题。

分析代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D3BhuqKd-1593678610163)(https://images.seebug.org/content/images/2020/06/1c5d1e12-829f-4d3c-9195-441dcbd2bf88.png-w331s)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iz15ALNP-1593678610165)(https://images.seebu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值