Description
Koha's reports/acquisitions_stats.pl builds its per-cell statistics query in sub calculate by interpolating the user-controlled Filter request parameters directly into WHERE fragments covering aqbasket.closedate, aqorders.datereceived, aqbooksellers.name, items.homebranch, items.ccode, biblioitems.itemtype, aqbudgets.budget_code, aqorders.sort1, and aqorders.sort2.
Published: 2026-08-04
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Koha’s acquisition statistics report constructs per‑cell SQL queries by inserting user‑controlled filter parameters directly into the WHERE clause for various columns. Because parameter binding is absent, the query can be manipulated. The CVE description does not detail authentication or authorization requirements, so the analysis does not assume particular user roles are needed. The flaw is a classic SQL injection (CWE‑89) that may allow an attacker to execute arbitrary SQL against the database, potentially exposing or altering data that the Koha database user is permitted to access.

Affected Systems

The vulnerability is present in the Koha Community edition. The 25.05.12 release, referenced in the advisory, contains the unparameterized acquisition statistics report code and is therefore vulnerable. Any Koha release that includes the same code without a fix remains susceptible. Users should verify whether later releases contain the patch and determine if their current deployment is affected.

Risk and Exploitability

Exploitation requires sending a crafted request to the vulnerable report endpoint with the injected filter parameters. The CVE description does not specify any authentication or permission prerequisites, so it is unknown whether any user context is necessary. The absence of bound parameters makes the injection straightforward once the endpoint is reached. The EPSS score is below 1% and the issue is not listed in KEV, while the CVSS score of 8.8 indicates a high severity. The potential impact of the flaw is that an attacker could retrieve or modify data accessible to the Koha database account, leading to a breach of confidentiality and integrity.

Generated by OpenCVE AI on August 10, 2026 at 23:06 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Koha to a version that includes the acquisition stats SQL injection fix, such as 25.05.13 or later.
  • Restrict the reports module permission to trusted operators, or disable the module for users who do not need it.
  • Audit the Koha database user’s privileges to ensure the minimum required permissions and monitor for abnormal query activity.

Generated by OpenCVE AI on August 10, 2026 at 23:06 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 10 Aug 2026 12:00:00 +0000

Type Values Removed Values Added
Description Koha's reports/acquisitions_stats.pl builds its per-cell statistics query in sub calculate by interpolating the user-controlled Filter request parameters directly into WHERE fragments covering aqbasket.closedate, aqorders.datereceived, aqbooksellers.name, items.homebranch, items.ccode, biblioitems.itemtype, aqbudgets.budget_code, aqorders.sort1, and aqorders.sort2. The statement is prepared and executed with no bound parameters. An authenticated staff user holding the reports module permission can inject arbitrary SQL and read any table reachable by the Koha database user, including borrowers (password hashes, two-factor secrets, personal data), borrower_password_recovery, api_keys, and sessions. Koha's reports/acquisitions_stats.pl builds its per-cell statistics query in sub calculate by interpolating the user-controlled Filter request parameters directly into WHERE fragments covering aqbasket.closedate, aqorders.datereceived, aqbooksellers.name, items.homebranch, items.ccode, biblioitems.itemtype, aqbudgets.budget_code, aqorders.sort1, and aqorders.sort2.

Mon, 10 Aug 2026 11:30:00 +0000

Type Values Removed Values Added
Title Koha: SQL Injection in reports/acquisitions_stats.pl Koha - SQL Injection in reports/acquisitions_stats.pl

Wed, 05 Aug 2026 13:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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

cvssV3_1

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


Tue, 04 Aug 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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

ssvc

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


Tue, 04 Aug 2026 15:00:00 +0000

Type Values Removed Values Added
First Time appeared Koha-community
Koha-community koha
Vendors & Products Koha-community
Koha-community koha

Tue, 04 Aug 2026 13:15:00 +0000

Type Values Removed Values Added
Description Koha's reports/acquisitions_stats.pl builds its per-cell statistics query in sub calculate by interpolating the user-controlled Filter request parameters directly into WHERE fragments covering aqbasket.closedate, aqorders.datereceived, aqbooksellers.name, items.homebranch, items.ccode, biblioitems.itemtype, aqbudgets.budget_code, aqorders.sort1, and aqorders.sort2. The statement is prepared and executed with no bound parameters. An authenticated staff user holding the reports module permission can inject arbitrary SQL and read any table reachable by the Koha database user, including borrowers (password hashes, two-factor secrets, personal data), borrower_password_recovery, api_keys, and sessions.
Title Koha: SQL Injection in reports/acquisitions_stats.pl
Weaknesses CWE-89
References

Subscriptions

Koha-community Koha
cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-10T11:44:38.356Z

Reserved: 2026-08-04T07:13:07.992Z

Link: CVE-2026-70369

cve-icon Vulnrichment

Updated: 2026-08-04T17:20:27.951Z

cve-icon NVD

Status : Received

Published: 2026-08-04T13:18:57.680

Modified: 2026-08-10T12:17:22.300

Link: CVE-2026-70369

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T23:15:05Z

Weaknesses
  • CWE-89

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