Skip to main content

GeoDirectory Plugin CVE-2025-15677

| EUVDEUVD-2025-210616 LOW
Cross-site Scripting (XSS) (CWE-79)
2026-08-05 WPScan GHSA-x6r7-w9f9-44fh
3.5
CVSS 3.1 · Vendor: WPScan
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Obtain WordPress editor credentials
  2. Delivery
    Access GeoDirectory place-category settings
  3. Exploit
    Inject stored XSS payload into category field
  4. Install
    Payload persists in WordPress database
  5. C2
    Admin visits affected admin page
  6. Execute
    Malicious script executes in admin browser session
  7. Impact
    Harvest session token or perform unauthorized admin actions

Vulnerability Assessment

Weakness
CWE
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an authenticated WordPress user account with at minimum editor-level role privileges - unauthenticated or subscriber-level access is insufficient. The attacker must have write access to the GeoDirectory plugin's place-category settings interface. A victim administrator must subsequently visit the affected admin page for the stored payload to execute, satisfying the UI:R requirement. The vulnerability has the greatest security significance in WordPress multisite environments where the unfiltered_html capability is intentionally withheld from editors as a trust boundary; in standard single-site installs where editors are implicitly trusted with HTML content, the incremental security impact is limited. No special network conditions, non-standard ports, or specific server configurations are required beyond a functioning WordPress installation with GeoDirectory active.

Impact

The official CVSS 3.1 score of 3.5 (Low) accurately reflects the constrained attack surface: PR:H requires the attacker to already hold editor-level or higher WordPress credentials, and UI:R requires a more-privileged administrator to visit the poisoned admin page. EPSS at 0.16% (6th percentile) is consistent with this low practical exploitation probability. SSVC reinforces deprioritization: exploitation status is 'none,' the attack is not automatable, and technical impact is only partial. The availability of a public POC via WPScan marginally elevates the risk over a no-POC baseline, but does not change the fundamental constraint that a privileged insider or compromised editor account is a prerequisite. Real-world priority is highest in WordPress multisite environments where editor role separation is a deliberate security control - in single-site installs where editors are already implicitly trusted, the incremental risk is negligible. No conflict between CVSS metrics and the description is detected.

Exploit ScenarioDerived

An attacker with a compromised or maliciously obtained WordPress editor account navigates to the GeoDirectory place-category settings and injects a JavaScript payload (e.g., a cookie-stealing script) into the category name field. When a site administrator later visits the affected admin page, the stored payload executes in their browser, potentially capturing the admin session token for account takeover. A public POC demonstrating this attack path is available via WPScan.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 05, 2026

Stored Cross-Site Scripting in GeoDirectory WordPress plugin before 2.8.110 allows authenticated editors and higher-privileged users to persist malicious JavaScript via the place-category setting, which is rendered unsanitized on admin pages. The vulnerability is specifically significant in WordPress multisite deployments where the unfiltered_html capability is intentionally revoked for editors, as it bypasses that restriction through the plugin's own inadequate output handling. A public proof-of-concept exists via WPScan, though EPSS at 0.16% (6th percentile) and SSVC exploitation status of 'none' indicate no confirmed active exploitation at time of analysis.

RemediationAI

Update the GeoDirectory WordPress plugin to version 2.8.110 or later, which contains the vendor-released patch addressing this stored XSS. This is the definitive and recommended fix. If immediate patching is not feasible, restrict the editor role to only fully trusted users, and consider using a role management plugin to remove place-category edit permissions for sub-administrator roles as a temporary compensating control - note this workaround may disrupt legitimate content management workflows. The WPScan advisory with full technical details is available at https://wpscan.com/vulnerability/bb6daced-3ee3-4ec7-a221-9981cd85285a/. No workaround fully substitutes for upgrading to 2.8.110.

Affected VersionsENISA

GeoDirectory 0 <2.8.110

Affected Packages

euvd geodirectory fix: 2.8.110

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is classified under CWE-79 (Improper Neutralization of Input During Web Page Generation - Stored XSS), arising from the GeoDirectory plugin's failure to sanitize and escape the place-category setting value before rendering it in WordPress admin pages. GeoDirectory (CPE: cpe:2.3:a:unknown:geodirectory:*:*:*:*:*:*:*:*) is a WordPress directory listing plugin. WordPress multisite networks typically restrict the unfiltered_html capability for sub-site editors as a security boundary; this vulnerability undermines that boundary because the XSS vector lies within the plugin's output logic rather than WordPress core's input filtering pipeline. The attack surface is the admin UI, and persistence of the payload in the database is what makes this stored rather than reflected XSS.

Know when Geodirectory gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (WPScan) PRIMARY 3.5 LOW
AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N
vuln.today AI 3.5 LOW

Editor authentication required (PR:H) and admin must visit the poisoned page (UI:R); only limited confidentiality and integrity impact via stored XSS with no availability effect.

3.1 AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:H/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (WPScan).

CVSS VectorVendor: WPScan

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

3
Patch available
Aug 05, 2026 - 07:01 EUVD
CVE Published
Aug 05, 2026 - 06:00 cve.org
UNKNOWN (no severity yet)
CVE Published
Aug 05, 2026 - 06:00 cve.org
LOW 3.5

DescriptionCVE.org

The GeoDirectory WordPress plugin before 2.8.110 does not sanitise and escape a place-category setting before outputting it back in an admin page, allowing high-privilege users such as editors and above to perform Stored Cross-Site Scripting attacks even when the unfiltered_html capability is disallowed (for example in a multisite setup).

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Medium
widely used WordPress business directory plugin with substantial active install base
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +18
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2026-16968 MEDIUM POC
6.5 Aug 05

Information disclosure in the GeoDirectory WordPress plugin (before 2.8.168) exposes the email addresses of all register

CVE-2025-6200 MEDIUM POC
5.9 Jul 11

The GeoDirectory WordPress plugin before 2.8.120 does not validate and escape some of its shortcode attributes before o

CVE-2021-24720 MEDIUM POC
5.4 Oct 11

The GeoDirectory Business Directory WordPress plugin before 2.1.1.3 was vulnerable to Authenticated Stored Cross-Site Sc

CVE-2026-84813 CRITICAL
9.3 Sep 03

SQL injection in the GeoDirectory WordPress plugin (versions 2.8.174 and earlier) lets unauthenticated remote attackers

CVE-2026-39512 CRITICAL
9.3 Jun 15

Unauthenticated SQL injection in the GeoDirectory WordPress plugin (versions up to and including 2.8.152) allows remote

CVE-2026-81271 HIGH
8.8 Aug 27

Cross-Site Request Forgery in the GeoDirectory WordPress plugin (versions ≤ 2.8.176) enables remote unauthenticated atta

CVE-2024-43981 HIGH
8.8 Nov 01

Missing Authorization vulnerability in AyeCode - WP Business Directory Plugins GeoDirectory allows Exploiting Incorrectl

CVE-2024-43145 HIGH
8.8 Aug 18

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in AyeCode Ltd GeoDir

CVE-2023-50845 HIGH
7.6 Dec 28

Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in AyeCode - WordPres

CVE-2023-0278 HIGH
7.2 Feb 27

The GeoDirectory WordPress plugin before 2.2.24 does not properly sanitise and escape a parameter before using it in a S

CVE-2026-66604 HIGH
7.1 Aug 20

Cross-site scripting in the GeoDirectory WordPress plugin (versions ≤ 2.8.173) enables unauthenticated remote attackers

CVE-2026-68565 MEDIUM
6.5 Aug 18

Stored Cross-Site Scripting in the GeoDirectory WordPress plugin (versions <= 2.8.172) enables authenticated contributor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy