Description
InvoiceShelf is an open-source web & mobile app that helps track expenses, payments and create professional invoices and estimates. Prior to version 2.4.0, InvoiceShelf passes the authenticated user's orderByField query parameter into Laravel orderBy calls in Invoice::scopeApplyFilters without restricting the value to column identifiers. A crafted SQL expression can therefore enter the ORDER BY clause across invoice and other list endpoints, enabling boolean-based blind extraction of database information. This issue is fixed in version 2.4.0.
Published: 2026-10-14
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: SQL injection that may allow an authenticated attacker to extract database data via blind boolean queries
Action: Immediate Patch
AI Analysis

Impact

InvoiceShelf, an open‑source accounting application, permitted users to supply an orderByField query parameter that was directly passed into Laravel's orderBy function without validation. This allowed a malicious user to inject a crafted SQL expression into the ORDER BY clause of invoice and other list endpoints, enabling Boolean‑based blind extraction of database information. The flaw results in an impact of information disclosure and can be exploited remotely by an attacker with network access to the application, but only when the attacker is authenticated, as the vulnerability is present in the web interface and is restricted to authenticated users. The CVE is scored CVSS 7.1, indicating a high severity logical flaw in application logic. This risk was discovered and fixed in version 2.4.0.

Affected Systems

The affected product is InvoiceShelf. All releases prior to 2.4.0 are impacted. The repair is included in release 2.4.0 and later versions do not contain the vulnerability.

Risk and Exploitability

The CVSS score of 7.1 reflects a high severity flaw. No EPSS score is available, so the relative likelihood cannot be quantified. The issue is not listed in the CISA KEV catalog, indicating no known public exploitation at the time of analysis. Based on the description, the likely attack vector is remote exploitation via a crafted HTTP request to the affected API endpoints, but only when the attacker is authenticated. An authenticated attacker who can send requests to the application can leverage the unsanitized orderByField parameter to conduct blind data extraction by observing changes in query execution time or other observable side effects.

Generated by OpenCVE AI on October 15, 2026 at 13:59 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade InvoiceShelf to version 2.4.0 or later, which removes the vulnerability by sanitizing the orderByField parameter.
  • If an upgrade is not immediately possible, restrict the orderByField input to a whitelist of legitimate column identifiers to prevent arbitrary SQL injection.
  • Monitor HTTP traffic for unexpected queries or slow queries that may indicate an attempt to exploit the vulnerability.

Generated by OpenCVE AI on October 15, 2026 at 13:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 17 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
First Time appeared Invoiceshelf
Invoiceshelf invoiceshelf
Vendors & Products Invoiceshelf
Invoiceshelf invoiceshelf

Wed, 14 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 14 Oct 2026 19:30:00 +0000

Type Values Removed Values Added
Description InvoiceShelf is an open-source web & mobile app that helps track expenses, payments and create professional invoices and estimates. Prior to version 2.4.0, InvoiceShelf passes the authenticated user's orderByField query parameter into Laravel orderBy calls in Invoice::scopeApplyFilters without restricting the value to column identifiers. A crafted SQL expression can therefore enter the ORDER BY clause across invoice and other list endpoints, enabling boolean-based blind extraction of database information. This issue is fixed in version 2.4.0.
Title InvoiceShelf ORDER BY SQL injection through orderByField
Weaknesses CWE-89
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Invoiceshelf Invoiceshelf
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-14T19:44:29.460Z

Reserved: 2026-06-16T18:57:40.183Z

Link: CVE-2026-55386

cve-icon Vulnrichment

Updated: 2026-10-14T19:44:19.215Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T20:17:48.773

Modified: 2026-10-15T21:08:49.703

Link: CVE-2026-55386

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-17T17:15:11Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')