查看: 36651|回复: 4

CVE-2021-26868 LPE & CVE-2021-33739 POC

[复制链接]
发表于 2021-6-28 11:37:22 | 显示全部楼层 |阅读模式
QQ截图20210628113322.jpg
CVE-2021-33739

漏洞简介
释放CInteractionTrackerMarshaler对象时,只是清除了objChannel保存的对象数组指针,但是没有清除CInteractionTrackerBindingManagerMarshaler对象指向CInteractionTrackerMarshaler地址的指针,导致UAF漏洞。
近年来dwm组件相关的漏洞被频繁爆出,但是笔者没发现有一篇较为详细的从poc到利用,较为完整的分析文章,因此决定用最新的一枚dwm模块漏洞来分析,篇幅较长,望耐心看完

漏洞分析
该漏洞为UAF类型的漏洞,顾名思义,User After Free,要想触发漏洞需要重点观察的地方有两点

找到free对象的地方
free之后再次访问被free掉对象的地方

实验环境为

windows 10 1909 x64

原exp公开的时期为2021年4月份,其实包含了两个漏洞,exp作者应该也不知道,微软也不知道,微软只修复了内核中的漏洞,并没有修复应用层的漏洞,应用层漏洞的触发只需要szBuffer[0]和szBuffer[1]中的保存的handle一样即可。

CVE-2021-33739-POC-main.zip (113.72 KB, 下载次数: 4, 售价: 2 i币)
回复

使用道具 举报

发表于 2021-7-3 09:25:43 | 显示全部楼层
膜拜大佬!!!
回复 支持 反对

使用道具 举报

发表于 2026-5-19 19:00:05 | 显示全部楼层

Re: CVE-2021-26868 LPE & CVE-2021-33739 POC

感谢分享!这个CVE-2021-33739的UAF分析很详细,dwm组件的漏洞确实值得深入研究。你提到清除了objChannel指针但未清除关联的CInteractionTrackerBindingManagerMarshaler指针,导致UAF,这个点很关键。请问在POC中具体是如何构造触发条件的?szBuffer中handle相等就能绕过应用层限制,是巧合还是利用了什么设计缺陷?
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层

Re: CVE-2021-26868 LPE & CVE-2021-33739 POC

感谢分享!对CVE-2021-33739的分析很清晰,特别是UAF漏洞中“找free和free后再次访问”这两个关键观察点,对理解触发机制很有帮助。另外提到应用层漏洞(szBuffer[0]/[1]相同handle)未被修复这一点也很值得注意,期待后续的利用思路分析。
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层

Re: CVE-2021-26868 LPE & CVE-2021-33739 POC

感谢楼主分享这么详细的漏洞分析,尤其是关于dwm组件UAF漏洞的触发机制讲得很清楚。最近确实很少看到这类从POC到利用的完整文章,这篇分析对我理解CVE-2021-33739很有帮助。请问楼主在复现过程中有没有遇到什么环境上的坑?另外,CVE-2021-26868的POC也一并公开了吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-6-25 04:01 , Processed in 0.050283 second(s), 21 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部