CVE-2026-34934PraisonAI是一个多智能体团队系统,旨在协调多个AI代理协同工作。在4.5.90版本之前,该系统发现了一个严重的SQL注入安全漏洞(CVE-2026-34934)。漏洞根源在于`get_all_user_threads`函数在构造SQL查询时,直接使用了f-strings拼接从数据库获取且未经转义的线程ID。攻击者可利用`update_thread`功能存储包含恶意SQL代码的线程ID。一旦应用程序尝试加载线程列表,这些注入的载荷便会在数据库层面执行,最终导致攻击者无需认证即可获取对数据库的完全控制权。
该漏洞属于典型的存储型SQL注入漏洞。其技术原理在于应用程序未能正确处理数据清洗与数据库查询之间的安全边界。具体而言,受影响版本的PraisonAI在`get_all_user_threads`函数中,采用了不安全的编程实践,即使用Python的f-string直接格式化字符串来构建原始SQL查询语句。当系统从数据库中读取线程ID并将其嵌入查询时,如果该ID先前被攻击者通过`update_thread`接口植入了恶意的SQL元字符(如单引号、注释符等),数据库解析器会将这些字符解释为SQL指令的一部分,而非普通数据。这使得攻击者能够通过操纵线程ID,执行任意SQL命令,包括读取敏感数据、修改表结构甚至执行系统命令,从而完全控制数据库。