GeoDirectory <= 2.8.186 - Authenticated (Subscriber+) Stored Cross-Site Scripting via Listing Latitude and Longitude
- ID
- WPSEC-2026-0347
- Plugin
- GeoDirectory – WP Business Directory Plugin and Classified Listings Directory (geodirectory)
- Affected
- all versions before 2.8.187
- Remediation
- Update to 2.8.187 or later.
- CVSS 3.1
- CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
- Weakness
- CWE-79
- Usage
- Plugin Low · Affected versions Low among sites WPSec scans, 2026-10-22
- Attack surface
- GeoDirectory on WPSec AttackSurface
- Fix released
- Published
Description
The GeoDirectory plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the listing latitude and longitude fields in all versions up to, and including, 2.8.186. This is due to the coordinates being saved with only sanitize_text_field(), which keeps quote characters, and then being placed inside a JavaScript string in the onclick handler of the post distance badge with only esc_attr(), which does not prevent breaking out of the JavaScript string. This makes it possible for authenticated attackers, with subscriber-level access and above who can submit listings, to inject arbitrary web scripts that execute when a user clicks the distance badge of the listing.
References
- https://wpsec.com/vuln/WPSEC-2026-0347/
- https://plugins.svn.wordpress.org/geodirectory/tags/2.8.187/
- https://wordpress.org/plugins/geodirectory/
Published by WPSec. Provided as is, without warranty. Corrections: contact us.
This advisory as JSON or Markdown · All advisories: JSON, RSS