影响分析
LangGraph 检查点持有完整代理状态——对话历史、中间推理、工具输出。在基于 LangGraph+MongoDB 构建的多租户 SaaS 中,这允许一个已认证的租户读取另一个租户的代理会话数据,这是广泛使用的代理编排堆栈中的直接跨客户数据泄露。
攻击途径
MongoDBSaver.list()/alist() 和 MongoDBStore.search() 将过滤字典合并到 MongoDB 查询中,而不递归拒绝 $-前缀键。控制过滤参数的已认证调用者(通过 HTTP 参数、请求体或代理工具参数)可以注入操作符如 $regex/$where 来绕过租户隔离相等过滤器并读取其他租户的 LangGraph 检查点/存储数据。
受影响系统
langgraph-checkpoint-mongodb < 0.3.0;langgraph-store-mongodb < 0.4.0
缓解措施
升级到 langgraph-checkpoint-mongodb 0.3.0 和 langgraph-store-mongodb 0.4.0。