
PoC per CVE-2024-1512 nel plugin MasterStudy LMS WordPress.
CVE-2024-1512 espone una vulnerabilità critica nel plugin WordPress MasterStudy LMS, in particolare nell'implementazione della route REST /lms/stm-lms/order/items. Il problema deriva dalla mancata corretta escape del parametro 'user' da parte del plugin, combinata con una preparazione inadeguata delle query SQL. Di conseguenza, gli attaccanti possono iniettare codice SQL maligno nella query manipolando il parametro 'user'. Questa vulnerabilità facilita un attacco SQL Injection basato su UNION, mediante il quale un attaccante aggiunge comandi SQL aggiuntivi alla query originale, consentendo interazioni non autorizzate con il database. Tali interazioni potrebbero includere estrazione, eliminazione o manipolazione dei dati, rappresentando un rischio significativo per la riservatezza, l'integrità e la disponibilità dei dati. Lo sfruttamento di questa vulnerabilità non richiede autenticazione, rendendola particolarmente pericolosa poiché può essere tentata da qualsiasi attaccante remoto in grado di inviare richieste HTTP al sito interessato.
Exploit con sqlmap, sostituendo http://example.com con l'URL di destinazione.
sqlmap -u 'http://example.com/?rest_route=/lms/stm-lms/order/items&author_id=111&user=555' --dbs --batch -p user
Lo script Go fornito nel repository può essere utilizzato per rilevare la presenza di questa vulnerabilità misurando il tempo di risposta a un payload di SQL injection appositamente costruito. Lo strumento costruisce un URL aggiungendo un payload di SQL injection all'URL di base fornito come argomento. Effettua quindi una richiesta HTTP GET a questo URL. Se il tempo di risposta è significativamente più lungo del normale (l'esempio utilizza 5 secondi come riferimento), ciò suggerisce che il tentativo di SQL injection potrebbe essere riuscito, indicando una potenziale vulnerabilità.
go run main.go http://example.com
Aggiornare il plugin WordPress MasterStudy LMS a una versione successiva alla 3.2.5, dove questa vulnerabilità è stata risolta. È sempre necessario validare e sanitizzare rigorosamente i parametri di input per prevenire vulnerabilità di SQL injection.
NVD - Dettaglio CVE-2024-1512
Tenable - CVE-2024-1512
Wordfence Avviso di Sicurezza - Vulnerabilità del Plugin MasterStudy LMS