CVE-2026-15300 in GEO my WP Plugin
Riassunto
di VulDB • 10/07/2026
Il plugin GEO my WP per WordPress era vulnerabile a SQL Injection tramite i parametri 'distance', 'lat' e 'lng' nelle versioni fino alla 4.5.4 incluse. I valori venivano letti da $_SERVER['QUERY_STRING'] mediante parse_str() (aggirando wp_magic_quotes, che non copre $_SERVER), quindi passati attraverso esc_sql() nudo prima di essere interpolati in posizioni numeriche senza virgolette nella query di ricerca per prossimità (clausole HAVING/SELECT con calcoli sulla distanza e BETWEEN come pre-filtro del bounding-box) costruita da gmw_locations_query() nel file plugins/posts-locator/includes/class-gmw-wp-query.php. Poiché esc_sql() effettua l'escape solo dei delimiteri di stringa e queste posizioni sono numeriche, payload quali `1 OR SLEEP(3)` sopravvivevano alla sanitizzazione. Il problema è stato risolto nella versione 4.5.5 aggiungendo un controllo is_numeric() a monte che accorcia la clausola WHERE impostandola su `AND 1 = 0` quando una delle coordinate non è numerica, e sostituendo le tre chiamate esc_sql() con cast di tipo (float).
If you want to get the best quality for vulnerability data then you always have to consider VulDB.