📢 #Gate观点任务# 第一期精彩启程!调研 Palio (PAL) 项目,在Gate广场发布您的看法观点,瓜分 $300 PAL!
💰️ 选取15名优质发帖用户,每人轻松赢取 $20 PAL!
👉 参与方式:
1. 调研$PAL项目,发表你对项目的见解。
2. 带上$PAL交易链接。
3. 推广$PAL生态周系列活动:
为庆祝PAL上线Gate交易,平台特推出HODLer Airdrop、CandyDrop、VIP Airdrop、Alpha及余币宝等多项PAL专属活动,回馈广大用户。请在帖文中积极宣传本次系列活动,详情:https://www.gate.com/announcements/article/45976
建议项目调研的主题:
🔹 Palio 是什么?
🔹 $PAL 代币经济模型如何运作?
🔹 如何参与 $PAL生态周系列活动?
您可以选择以上一个或多个方向发表看法,也可以跳出框架,分享主题以外的独到见解。
注意:帖子不得包含除 #Gate观点任务# 和 #PAL# 之外的其他标签,并确保你的帖子至少有 60 字,并获得至少 3 个点赞,否则将无法获得奖励。
⚠️ 重复内容的帖子将不会被选取,请分享属于你独特的观点。
⏰ 活动时间:截止至 2025年7月11日 24:00(UTC+8)
Windows 0day漏洞威胁Web3安全 私钥窃取风险上升
微软Windows系统0day漏洞分析:可能对Web3生态造成重大影响
上个月微软安全补丁中包含一个在野利用的win32k提权漏洞。该漏洞似乎不能在Windows 11系统版本上触发,仅存在于早期系统。本文将分析在当前新缓解措施不断改善的背景下,攻击者可能如何继续利用这个漏洞。分析过程在Windows Server 2016环境下完成。
0day漏洞是指未被披露和修补的漏洞,可被攻击者在未被察觉的情况下恶意利用,往往具备极大的破坏性。本次发现的0day漏洞存在于Windows系统层面,黑客可通过该漏洞获取Windows的完全控制权。这可能导致个人信息窃取、系统崩溃数据丢失、财务损失、恶意软件植入等后果。从Web3角度来看,用户的私钥可能被窃取,数字资产被转移。更大范围内,这个漏洞甚至可能影响基于Web2基础设施运行的整个Web3生态。
分析补丁发现,问题出在一个对象的引用计数被多处理了一次。通过早期源码注释可以看出,以前的代码只是锁定了窗口对象,没有锁定窗口对象中的菜单对象,这里菜单对象可能被错误引用。
为验证漏洞,我们实现了一个概念验证(PoC)。通过构造特殊的多层嵌套菜单,可以在xxxEnableMenuItem函数中触发漏洞。关键是要在合适的时机删除菜单C和菜单B的引用关系,成功释放菜单C对象。这样在xxxEnableMenuItem函数返回时,即将引用的菜单C对象已经无效。
在实现漏洞利用(Exp)时,我们主要考虑了两种方案:执行shellcode代码和利用读写原语修改token地址。最终选择了后者,因为这种方法在最近两年仍有公开的exp可参考。整个利用过程分为两步:首先利用UAF漏洞控制cbwndextra的值,然后建立稳定的读写原语。
通过精心设计内存布局,我们可以实现对目标对象的精确控制。利用GetMenuBarInfo()和SetClassLongPtr()函数分别实现任意读和任意写原语。除了替换TOKEN的写入操作依赖第二个窗口的class对象外,其他写入都利用第一个窗口对象的class对象使用偏移来写入。
总的来说,虽然win32k漏洞由来已久,但微软正在尝试使用Rust重构该部分内核代码,未来新系统中可能会杜绝此类漏洞。目前这类漏洞的利用过程基本不太困难,主要依赖桌面堆句柄地址的泄露。对于老旧系统来说,这仍然是一个不安全的隐患。
从漏洞发现的角度看,更完善的代码覆盖率检测可能有助于发现此类漏洞。对于漏洞利用检测而言,除了关注漏洞触发函数的关键点,还应该对内存布局异常和窗口类额外数据的异常偏移读写进行针对性检测,这可能是发现同类型漏洞的有效途径之一。