搜索你想找的开源项目

输入名称、用途或关键词,也可粘贴 GitHub 仓库链接

分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

stevejiang0509/ex3301-t0-root-ssh-research

安全

记录单台 Zyxel EX3301-T0 上 CVE-2026-6952 的认证后注入与 root SSH 验证,附离线字符串演示。

242
0
JavaScript
MIT
创建于 5 天前

项目介绍

这个仓库记录了一台 Zyxel EX3301-T0 路由器的所有者授权研究。设备起初运行 Hyperoptic V5.50(ABVY.4.1)Y1,之后升级到官方 Zyxel V5.50(ABVY.7.2)C0,再用来验证认证后的 LogServer 到 syslog-ng 配置注入。测试的固件落在 CVE-2026-6952 的影响范围内;Zyxel 的公告将该问题描述为 syslog LogServer 字段的认证后命令注入(公告)。

问题不在 SSH 协议或 Dropbear 认证。已认证的 Web 管理员提交的 LogServer 值会跳出 syslog-ng 的目的地字符串,并加入 program() 源和 log 路由,从而以 root 身份执行。项目随后修改了运行时 admin 的 UID/GID 和登录 shell,使新的 SSH 会话返回 uid=0。静态调用链和实际观察见技术分析。

快速使用

这个项目主要以文档形式阅读。先看时间线了解从初始访问到 root 验证的过程,再看技术分析理解注入路径,最后用证据与限制核对脱敏证据台账。如果想检查字符串展开逻辑,可以用 Node.js 20 或更高版本运行本地演示,无需安装依赖:

npm test
npm run demo

测试和演示只在本地内存中展开观察到的 syslog-ng 格式字符串,不会登录、建立网络连接、写路由器设置,也不证明其他固件存在漏洞。

使用约束

root 结果只覆盖一台 C0 固件的 EX3301-T0,且仅验证当前启动周期,没有证明重启后仍保留 root 访问。Zyxel 将 5.50(ABVY.8)C0 及更早版本列为受影响,补丁为 5.50(ABVY.8.1)C0,其型号表覆盖 42 个型号,包括 DSL/以太网 CPE、光纤 ONT 和无线扩展器。配套的型号范围仓库把厂商广泛型号表与本次单设备验证分开维护。ISP 定制型号不在 Zyxel 的型号表内,设备历史中的 Hyperoptic Y1 构建也没有单独测试该问题。Zyxel 要求 ISP 客户向运营商获取合适固件,因此补丁列表不等于在定制设备上安装 8.1C0 就安全。

固件检查部分同样有明确边界:zycli modelcheck off 和 fwidcheck off 是运行时检查,C0 重启后的状态没有确认。它们不是通用的未签名镜像或 RSA 签名绕过;保留的回读见固件检查命令。仓库内容已脱敏,不包含密码、会话令牌、密钥、序列号、MAC 地址、配置备份或固件镜像。许可证为 MIT。

HotRepo 点评

该仓库没有 GitHub 全部语言日榜记录。Star 采样从 2026 年 11 月 12 日的约 101 增至 11 月 14 日的 242;新项目快照显示,截至 2026 年 11 月 14 日约 24 小时窗口内新增 77 Star。对于一份单设备路由器案例研究,这已经是不小的关注,但证据范围刻意收得很窄:一台硬件、一个 C0 构建、仅验证当前启动周期,以及离线字符串演示而不是漏洞利用工具。读者应把它当作有记录的案例研究和指向 Zyxel 公告范围的入口,而不是受影响型号的通用 root 方法。

本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。