„`html
Zusammenfassung
CVE-2026-70372 ist eine SQL-Injection-Anfälligkeit in Kohas Reporting-Modul mit hohem Schweregrad (CVSS 8.8). Die Vulnerability ermöglicht authentifizierten Benutzern mit Reports-Modul-Berechtigung, beliebige SQL-Befehle auszuführen und auf sensible Datenbankinhalte zuzugreifen. Derzeit ist kein Patch verfügbar.
Betroffene Systeme
Die Anfälligkeit betrifft Koha-Installationen verschiedener Versionen. Betroffen sind alle Systeme, die das Reports-Modul aktiviert haben und Benutzern mit entsprechenden Berechtigungen Zugriff gewähren.
Technische Details
Die Anfälligkeit liegt in der Datei reports/bor_issues_top.pl in der Funktion calculate(). Das System konstruiert dynamische SQL-Abfragen durch direkte String-Konkatenation von Benutzereingaben:
- Criteria-Parameter: Wird nur mit einem Tabellennamen-Präfix normalisiert und direkt in Identifier-Positionen (SELECT DISTINCTROW, GROUP BY, ORDER BY) eingefügt
- Filter-Werte: Werden ungefiltert in LIKE-, BETWEEN- und Vergleichs-Fragmente eingebunden
- Limit-Parameter: Wird direkt der LIMIT-Klausel angehängt
Durch geschickte Eingaben können Angreifer SQL-Syntax injizieren und auf nicht autorisierte Tabellen zugreifen, einschließlich Benutzerkonten (Passwort-Hashes, 2FA-Secrets), API-Keys und Session-Daten.
Empfohlene Massnahmen
- Beschränken Sie den Zugriff auf das Reports-Modul auf vertrauenswürdige Administratoren
- Implementieren Sie zusätzliche Zugriffskontrolle und Überwachung von Report-Aktivitäten
- Verwenden Sie Datenbank-User mit minimalen erforderlichen Privilegien
- Überwachen Sie Koha-Sicherheitsupdates regelmäßig auf einen verfügbaren Patch
- Implementieren Sie Prepared Statements oder parameterisierte Abfragen fĂĽr alle dynamischen SQL-Konstruktionen
Bewertung
Mit einem CVSS-Score von 8.8 stellt diese Anfälligkeit ein erhebliches Sicherheitsrisiko dar. Die Kombination aus niedriger Angriffskomplexität und hohem Impact auf Vertraulichkeit und Integrität erfordert sofortige Aufmerksamkeit. Die Notwendigkeit von Authentifizierung mindert das Risiko geringfügig, limitiert aber nicht die Schadensreichweite.
„`