
Proof-of-Concept-Exploit und Advisory für CVE-2024-36058, eine zeitbasierte blinde SQL-Injection in der opac-sendbasket.pl des Koha-Bibliothekssystems, die eine authentifizierte Datenbank-Enumeration ermöglicht.
CVE-ID: CVE-2024-36058
Produkt: Koha Library Software
Schwachstellentyp: Zeitbasierte blinde SQL-Injection (CWE-89)
CVSS-Score: 9.8 (Kritisch)
Betroffene Versionen: Unter 23.05.10
Danksagung: Karolis Narvilas
Koha ist ein quelloffenes integriertes Bibliothekssystem. In der Funktion „Send Basket" unter opac/opac-sendbasket.pl existiert eine zeitbasierte blinde SQL-Injection-Schwachstelle. Der Parameter bib_list wird unbereinigt an eine SQL-Abfrage übergeben, wodurch ein Angreifer beliebige SQL-Payloads einschleusen kann, die messbare Verzögerungen in der Antwort des Servers verursachen.
Ein regulärer (niedrig privilegierter) Bibliotheksbenutzer kann diese Schwachstelle ohne jegliche erhöhte Berechtigungen ausnutzen. Durch die Ausnutzung von Unterschieden in der Antwortzeit kann ein Angreifer die Datenbank enumerieren und Inhalte abrufen, die privilegiertem Zugriff vorbehalten sein sollten.
Auswirkung: Ein entfernter authentifizierter Angreifer kann CVE-2024-36058 ausnutzen, um sensible Datenbankinhalte zu enumerieren, einschließlich der Ausnutzung des Passwort-Reset-Ablaufs und des Abrufs von Passwort-Reset-Tokens für andere Benutzerkonten, um diese zu übernehmen, was zu unbefugtem Zugriff und potenzieller Datenoffenlegung führt.

bib_list ein, wie unten gezeigt:Anfrage:
POST /cgi-bin/koha/opac-sendbasket.pl HTTP/1.1
Host: {domain}
Cookie: [Low Privilege Session]
-- SNIP --
email_add=<recipient>&comment=x&bib_list=1)+AND+(SELECT+1+FROM+(SELECT(SLEEP(36)))x)--+-&csrf_token=<csrf_token>
