Description
Koha is vulnerable to SQL injection in the Most-circulated items report. The reports/cat_issues_top.pl script (sub calculate) concatenates the user-controlled Criteria, Filter, and Limit request parameters directly into dynamic SQL. Criteria is only prefix-normalized and never validated against an allow-list, so it is inserted verbatim into identifier positions (SELECT DISTINCTROW, GROUP BY, ORDER BY, and the main calculation query). Filter values are concatenated raw into single-quoted LIKE, BETWEEN, and comparison fragments. Limit is appended raw to a LIMIT clause. An authenticated staff user with the reports module permission (not requiring superlibrarian) can inject arbitrary SQL and read any table reachable by the Koha database user, including borrowers (userid and bcrypt password hashes, two-factor secrets, personal data), api_keys, and sessions. The issue is fixed in Koha 24.11.19, 25.05.14, 25.11.08, and 26.05.03, and in the 26.11 development branch. This is the unpatched twin of reports/bor_issues_top.pl (CVE-2026-70372).
Published: 2026-10-14
Score: 7.2 High
EPSS: < 1% Very Low
KEV: No
Impact: Data theft through authenticated SQL injection
Action: Immediate Patch
AI Analysis

Impact

Koha is vulnerable to SQL injection in the Most‑circulated items report, where the user‑controlled Criteria, Filter, and Limit request parameters are concatenated directly into dynamic SQL without validation. The Criteria parameter is inserted into identifier positions, Filter values are yet again concatenated raw into LIKE, BETWEEN, and comparison fragments, and Limit is appended to a LIMIT clause. An authenticated staff user who has the Reports module permission can inject arbitrary SQL and read any table reachable by the Koha database user. Consequently an attacker could retrieve borrowers’ userid and bcrypt password hashes, two‑factor secrets, personal data, API keys, and session records.

Affected Systems

This flaw affects Koha Community installations prior to the release of any of the following fixed branches: 24.11.19, 25.05.14, 25.11.08, 26.05.03, and the 26.11 development branch. All users who install the default reports module on these versions are susceptible.

Risk and Exploitability

The CVSS score of 7.2 reflects a high severity impact on confidentiality. The EPSS score of <1% indicates the likelihood of exploitation is low, and it has not been listed in the CISA KEV catalog. The vulnerability requires a staff user with Reports module permission; however, no superlibrarian rights are necessary. A malicious actor could exploit the vulnerability via the web interface to retrieve sensitive database contents.

Generated by OpenCVE AI on October 16, 2026 at 00:15 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Koha to a version that includes the fix (at least 24.11.19, 25.05.14, 25.11.08, 26.05.03, or the 26.11 development branch).
  • Limit the assignment of the Reports module permission to trusted staff only, and audit existing permissions to ensure no unnecessary accounts have this capability.
  • If an upgrade is not immediately possible, disable or remove the cat_issues_top.pl report script or restrict access to it through network segmentation or application firewalls to prevent exploitation of the exposed parameters.

Generated by OpenCVE AI on October 16, 2026 at 00:15 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 24 Oct 2026 07:15:00 +0000

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

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

Type Values Removed Values Added
Metrics ssvc

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


Wed, 14 Oct 2026 08:00:00 +0000

Type Values Removed Values Added
Description Koha is vulnerable to SQL injection in the Most-circulated items report. The reports/cat_issues_top.pl script (sub calculate) concatenates the user-controlled Criteria, Filter, and Limit request parameters directly into dynamic SQL. Criteria is only prefix-normalized and never validated against an allow-list, so it is inserted verbatim into identifier positions (SELECT DISTINCTROW, GROUP BY, ORDER BY, and the main calculation query). Filter values are concatenated raw into single-quoted LIKE, BETWEEN, and comparison fragments. Limit is appended raw to a LIMIT clause. An authenticated staff user with the reports module permission (not requiring superlibrarian) can inject arbitrary SQL and read any table reachable by the Koha database user, including borrowers (userid and bcrypt password hashes, two-factor secrets, personal data), api_keys, and sessions. The issue is fixed in Koha 24.11.19, 25.05.14, 25.11.08, and 26.05.03, and in the 26.11 development branch. This is the unpatched twin of reports/bor_issues_top.pl (CVE-2026-70372).
Title Koha SQL injection in reports/cat_issues_top.pl via the Criteria, Filter and Limit request parameters
Weaknesses CWE-89
References
Metrics cvssV3_1

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

cvssV4_0

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


Subscriptions

Koha-community Koha
cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-10-14T15:55:15.372Z

Reserved: 2026-10-03T11:45:52.353Z

Link: CVE-2026-105107

cve-icon Vulnrichment

Updated: 2026-10-14T15:55:05.027Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T08:17:03.747

Modified: 2026-10-15T15:53:08.287

Link: CVE-2026-105107

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-24T07:00:14Z

Weaknesses
  • CWE-89

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