Incorrect authorization in InvoicePlane
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- No fix listed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-863.
Summary
InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. In version 1.7.2, an authorization guard to Users::change_password(), was added to address a previous authorization flaw that allowed a secondary administrator (user_type=1, user_id != 1) to directly change the password of the primary administrator (user_id=1) through users/change_password/{id}. That remediation, however, protects only the direct password-change operation. It does not protect the identity attribute that password recovery actually trusts: user_email. Users::form() applies no equivalent object-level authorization check when editing the primary administrator's account, and user_email is not included in PROTECTED_FIELDS. A secondary administrator can therefore rewrite the primary administrator's email address, then drive the public password-recovery flow — which resolves the account by user_email — to receive the reset token and take over user_id=1. The result is an alternate attack path that achieves the same impact PR #1638 was intended to prevent: cross-administrator full account takeover of the primary administrator. This issue has been patched via commit 8616fa4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| InvoicePlane | InvoicePlane | = 1.7.2 | — | No fix listed | CNA |
- InvoicePlane VendorInvoicePlane Affected = 1.7.2 Fixed in — No fix listed CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:invoiceplane:invoiceplane:*:*:*:*:*:*:*:* | — | — | InvoicePlane |
- cpe:2.3:a:invoiceplane:invoiceplane:*:*:*:*:*:*:*:* Versions — — ·InvoicePlane
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2026-100371
References
More InvoicePlane vulnerabilities
- TI-2026-18924 InvoicePlane has Unauthenticated Path Traversal in Guest Controller CVSS 4.0CRITICAL 9.3
- TI-2025-41126 File upload vulnerability in InvoicePlane through 1.6.3 allows authenticated attackers to… CVSS 3.1CRITICAL 9.9
- TI-2026-28341 InvoicePlane: Remote Code Execution via Writable Templates Directory CVSS 3.1CRITICAL 9.1
- TI-2026-60029 InvoicePlane: Failure to Revoke Administrative Privileges After Role Downgrade CVSS 4.0HIGH 7.5
- TI-2026-26020 InvoicePlane permits DDL injection through tax_rate_decimal_places CVSS 3.1HIGH 7.2
- TI-2026-19951 InvoicePlane has a Stored Cross-Site Scripting (XSS) issue CVSS 3.1HIGH 7.5
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences