CVE-2026-34939PraisonAI是一个多智能体团队系统。在4.5.90版本之前,该系统中的MCPToolIndex.search_tools()函数存在严重的安全缺陷。该函数直接将调用者提供的字符串编译为Python正则表达式,且未进行任何形式的验证、清洗或设置超时机制。攻击者可以通过精心构造特殊的恶意正则表达式,触发Python正则表达式引擎中的灾难性回溯现象。这会导致Python线程被阻塞数百秒,从而造成服务完全不可用,即拒绝服务攻击。该问题已在版本4.5.90中修复。
该漏洞的根源在于PraisonAI对用户输入的正则表达式处理不当。具体而言,MCPToolIndex.search_tools()方法直接接收用户输入并使用Python的re模块进行编译。正则表达式引擎在处理某些特定模式的字符串时(例如包含重叠匹配或复杂嵌套量词的模式),会进行指数级的尝试匹配,这种现象被称为灾难性回溯。攻击者无需高权限(仅需低权限账号),且无需用户交互,即可通过网络发送包含恶意正则模式的请求。当服务器尝试匹配该模式时,CPU利用率会瞬间飙升至100%,线程会长时间挂起,无法处理其他正常请求。由于Python的全局解释器锁(GIL)特性,这种密集计算可能会阻塞整个进程,导致整个服务中断。漏洞的CVSS向量显示其对可用性影响为高,符合拒绝服务的特征。