CVE-2026-15300: GEO my WP <= 4.5.4 - Unauthenticated SQL Injection via 'distance' / 'lat' / 'lng' Parameters
The GEO my WP plugin for WordPress was vulnerable to SQL Injection via the 'distance', 'lat', and 'lng' parameters in versions up to, and including, 4.5.4. The values were read from $_SERVER['QUERY_STRING'] via parse_str() (bypassing wp_magic_quotes, which does not cover $_SERVER), then passed through bare esc_sql() before being interpolated into unquoted numeric positions in the proximity-search query (HAVING/SELECT clause distance math, BETWEEN bounding-box pre-filter) built by gmw_locations_query() in plugins/posts-locator/includes/class-gmw-wp-query.php. Because esc_sql() only escapes string delimiters and these positions are numeric, payloads such as `1 OR SLEEP(3)` survived sanitization. Fixed in 4.5.5 by adding an upstream is_numeric() guard that short-circuits the WHERE clause to `AND 1 = 0` when either coordinate is non-numeric, and by replacing the three esc_sql() calls with (float) casts.
Security readout for executives and security teams
Plain-English summary
A WordPress plugin vulnerability lets an unauthenticated visitor manipulate location-search parameters used in database queries. For sites using GEO my WP at or below 4.5.4, this can alter database behavior and potentially disrupt service. The source bundle reports a fix in 4.5.5. No active exploitation is evidenced by KEV or the provided sources.
Executive priority
Treat this as an urgent internet-facing WordPress risk. Prioritize patching affected sites because exploitation needs no account and can impact database integrity or availability. Evidence of active exploitation is not provided, so response should focus on rapid upgrade, exposure confirmation, and monitoring.
Technical view
The flaw is CWE-89 SQL injection in GEO my WP proximity search. distance, lat, and lng were parsed from $_SERVER['QUERY_STRING'], passed through bare esc_sql(), then interpolated into unquoted numeric SQL positions. The bundle states 4.5.5 added numeric validation and float casting.
Likely exposure
Public WordPress sites running GEO my WP versions up to and including 4.5.4 appear exposed, especially where proximity-search functionality is reachable by unauthenticated users. The affected metadata in the bundle is inconsistent, so confirm installed plugin version directly.
Exploitation context
The CVSS vector indicates network access, low complexity, no privileges, and no user interaction. KEV is false, and the provided sources do not show active exploitation. The vulnerability is still urgent because unauthenticated SQL injection is usually easy to probe at internet scale.
Researcher notes
The vulnerable path is documented in class-gmw-wp-query.php for tag 4.5.4. The fix references show numeric validation and float casting in tag 4.5.5. The bundle’s affected-product metadata appears incomplete, so rely on plugin version and code verification rather than CPE coverage.
Mitigation direction
Upgrade GEO my WP to version 4.5.5 or later.
If immediate upgrade is impossible, disable affected proximity-search functionality.
Restrict unauthenticated access to vulnerable search routes where operationally feasible.
Monitor vendor and Wordfence guidance for any additional remediation notes.
Review web and database logs for suspicious location-search parameter activity.
Validation and detection
Inventory WordPress sites using the GEO my WP plugin.
Confirm the installed GEO my WP version is 4.5.5 or later.
Identify public pages or endpoints exposing proximity-search parameters.
Review logs for abnormal distance, lat, or lng values.
Verify the 4.5.5 code path validates numeric coordinates before query construction.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-89: Database access and collection lookup
Injection into data stores can inform collection, data access, and exfiltration detection reviews. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references database injection or access, so collection and exfiltration review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
5Timeline events
1ADP providers
4Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: total
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.