天下漏洞,尽知其名
HIGH 重点关注

CVE-2026-100392 InvoicePlane 权限提升漏洞

影响次级管理员可降权主管理员,导致合法所有者被锁定

AI 研判

InvoicePlane 1.7.2 的 Users::form() 在处理 user_id=1 时缺少对象级授权校验。拥有次级管理员权限的用户可修改主管理员的 user_type,将其降为只读访客,从而破坏根账户权限并锁定合法所有者。

影响范围

InvoicePlane

InvoicePlane 1.7.2 受影响;截至披露时暂无公开补丁,其他版本是否受影响暂无公开信息。

漏洞详情

该漏洞属于对象级授权缺失(IDOR/越权)。Users::form() 未校验当前用户是否有权修改 user_id=1 这一主管理员账户,导致次级管理员可直接提交表单改写主管理员的 user_type 字段。将 user_type 改为 2 后,主管理员变为只读访客,失去管理权限。

利用条件与风险

利用前提是攻击者已拥有次级管理员账户(user_type=1 且 user_id≠1),属于内部或已获低权账户后的提权/破坏场景。实战中可造成实例管理权被剥夺、合法所有者被锁定,影响可用性与完整性。

修复建议

官方暂无公开补丁,建议关注 InvoicePlane 官方更新;临时缓解可限制次级管理员账户的创建与使用、对 Users::form() 增加对象级授权校验,并备份主管理员账户配置以便恢复。

原始情报

InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. In version 1.7.2, Users::form() performs no object-level authorization check on user_id = 1. A Secondary Administrator (user_type = 1, user_id != 1) can rewrite the Primary Administrator’s user_type to 2 (Guest / read-only), destroying the root account’s privilege and locking the legitimate owner out of the instance. At time of publication, there are no publicly available patches.