-
-
[原创][原创]CVE-2021-31956 Ntfs.sys 在野漏洞简析
-
发表于:
2021-8-2 11:45
22710
-
[原创][原创]CVE-2021-31956 Ntfs.sys 在野漏洞简析
CVE-2021-31956 Ntfs.sys 在野漏洞简析
前言
2021年6月份,卡巴斯基捕获在野0day chrome full chain 利用链,其组织为PuzzleMaker[1],该利用链使用了Chrome 1day CVE-2021-21220/CVE-2021-21224 V8 RCE 漏洞实现远程代码执行,并串联了内核信息泄露漏洞CVE-2021-31955,Ntfs.sys 内核提权漏洞CVE-2021-31956 来实现沙盒逃逸。
CVE-2021-31956 为整数下溢漏洞,可导致内核池溢出,可从低完整度提升到system 权限
分析
漏洞发生在ntfs.sys 中NtfsQueryEaUserEaList 函数
通过构造不同的EA query,其中PreEaPadding 长度可以为0,1,2,3
而在使用API NtQueryEaFile时,可以通过控制buffer 长度,在合理设置的情况下进一步使UserBufferLength 为0
为此当UserBufferLength - PrevEaPadding 出现 0 - 1/2/3 的情况时,eax 会为0xffffffff/...
于是突破了“if ( RawEaSize <= UserBufferLength - PrevEaPadding )” 的限制,“memmove(NextFullEa, ThisEa, RawEaSize)” 中NextFullEa 为于内核分页池中,将发生池溢出的情况。
利用
该漏洞利用较为简单,我们可以控制溢出的数据和大小,直接使用SegmentHeap aligned chunk confusion 来构造任意读,之后通过fake eprocess 来构造任意减,从而修改privileges,进一步获取SeDebugPrivileges 权限,通过远程线程注入winlogon 来弹出cmd.
以下视频为21h1 系统上利用
<video id="video" control="" preload="none" poster="">
<source id="mp4" src="1.mp4" type="video/mp4">
</video>
不知道传exp 合法不
链接
- https://securelist.com/puzzlemaker-chrome-zero-day-exploit-chain/102771/
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
最后于 2021-8-2 11:48
被lifeandi编辑
,原因: 图片显示