
Proof-of-concept exploit e advisory per CVE-2024-36058, una SQL injection blind basata sul tempo in opac-sendbasket.pl del software bibliotecario Koha, che consente l'enumerazione autenticata del database.
ID CVE: CVE-2024-36058
Prodotto: Koha Library Software
Tipo di vulnerabilità: SQL Injection cieca basata sul tempo (CWE-89)
Punteggio CVSS: 9.8 (Critico)
Versioni interessate: Precedenti alla 23.05.10
Riconoscimenti: Karolis Narvilas
Koha è un sistema bibliotecario integrato open-source. Una vulnerabilità di SQL injection cieca basata sul tempo è presente nella funzionalità "Send Basket" in opac/opac-sendbasket.pl. Il parametro bib_list viene passato senza sanificazione all'interno di una query SQL, consentendo a un attaccante di iniettare payload SQL arbitrari che causano ritardi misurabili nella risposta del server.
Un utente normale (con privilegi bassi) della biblioteca può sfruttare questa vulnerabilità senza alcun permesso elevato. Sfruttando le discrepanze nei tempi di risposta, un attaccante può enumerare il database e recuperare contenuti che dovrebbero essere riservati all'accesso privilegiato.
Impatto: Un attaccante remoto autenticato può sfruttare CVE-2024-36058 per enumerare contenuti sensibili del database, incluso lo sfruttamento del flusso di reimpostazione della password e il recupero dei token di reimpostazione della password di altri account utente per dirottarli, portando ad accessi non autorizzati e potenziale esposizione dei dati.

bib_list come mostrato di seguito:Richiesta:
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>
