# CVE-2026-100371: InvoicePlane authorization bypass in Users::form()

Source: https://junglewise.ai/threats/cve-2026-100371-invoiceplane-is-a-self-hosted-open-source-application-for  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-28. Updated: 2026-09-28  
License: CC BY 4.0 with a link back

CVE-2026-100371 · Severity: info · Published 2026-09-28

InvoicePlane is an open-source invoicing application that manages financial records and payments. A secondary administrator can bypass authorization controls to change the primary administrator's email address, then use the password recovery mechanism to take over the account completely. This grants an insider attacker full control of the application and all financial data stored within it.

Technologies: [InvoicePlane](https://junglewise.ai/threats/technologies/invoiceplane). Vendors: [InvoicePlane](https://junglewise.ai/threats/vendors/invoiceplane).

## Quick answers

**Is CVE-2026-100371 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-100371 being exploited in the wild.

**How severe is CVE-2026-100371?** Informational severity, published 28 September 2026.

**Which products and versions are affected?** InvoicePlane 1.7.2.

**Is there a fix for CVE-2026-100371?** A patch was published on 2026-09-28: via commit 8616fa4 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-100371 attacked?** It is attacked over the network, in a web application.

**Am I affected by CVE-2026-100371?** Check whether you run InvoicePlane at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

The vulnerability is a broken object-level authorization (CWE-639) in the Users::form() method. A secondary administrator (user_type=1, user_id != 1) can modify the primary administrator's (user_id=1) email address because user_email is not in PROTECTED_FIELDS and form() lacks authorization checks equivalent to those added to change_password(). An attacker can then initiate the public password-recovery flow, which resolves accounts by email, receive the reset token, and assume control of the primary administrator account. The vulnerability requires authenticated access as a secondary administrator.

## Affected products

- InvoicePlane InvoicePlane 1.7.2

## Timeline

- 2026-09-28: disclosed
- 2026-09-28: patched: via commit 8616fa4

## References

- [https://github.com/InvoicePlane/InvoicePlane/commit/8616fa45a61c1694b55bb9116e293269a0ced06a](https://github.com/InvoicePlane/InvoicePlane/commit/8616fa45a61c1694b55bb9116e293269a0ced06a)
- [https://github.com/InvoicePlane/InvoicePlane/pull/1638](https://github.com/InvoicePlane/InvoicePlane/pull/1638)

## Related threats

- [InvoicePlane authorization bypass in guest quote operations](https://junglewise.ai/threats/cve-2026-55561-invoiceplane-is-a-self-hosted-open-source-application-for)
- [InvoicePlane missing object-level authorization in Users::form()](https://junglewise.ai/threats/cve-2026-100392-invoiceplane-is-a-self-hosted-open-source-application-for)
- [InvoicePlane privilege escalation via stale session validation](https://junglewise.ai/threats/cve-2026-88003-invoiceplane-is-a-self-hosted-open-source-application-for)
- [InvoicePlane stored XSS in client email field](https://junglewise.ai/threats/cve-2026-85293-invoiceplane-is-a-self-hosted-open-source-application-for)
- [InvoicePlane authentication bypass via type juggling in User_Controller](https://junglewise.ai/threats/cve-2026-85292-invoiceplane-is-a-self-hosted-open-source-application-for)
