---
id: CVE-2026-119113
title: >-
  GeoDirectory <= 2.8.199 - Authenticated (Subscriber+) Stored Cross-Site
  Scripting via 'post_content' Parameter
summary: >-
  The GeoDirectory – WP Business Directory Plugin and Classified Listings
  Directory plugin for WordPress is vulnerable to Stored Cross-Site Scripting
  via the listing description (post_content) in versions up to, and including,
  2.8.199 This…
severity: medium
cvss: 6.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N'
cvssSource: cna
cwe:
  - CWE-79
vendor: paoltaia
product: GeoDirectory – WP Business Directory Plugin and Classified Listings Directory
affected:
  - >-
    geodirectory_wp_business_directory_plugin_and_classified_listings_directory
    <= 2.8.199
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-30T17:30:38.947987Z'
published: '2026-10-30'
updated: '2026-10-30'
sourceUpdated: '2026-10-30T18:08:55.651Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-119113'
references:
  - url: >-
      https://www.wordfence.com/threat-intel/vulnerabilities/id/df5eb1b8-880d-4d7e-bdca-69bbd9c1ce5e?source=cve
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/includes/post-functions.php#L2032
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/includes/class-geodir-post-data.php#L823
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/includes/formatting-functions.php#L453
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/vendor/ayecode/wp-ayecode-ui/includes/inc/bs5-js.php#L256
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/includes/class-geodir-ajax.php#L821
  - url: >-
      https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.193/includes/class-geodir-post-data.php#L1666
  - url: 'https://github.com/AyeCode/geodirectory/archive/refs/heads/master.zip'
  - url: >-
      https://plugins.trac.wordpress.org/changeset/3773530/geodirectory/trunk/vendor/ayecode/wp-ayecode-ui/includes/inc/bs5-js.php
tags:
  - cve.org
epss: 0.00365
epssPercentile: 0.30491
ingestedAt: '2026-11-05T16:24:31.297Z'
---

## Overview

The GeoDirectory – WP Business Directory Plugin and Classified Listings Directory plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the listing description (post_content) in versions up to, and including, 2.8.199 This is due to insufficient input sanitization on save (the bundled geodir_kses_safe_embed_attributes() helper only neutralises data-embed-url, data-src and data-embed, while WordPress core wp_kses_post permits data-* attributes on standard HTML tags) combined with the AyeCode UI library initializing every [data-bs-toggle="popover-html"] element with { html: true, sanitize: false }, which inserts the attacker-controlled data-bs-content value into the popover body as HTML at render time. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

## Affected

- `geodirectory_wp_business_directory_plugin_and_classified_listings_directory <= 2.8.199`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
