
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-Bibliothekssoftware
Schwachstellentyp: Zeitbasierte Blind-SQL-Injection (CWE-89)
CVSS-Score: 8.1 (Hoch) authentifiziert
Betroffene Versionen: Unter 22.05.22
Credits: Karolis Narvilas
Koha ist ein Open-Source-Integriertes-Bibliothekssystem. Eine zeitbasierte Blind-SQL-Injection-Schwachstelle existiert in der Funktion „Send Basket“ unter opac/opac-sendbasket.pl. Der Parameter bib_list wird unsanitisiert in eine SQL-Abfrage übergeben, wodurch ein Angreifer beliebige SQL-Payloads injizieren kann, die messbare Verzögerungen in der Serverantwort verursachen.
Ein regulärer (niedrig privilegierter) Bibliotheksbenutzer kann diese Schwachstelle ohne erhöhte Berechtigungen ausnutzen. Durch die Nutzung von Antwortzeit-Diskrepanzen kann ein Angreifer die Datenbank enumerieren und Inhalte abrufen, die privilegiertem Zugriff vorbehalten sein sollten.
Auswirkung: Ein remote 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 anderer Benutzerkonten, um diese zu übernehmen, was zu unbefugtem Zugriff und potenzieller Datenoffenlegung führt.

bib_list, 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>
