Description
InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. Prior to 1.7.2, InvoicePlane exposes Recurring::stop() as a state-changing GET route without CSRF token validation. When an authenticated administrator loads attacker-controlled content that requests /invoices/recurring/stop/{id}, the application stops the selected recurring invoice. An attacker can target multiple identifiers to interrupt recurring billing and cause financial loss. This issue is fixed in version 1.7.2.
Published: 2026-09-25
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized state change of recurring invoices
Action: Apply Patch
AI Analysis

Impact

InvoicePlane versions before 1.7.2 expose a GET route that stops a recurring invoice without requiring a CSRF token. An authenticated administrator who visits malicious content can trigger the /invoices/recurring/stop/{id} request, causing the selected invoice to be halted. This flaw allows an attacker to interrupt multiple recurring billing cycles, resulting in financial loss and disruption of legitimate business processes.

Affected Systems

InvoicePlane self‑hosted invoicing software, affected from the initial release through version 1.7.1. The vulnerability exists only in those releases that lack CSRF validation for the stop route.

Risk and Exploitability

The CVSS score of 6.5 indicates moderate severity. No EPSS score is available, so exploitation likelihood is unknown, and the issue is not listed in the CISA KEV catalog. The attack requires that an attacker can lure an authenticated administrator to a crafted page or otherwise get the admin’s browser to issue the GET request. Because no CSRF token is checked, the request executes automatically and stops the chosen recurring invoice(s).

Generated by OpenCVE AI on September 25, 2026 at 18:56 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade InvoicePlane to version 1.7.2 or later to remove the unprotected stop route.
  • Restrict administrative access to trusted networks or a VPN to limit the exposure of the GET endpoint.
  • Ensure that all state‐changing endpoints in the application enforce CSRF protection to guard against similar attacks.

Generated by OpenCVE AI on September 25, 2026 at 18:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 26 Sep 2026 12:15:00 +0000

Type Values Removed Values Added
First Time appeared Invoiceplane
Invoiceplane invoiceplane
Vendors & Products Invoiceplane
Invoiceplane invoiceplane

Fri, 25 Sep 2026 15:45:00 +0000

Type Values Removed Values Added
Description InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. Prior to 1.7.2, InvoicePlane exposes Recurring::stop() as a state-changing GET route without CSRF token validation. When an authenticated administrator loads attacker-controlled content that requests /invoices/recurring/stop/{id}, the application stops the selected recurring invoice. An attacker can target multiple identifiers to interrupt recurring billing and cause financial loss. This issue is fixed in version 1.7.2.
Title InvoicePlane: Recurring Invoice State Change via GET Request Without CSRF Protection
Weaknesses CWE-352
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N'}


Subscriptions

Invoiceplane Invoiceplane
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-25T16:35:36.061Z

Reserved: 2026-09-03T16:37:49.261Z

Link: CVE-2026-85274

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-09-25T16:17:28.010

Modified: 2026-09-28T15:07:51.540

Link: CVE-2026-85274

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-26T12:00:12Z

Weaknesses
  • CWE-352

    Cross-Site Request Forgery (CSRF)