CVE-2026-44339PraisonAI是一个多智能体团队系统。在4.6.37版本之前,其组件praisonaiagents在工具名称解析时存在安全缺陷。当无法匹配声明的工具列表时,系统会尝试在模块全局变量和__main__中解析未解析的工具名称。由于默认配置下权限允许未声明的非危险工具名称,攻击者可通过影响工具调用名称,进而调用未声明为工具的应用程序函数,导致潜在的代码执行风险。
该漏洞源于PraisonAI的工具名称解析机制存在逻辑缺陷。在处理工具调用时,如果系统在声明的工具列表和注册表中无法找到匹配项,praisonaiagents组件会回退机制,尝试在模块全局变量和__main__模块中解析这些未解析的工具名称。关键问题在于默认代理配置中`_perm_allow`参数被设置为None,这意味着权限检查机制默认允许未声明的非危险工具名称通过。攻击者若能影响工具调用的名称(例如通过提示词注入),即可绕过原有的工具声明限制,诱导系统执行任意的应用程序可调用对象。这种行为不仅违反了最小权限原则,还允许攻击者访问并执行本不应暴露的内部函数,从而导致远程代码执行或数据篡改。