(9.1分)CVE-2026-94098:Netcore路由器固件升级接口命令注入"

admin 2026-10-16 11:23:53 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

(9.1分)CVE-2026-94098:Netcore 路由器固件升级接口命令注入

红队安全圈
红队安全圈

红队安全圈

2026年9月21日 20:00
重庆

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

Netcore NBR200V2 企业路由器固件升级接口命令注入,评分 9.1,利用代码已公开,且注入点在固件校验逻辑之前——黑名单过滤漏了换行符这一个字符。

01  漏洞速览

漏洞编号CVE-2026-94098

关联漏洞CVE-2026-94099

影响产品Netcore NBR200V2

固件版本V1.3.241127.071246

漏洞类型OS 命令注入

危害等级9.1(Critical)

利用状态PoC 已公开

02  漏洞成因

出问题的点在固件的 /www/cgi-bin/upgrade 脚本(CVE-2026-94099 则是 restore.cgi,原理一样)。这类嵌入式设备的 CGI 通常就是 shell 脚本,脚本第一步先把攻击者可控的 QUERY\_STRING 做 URL 解码:

QUERY\_STRING=`urldecode \

\"$QUERY\_STRING\"`

解码函数并不是简单的 urldecode,它先删掉一批 shell 元字符,再把 %xx 序列通过 printf 转成实际字符:

str=${str//[\"'\`|\<\>@

?\*!();,.\$\^]/}

黑名单过滤一批元字符

str=${str//%/\\x}

str=printf \"$str\"

注意这个黑名单:引号、反引号、管道、分号、括号、美元符全删了,看起来防得很全。但换行符 %0A 不在黑名单里,解码后会变成字面意义上的换行。而 shell 里换行就是命令分隔符。

解码后的字符串随后按 key=val 拆分,直接丢进 eval:

while [ true ]; do

param=${QUERY\_STRING%%&\*}

QUERY\_STRING=

${QUERY\_STRING#\*&}

val=${param#\*=}

key=${param%=\*}

eval \"${key}='${val}'\"

done

eval 拿到的 key 里如果带换行,就会被当成多行 shell 程序执行。开发者做了字符过滤,但恰恰漏了最致命的那个字符——整个漏洞的根因就在这。

另一个关键点:注入发生在升级文件校验之前,后面那套依赖权限的校验逻辑根本轮不到执行。所以攻击不需要任何会话或认证前提。

03  影响范围

受影响:Netcore NBR200V2,固件 V1.3.241127.071246(其他版本未确认,建议一律按受影响处理)。

已修复:厂商在披露前被提前告知,至今没有任何回应,没有补丁,没有修复版本。

04  利用分析

PoC 已经公开,原理验证非常直接。以触发设备重启为例:

POST /cgi-bin/upgrade

?reboot%0Afoo=bar HTTP/1.1

Host:

解码后 key 变成两行:

reboot

foo

eval 执行第一行 reboot,设备直接重启。把 reboot 换成任意命令就是完整 RCE——wget 拉脚本、busybox 反弹 shell,取决于设备上有什么工具。

restore.cgi 的 CVE-2026-94099 评分更高(9.9,PR:L),利用链同理:QUERY\_STRING 注入换行符,eval 执行多行命令。

05  检测与排查

确认设备型号和固件版本:登录管理界面查看,或探测 /cgi-bin/upgrade 是否存在。NBR200V2 且固件为 V1.3.241127.071246 即受影响。也可以发一个无害探测请求看设备是否重启(注意这会造成短暂断网,生产环境慎用):

curl -X POST \

\"http:///cgi-bin/

upgrade?reboot%0Afoo=bar\"

06  修复建议

厂商无回应,目前没有官方补丁。缓解措施:

  1. 不要把 NBR200V2 管理口暴露到公网,防火墙封掉 80/443 的外部访问;

  2. 管理界面限制到指定运维 IP 段;

  3. 关注厂商后续固件更新,出补丁立刻升级;

  4. 有条件的话直接换设备,厂商失联的洞等于永远不修。

07  实战技巧

红队视角这批洞价值不小:

  1. 企业路由器的 /cgi-bin/ 目录值得主动摸一遍,nmap + http-enum 或者直接 curl 常见路径(upgrade、restore、backup)可以快速枚举;

  2. 遇到嵌入式 shell CGI,先看它有没有 urldecode + eval 的组合,黑名单过滤十有八九漏换行或 %0d,这是嵌入式设备命令注入的高频模式;

  3. 同厂商往往一个接口出问题全线都有——Netcore 这两个洞一个 upgrade 一个 restore,写成 payload 模板批量过一遍同型号其他 CGI 是常规操作;

  4. 利用前先确认目标是否暴露公网:Censys/FOFA 搜 NBR200V2 的指纹,能快速圈定暴露面。

08  POC 链接

https://app.notion.com/p/

Netcore-NBR200V2-Vul-6-

39f797159f1580259aa3cc1d0f512fde

https://vuldb.com/?id.408027

说明:第一链接为披露者完整分析(含利用链),第二链接为漏洞库条目。长按可逐行复制。

如果文章对您有收获,欢迎关注、点赞、推荐、转发。

— END —


(9.1分)CVE-2026-94098:Netcore路由器固件升级接口命令注入" 网络安全文章

(9.1分)CVE-2026-94098:Netcore路由器固件升级接口命令注入"

本文披露NetcoreNBR200V2路由器固件升级接口存在CVE-2026-94098命令注入漏洞,评分9.1,PoC已公开。根因是CGI脚本urldecode与eval组合过滤黑名单遗漏换行符%0A,注入点在固件校验前,无需认证即可远程执行命令。厂商无回应无补丁,建议立即将管理口限制内网访问、封禁公网暴露,关注固件更新或更换设备。
ShellshockCGI注入与ftplib.py组权限提权:Symfonos3靶机实战" 网络安全文章

ShellshockCGI注入与ftplib.py组权限提权:Symfonos3靶机实战"

本文详细记录了Symfonos3靶机的完整渗透测试过程,攻击链涵盖信息收集、Shellshock漏洞利用、pspy进程监控、tcpdump嗅探FTP明文凭据、SSH横向移动及Python标准库文件劫持提权。文章技术细节丰富,步骤清晰,展示了从Web层RCE到root权限提升的完整路径,并提供了相应的防御建议,对渗透测试人员具有较高的实战参考价值。
评论:0   参与:  0