利用废弃硬件中的零日漏洞:从 Netgear 路由器到 BitDefender 盒子的攻击链分析
利用废弃硬件中的零日漏洞
在 2025 年 2 月 DistrictCon 首届 Junkyard 竞赛中,我们成功利用了两款已停产的网络设备,荣获"最具创新性利用技术"亚军。我们的漏洞利用链证明了生命周期终止(EOL)硬件为何会构成持续安全风险:当制造商停止发布更新时,未修补的漏洞会像化石一样被永久冻结,成为攻击者的完美目标。
设备概况
我们攻击的两款设备——Netgear WGR614v9 路由器和 BitDefender Box V1——都是曾流行的家用网络保护设备。但由于多年未获更新,我们能够从本地网络实现完全远程利用。
技术分析路径
Netgear 路由器分析
我们拆卸设备后识别了调试接口、数据存储芯片和 SOC。由于 Netgear 在线提供固件,我们直接下载而非自行提取。使用 binwalk 和 unblob 递归解包固件后,我们通过端口扫描识别感兴趣的网络服务,并通过串行控制台检查运行进程、LAN 端服务、CPU 规格、内核版本和启用缓解措施。
BitDefender 盒子分析
我们发现串行端口但 shell 被锁定。通过 SPI 闪存芯片提取固件后,尝试通过逆向工程更新机制获取最新版本,但更新服务器已离线。最终通过 APK 镜像网站找到疑似最新固件(因固件包含在 APK 中)。由于设备无 shell,我们使用 QEMU 用户模式本地模拟 httpd 二进制文件进行动态测试。
Netgear 路由器 UPnP 漏洞利用
该路由器运行基于 MIPS32 的系统,我们通过板载暴露的"JP1"UART 接口在启动过程中获得低级系统访问权限。
重点分析通用即插即用(UPnP)守护进程:该服务接受 SOAP 消息(XML 格式命令)控制路由器功能,因其复杂解析需求和特权系统访问而成为主要目标。
利用链包含四个漏洞:
SOAP 消息处理程序中的认证绕过漏洞(允许密码重置)
BSS 和堆栈内存区域的三个缓冲区溢出漏洞
创新利用技术
bashsledding:经典 nopsled 技术的变体。发现两个可调用"system"的 ROP gadget 后,通过路由器域名阻止功能将 shell 命令载荷喷洒到 NVRAM(内存映射到所有进程)。通过在命令前添加空格序列(作为"nops"),无论精确着陆位置如何,bash 解释器都会无害处理空格直到执行我们的命令,形成有效 shell 语法"雪橇"而非 CPU 指令。
bigfish_littlepond:将有限内存破坏漏洞巧妙转换为更强命令注入。利用 BSS 溢出修改相邻代表 shell 命令的字符串指针,结合 upnpd 中存在的"bpa_monitor"字符串和该二进制文件中的可利用命令注入,将其改为启动 bpa_monitor 二进制文件。附加包含注入载荷的请求可实现完整代码执行。
利用过时固件攻破 BitDefender 盒子
这款 2021 年 7 月停产的网络安全设备存在讽刺性漏洞:我们发现了完全无需认证的固件更新机制。
硬件分析显示 Winbond W25Q128FV SPI NOR 闪存芯片,我们使用 SOP8 夹子和 XGecu T48 编程器提取固件。固件分析显示基于 Lua 的 Web 服务器,包含移动应用使用的多个 HTTP 端点。
利用链使用以下端点:
/update_auth_token
(具有清除阻止固件更新的配置文件的副作用)/upload_backup_firmware
(上传 Base64 编码固件镜像)/decode_image
(解码和验证固件基本结构)/check_image_and_trigger_recovery
(包含易受攻击的 md5 参数)
虽然设备使用 RSA 公钥实现固件更新签名验证,但我们发现 BitDefender 在移动应用 APK 中分发旧固件镜像。通过 VirusTotal 上的旧版 APK(v1.3.12.869),我们恢复了具有有效签名的固件 v1.3.11.490。
对比新旧固件发现 md5 参数存在基本命令注入漏洞:典型的字符串插值未过滤案例。新版固件实现了过滤分号、引号、管道和括号等字符的验证函数,但旧版本缺少此保护。
通过降级到易受攻击的固件并利用命令注入,我们将 SSH 公钥添加到设备的 authorized_keys 文件,获得对整个系统的持久访问。
安全影响与建议
这些漏洞代表了 IoT 安全中的更广泛模式:UPnP 实现缺陷不仅限于 Netgear 路由器,可能影响其他制造商和设备;固件降级漏洞凸显了所谓安全更新机制经常缺乏关键保护(如降级预防)。
建议:
检查智能设备是否 EOL 并谨慎使用
购买新设备前研究制造商支持时间表
寻求开源替代方案
对研究人员而言,EOL 设备既代表宝贵学习机会,也是网络中潜在安全盲点。Junkyard 竞赛比 Pwn2Own 等高风险竞赛更易参与,是研究人员提升技能的良好平台。
目标选择技巧
选择合适 EOL 设备需满足:
制造商已停止支持
设备足够便宜可购买多个副本(备用设备很重要,因为可能遇到不同固件版本、二手设备状态差异,或因拆解或意外变砖需要替换)
优先选择可能包含有趣漏洞且无需数月逆向工程的设备。调试接口非必需但能极大简化分析。关键是获取固件的方式:有些制造商公开提供固件下载,有些需从设备提取。SPI 芯片更易处理,而从 eMMC 提取固件需要专用工具。
购买前应在线研究:检查制造商网站的固件下载、现有安全研究资料,以及查阅 FCC 文件了解设备内部结构。
完整利用代码和技术文档详见 GitHub 仓库,操作视频可在 YouTube 查看更多精彩内容 请关注我的个人公众号 公众号(办公 AI 智能小助手)公众号二维码

评论