TP-Link 漏洞: 针对 CVE-2024-54887 的 PoC 漏洞利用揭示了远程代码执行风险

阅读量8082

发布时间 : 2025-01-21 11:35:05

x
译文声明

本文是翻译文章,文章原作者 do son,文章来源:securityonline

原文地址:https://securityonline.info/tp-link-vulnerability-poc-exploit-for-cve-2024-54887-reveals-remote-code-execution-risks/

译文仅供参考,具体内容表达以及含义原文为准。

CVE-2024-54887 PoC exploit

安全研究员Joward发布了针对影响TP-Link TL-WR940N路由器的关键漏洞(追踪为CVE-2024-54887)的深入分析和概念验证(PoC)漏洞。 该漏洞是在设备处理 IPv6 DNS 服务器配置参数时发现的缓冲区溢出漏洞,可能允许攻击者执行任意代码或引发拒绝服务攻击。

Joward 的研究发现,路由器 Web 界面中的两个参数–dnsserver1 和 dnsserver2–在将字符串长度复制到内存之前未能进行验证。 Joward 解释说:“经初步观察,我们似乎发现了一个堆栈缓冲区溢出漏洞。” 这个问题影响到运行最新固件的 TL-WR940N 路由器的硬件版本 3 和 4,并已在后续硬件迭代中得到缓解。

对该设备固件的静态分析发现了几个关键缺陷,包括缺乏 NX 和 PIE 保护等现代缓解措施。 这些缺陷大大方便了研究人员和潜在的攻击者利用漏洞。

来源:Joward

PoC 演示了一种利用漏洞的复杂方法,利用面向返回编程 (ROP) 技术实现远程代码执行。 从识别不安全的函数调用到构建功能性漏洞利用,Joward 细致地详述了整个过程:

  • 静态和动态分析: 分析从使用 Firmadyne 和 Ghidra 等工具解包和仿真路由器固件开始。 Joward 指出:“dnsserver1 和 dnsserver2 参数允许用户选择路由器默认使用的 IPv6 DNS 服务器,而这两个参数在复制到内存之前似乎都没有进行长度检查。”
  • ROP 漏洞开发: 一系列精心制作的小工具为 shellcode 的执行提供了便利。 “为 MIPS Linux 编写 ROP 漏洞利用程序有一些 x86 漏洞利用程序所没有的独特考虑因素,它不像硬编码跳转到堆栈上的某个位置那么简单。 这些问题主要有:高速缓存不连贯和延迟指令。” Joward 解释说。
  • 自定义外壳代码: 为了简单起见,该漏洞利用了绑定外壳,允许他人复制攻击,而无需修改 IP 地址。 这种 shellcode 可以完全控制被攻击的设备。

CVE-2024-54887 给依赖过时硬件的用户带来了严重风险。 由于受影响的设备没有实施地址空间布局随机化(ASLR),该漏洞可以可靠地实现远程代码执行。 Joward 强调了该漏洞的严重性: “我们不仅可以让程序崩溃,还可能控制执行流程。”

不幸的是,TL-WR940N 的硬件版本 3 和 4 已达到生命周期末期支持,不再接受安全更新。 TP-Link 在披露过程中确认了这一点,并鼓励用户升级到更新的设备,以确保持续的保护。

有兴趣了解技术细节的用户,可在 GitHub 上查看 PoC 和其他资源。

本文翻译自securityonline 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66