CVE-2026-6942radare2-mcp在1.6.0及更早版本中存在严重的操作系统命令注入漏洞。该漏洞源于程序未能正确过滤用户输入,允许攻击者通过jsonrpc接口参数注入恶意的shell元字符。无需任何身份验证,远程攻击者即可利用此漏洞绕过命令过滤器,在目标主机上执行任意系统命令,从而完全控制受影响系统,对机密性、完整性和可用性造成极高风险。
该漏洞的核心在于radare2-mcp处理用户输入时的过滤机制存在缺陷。具体而言,`r2_cmd_str()` 函数在处理通过jsonrpc接口传入的参数时,未能对含有特殊含义的shell元字符(例如分号、管道符、反引号或命令替换符号 `$(...)` 等)进行严格的转义或过滤。攻击者可以利用这一缺陷,精心构造包含这些元字符的恶意JSON数据包并发送至服务器。当后端程序处理该请求并尝试调用底层系统命令时,注入的元字符将破坏原有的命令结构,导致攻击者追加的任意操作系统命令被Shell解释器执行。由于该服务接口默认无需认证即可访问,这使得任何能够连接到服务端的攻击者都能轻易获取服务器权限,造成极其严重的远程代码执行风险。