Zyxel CPE/ONT/LTE/5G 固件中的超级管理员凭据泄露分析,附带适配的 VMG8825-B50B genpass 实验环境。
本仓库包含 CVE-2021-35036 的公开分析文章与实验文件。该问题针对 Zyxel VMG3625-T50B 固件报告,核心在于 DAL getter 路径将更高权限的本地账户及远程管理凭据返回给了低权限的已认证会话。

该分析将问题从最初的 VMG3625-T50B 报告延伸到更广泛的 Zyxel 管理栈:经过认证的低权限用户可以访问 DAL 处理器,这些处理器会返回管理员级本地账户以及 TR-069、FTPS 等管理服务的原始密钥。
Boginw 的公开 zyxel-vmg8825-keygen 项目为文章的 Genpass 章节提供了有用的背景。它表明受影响 Zyxel 平台上的密码材料嵌入在可复用的厂商逻辑中,可从设备身份输入推导出 supervisor 和管理员凭据。这一背景有助于解释为何 DAL 泄露在操作层面十分严重:一旦共享的后端对象被过度暴露,固件栈中的其他组件本就能够加载、转换并重新生成敏感的凭据材料。
仓库还包含分析期间使用的适配版 VMG8825-B50B 工具包,位于 zyxel-vmg8825-b50b-keygen-lab/ 中。受跟踪的 adapted-runtime/opt/genpass/genpass 包装器提取自模拟的 B50B 文件系统,它接受第五位为 V、Y 或 H 的序列号格式,然后分派给厂商的密码生成二进制程序。
在此打开在线生成器:
上方的预览可点击,会打开捆绑了 Method2 和 Method3 路径的精确浏览器端 supervisor 生成器。GitHub 会从仓库 README 中剥离 JavaScript,因此交互式版本必须从链接的页面打开,而不是在 README.md 中内联执行。
适配版实验工具包的用法示例:
.\zyxel-vmg8825-b50b-keygen-lab\run-qemu.bat
然后,在模拟的 shell 中:
genpass S182V12345678
预期输出包含由所提供序列号推导出的 supervisor、admin 和 Wi-Fi 密码族。较大的 rootfs.ext2 磁盘映像未被跟踪,因为其体积过大,无法正常推送到 GitHub;仓库则携带适配的运行时文件和启动脚本,使该 B50B 专用版本区别于原始上游项目。
包含 keygen 材料是因为它是具体的固件证据:凭据处理实现于可复用的厂商库和包装器中,而不仅仅在某个 Web 面板中。
可发布的站点文件:
index.html:主文章assets/site.css:页面样式assets/properhero.jpg:文章主图及社交预览图片assets/readme-genpass-demo.gif:精确 supervisor 生成器的 README 动态预览assets/favicon.svg:favicon 源文件disclosure-proof-images/page-04-img-01.png:文章中使用的内嵌披露证明图片zyxel-vmg8825-b50b-keygen-lab/:适配版 VMG8825-B50B keygen 工具包,包含分析期间提取的 genpass 运行时本地研究产物、固件树、模拟器资源、PDF、截图及其他研究文件均通过 .gitignore 从仓库中排除,以保持 Pages 分支整洁。
文章中重点提及的外部参考资料包括:
zyxel-vmg8825-keygen 项目,用于 VMG8825 密码生成背景