【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

admin 2024年7月15日12:44:42评论24 views字数 1656阅读5分31秒阅读模式

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。

博客新域名:https://gugesay.com

不想错过任何消息?设置星标↓ ↓ ↓

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

前言

就在几天前,Windows 因另一个严重漏洞而成为头条新闻!该漏洞被确定为 CVE-2024-30078,这是 Windows WiFi 驱动程序中的一个缺陷,有可能与臭名昭著的 Log4j 漏洞一样严重。

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

据微软官方披露,这是另一个潜藏在系统中多年的老问题,影响范围从 Windows 7 到最新的 Windows 10。

最关键的是,利用条件并不苛刻,黑客很容易发起攻击。

如果黑客在物理上靠近具有 WiFi 功能的 Windows 系统,他们就可以远程执行代码 (RCE)。

国外安全研究人员搜遍了网络,找不到任何进一步的详细分析,更别说PoC了。

既然找不到,那就只好自己动手,丰衣足食了!

漏洞分析

首先,根据官方提示,这是一个与 WiFi 驱动相关的漏洞。因此,在 Windows 驱动程序目录中搜索潜在的 WiFi 相关驱动程序,可以找到 — nwifi.sys。

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

分析策略很简单:针对该漏洞打补丁,然后比较补丁前后nwifi.sys文件的差异。

首先,在应用补丁之前备份文件。然后从官方网站下载并安装了特定的补丁。

更新后重启系统,重新打开drivers目录,发现nwifi.sys文件确实被更新了!

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

接下来拿出漏洞分析利器:Bindiff。

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

从上图的统计数据中可以看到修补的文件和未修补的文件之间的差异很小。大多数功能基本保持不变。只有一个函数Dot11Translate80211ToEthernetNdisPacket 出现了差异。

使用 Bindiff,进一步比较两个文件中的该函数:

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

可以看到右侧的新文件多了两个代码块,在IDA中打开该函数,可以看到新添加的检查代码:

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

上图红框中的内容在旧版本的文件中是没有的。如果检查失败,则返回0xC001000F,经过进一步查找,发现这是一个宏:NDIS_STATUS_INVALID_PACKET

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

从宏的名称推断可能是“无效数据包”。

换句话说,这个新检查会验证数据包,如果检查失败,则返回无效数据包错误代码。

那么,这里到底要检查什么?这就需要知道这个函数的两个参数指向什么数据结构。

不幸的是,研究人员无法找不到这方面的任何信息,因为这些是微软的内部代码,并不对外公开。

对于更深入的逆向分析,需要内核级动态调试来跟踪数据结构,这需要耗费相当大的精力。

推论

那么根据现有信息可以做出一些猜测。使用 IDA,研究人员绘制了该函数的调用链:

【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

该函数在收到数据包时触发,从函数名 Dot11Translate80211ToEthernetNdisPacket 中,推断它会将数据包从 802.11 格式转换为以太网格式。(802.11 是一种无线 LAN 通信标准)

一个大胆的假设:无线网卡制作了格式错误的 802.11 数据包,导致 WiFi 驱动程序错误的处理,从而导致 RCE。

如果你有兴趣,也可以深入分析这里。一旦了解了根本原因,POC 就变得可行。

尽管微软已经发布了针对此漏洞的补丁,但研究其利用仍然很有价值。

许多用户还没有更新,同样受到影响的Windows 7也不再获得微软的支持。该漏洞具有重大的研究价值,但请务必记住,切勿将其用于非法行为!!!

以上内容由骨哥翻译并整理。

原文:https://medium.com/@hunterid/cve-2024-30078-the-log4j-level-vulnerability-in-windows-wifi-driver-632de0d00c7c

加入星球,随时交流:

(前50位成员):99元/年
(前100位成员):128元/年
100位+成员):199元/年【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

感谢阅读,如果觉得还不错的话,欢迎分享给更多喜爱的朋友~

====正文结束====

原文始发于微信公众号(骨哥说事):【CVE-2024–30078】Windows WiFi 驱动程序中的 Log4j 级漏洞

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月15日12:44:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【CVE-2024-30078】Windows WiFi 驱动程序中的 Log4j 级漏洞https://cn-sec.com/archives/2955477.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息