
Advisory und Proof-of-Concept für CVE-2024-36057, eine authentifizierte OS-Command-Injection in der Koha-Bibliothekssoftware, die die Ausführung beliebiger Befehle über manipulierte ZIP-Dateinamen demonstriert.
CVE-ID: CVE-2024-36057
Produkt: Koha Library Software
Schwachstellentyp: OS Command Injection (CWE-78)
CVSS-Score: 9.8 (Kritisch)
Betroffene Versionen: Unter 23.05.10
Credits: Karolis Narvilas
Koha ist ein integriertes Open-Source-Bibliothekssystem. Eine Command-Injection-Schwachstelle existiert in der Funktion zum Hochladen von Titelbildern unter tools/upload-cover-image.pl. Die Anwendung verwendet qx/unzip $filename -d $dirname/, um hochgeladene ZIP-Archive zu entpacken, ohne den Parameter filename zu bereinigen.
Ein authentifizierter Benutzer mit hohen Privilegien kann eine ZIP-Datei mit einem bösartigen Dateinamen erstellen, der Backtick-Zeichen enthält, um beliebige Shell-Befehle einzuschleusen, die serverseitig ausgeführt werden, wenn der Benutzer auf „Process Images“ klickt.
Auswirkung: Ein entfernter authentifizierter Angreifer kann CVE-2024-36057 ausnutzen, um beliebige OS-Befehle auf dem zugrunde liegenden Server auszuführen, was zu einer vollständigen Systemkompromittierung, Datenexfiltration und der Einrichtung persistenter Backdoors oder Reverse Shells führt.
https://{domain}/cgi-bin/koha/tools/upload-cover-image.plAnfrage:
POST /cgi-bin/koha/tools/upload-file.pl?temp=1 HTTP/1.1
Host: {domain}
Cookie: [High-Privilege Session]
Connection: close
------WebKitFormBoundaryP82Da5V6eaQOuBUT
Content-Disposition: form-data; name="file"; filename="execute`<INJECTED_COMMAND>`.zip"
Content-Type: application/x-zip-compressed
<zip file contents>
------WebKitFormBoundaryP82Da5V6eaQOuBUT--
