CVE-2025-14542CVE-2025-14542是python-utcp(Universal Tool Calling Protocol的Python实现)中的一个高危安全漏洞,CVSS评分7.5。该漏洞源于客户端从远程Manual Endpoint获取工具JSON规范(称为Manual)时的信任机制缺陷。攻击者(恶意Manual Provider)可以先向客户端提供良性的Manual(如定义合法的HTTP工具调用),建立信任关系后,在后续请求中动态修改Manual内容,利用客户端对已信任Provider的信任执行恶意代码。由于客户端在首次获取Manual后会对Provider产生信任,后续更新时不会重新验证,这使得攻击者可以在任意时间点发起攻击,实现远程代码执行或完全控制受害客户端。
该漏洞的核心问题在于信任验证机制的不完整性。在python-utcp框架中,Manual Endpoint负责提供工具的JSON规范定义,客户端通过该规范了解如何调用工具。当客户端首次连接到一个Manual Provider时,会获取并执行Provider提供的Manual。如果Manual内容被修改为恶意代码(如包含os.system、subprocess等命令执行函数),客户端在解析和执行这些规范时就会触发远程代码执行。攻击者利用的正是这种信任链的脆弱性:初始的良性Manual建立了信任,随后的恶意Manual利用已建立的信任执行任意命令。攻击者可以通过控制Manual Endpoint或中间人攻击的方式,动态修改返回的JSON规范,实现对客户端的完全控制。