CVE-2026-54790 InvoicePlane: Second-order SQL injection through the unvalidated custom_field_table field in the Custom Fields module
An attacker can execute arbitrary SQL queries and cause denial of service by exploiting unvalidated custom field table names in InvoicePlane.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-54790?
CVE-2026-54790 is a medium-severity SQL injection vulnerability in InvoicePlane, published on 25 Sep 2026. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
InvoicePlane is a self-hosted open source application for managing invoices, clients, and payments. Prior to 1.7.2, InvoicePlane stores an administrator-controlled custom_field_table value without validating it against the allowed custom-field table names. Mdl_custom_fields::used() later concatenates that stored value into the FROM table and WHERE column identifier positions, so opening the custom-field edit form executes a second-order SQL injection. The injection can query arbitrary schema data and can cause application errors or denial of service. This issue is fixed in version 1.7.2.
Weakness: CWE-89
Which versions are affected by CVE-2026-54790?
How do I fix CVE-2026-54790?
No fix has been published for CVE-2026-54790 yet. Limit exposure of the affected software until one is available.
Use parameterised queries everywhere and never build SQL by joining strings. Upgrade affected software first; a web application firewall only buys time. More about SQL injection.
Is CVE-2026-54790 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-54790 exists.
Sources
Also known as GHSA-vv4r-cgmw-w6x2.