CVE-2026-41277Flowise是一个用于构建定制化大语言模型流程的拖拽式用户界面。在3.1.0版本之前,其DocumentStore创建端点存在批量赋值漏洞。经过身份认证的用户可以通过控制DocumentStore实体的主键和内部状态字段来利用此漏洞。由于服务端使用客户端提供的主键调用repository.save(),导致POST创建端点表现为隐式的UPSERT操作。这允许攻击者覆盖现有的DocumentStore对象。在多工作空间或多租户部署环境下,该漏洞可导致跨工作空间对象接管以及破坏的对象级授权(IDOR),使攻击者能够重新分配或修改属于其他工作空间的DocumentStore对象。该问题已在3.1.0版本中修复。
该漏洞的根本原因在于应用程序缺乏对用户输入数据的严格属性过滤,存在Mass Assignment缺陷。在受影响的Flowise版本中,当用户调用DocumentStore创建接口时,后端直接将客户端提交的JSON数据绑定到实体对象并持久化。关键在于,系统允许客户端指定实体的主键(id)。由于ORM框架(如TypeORM或Mongoose)的save()方法在检测到主键已存在时会执行更新而非插入操作,攻击者可以利用这一机制进行隐式更新。攻击者只需登录系统,获取一个低权限账号,然后构造包含特定目标ID的恶意POST请求发送给创建接口。系统会误以为这是在创建新对象,但实际会覆盖ID对应的现有对象。这绕过了常规的修改权限检查,导致跨租户数据篡改和对象接管,严重破坏了多租户环境下的数据隔离性。