CVE-2026-45369python-utcp在1.1.3之前的版本中存在严重的命令注入漏洞。该漏洞由于`cli_communication_protocol.py`中的`_substitute_utcp_args`方法未能正确处理用户输入,直接将用户控制的参数拼接到Shell命令中。攻击者无需认证即可利用此漏洞,通过构造恶意的`tool_args`参数,在目标服务器上执行任意系统命令,从而窃取数据或完全控制受影响系统。
该漏洞的核心在于不安全的命令拼接机制。在受影响版本的python-utcp中,`_substitute_utcp_args`函数负责处理通信协议参数。它将外部传入的`tool_args`值直接插入到预定义的Shell命令字符串中,且未实施任何形式的输入清洗、转义或参数化处理。随后,应用程序调用系统Shell(Unix下的`/bin/bash -c`或Windows下的`powershell.exe -Command`)来执行拼接后的命令。
攻击者可以通过发送包含Shell元字符(如分号`;`、管道符`|`、反引号`` ` ``或命令替换`$()`)的恶意载荷,截断原始命令并附加恶意指令。由于系统Shell会解析这些元字符,攻击者的恶意指令将以运行该Python进程的权限执行,导致远程代码执行(RCE)。这种利用方式无需复杂的内存破坏技术,利用门槛较低,危害极高。