CVE-2026-104899: high-severity vulnerability in paoltaia GeoDirectory – WP Business Directory…
GeoDirectory <= 2.8.187 - Unauthenticated Local File Inclusion via 'design_type' Parameter
Published · Updated
Follow this CVE+ Monitor GeoDirectory – WP Business Directory Plugin and Classified Listings Directory
E-mail alert when it lands in KEV, gets a public PoC or its score goes up.
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 8.1epss 0.6%
The GeoDirectory – WP Business Directory Plugin and Classified Listings Directory plugin for WordPress is vulnerable to Local File Inclusion in all versions up to, and including, 2.8.187 via the 'design_type' parameter parameter. This makes it possible for unauthenticated attackers to include and execute arbitrary .php files on the server, allowing the execution of any PHP code in those files. This can be used to bypass access controls, obtain sensitive data, or achieve code execution in cases where .php file types can be uploaded and included. The required nonce is trivially obtainable by any anonymous visitor, as the geodir_basic_nonce value is localized to every public frontend page via the geodir_params script object, meaning no authentication, user interaction, or specific site content is required to exploit this vulnerability.
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected products
paoltaia · GeoDirectory – WP Business Directory Plugin and Classified Listings DirectoryRelated CVEs — paoltaia GeoDirectory – WP Business Directory…
In the same product, most dangerous first.
CVE-2026-19091HIGHGeoDirectory <= 2.8.169 - Authenticated (Subscriber+) Arbitrary File Deletion via 'post_type' Parameter via Query-String Bypass in geodir_save_post + geodir_delete_revisionEPSS 1.1%CVE-2024-13507HIGHGeoDirectory – WP Business Directory Plugin and Classified Listings Directory <= 2.8.97 - Unauthenticated SQL InjectionEPSS 0.5%CVE-2024-13506MEDIUMGeoDirectory – WP Business Directory Plugin and Classified Listings Directory <= 2.8.97 - Authenticated (Subscriber+) Stored Cross-Site Scripting via Display_name ParameterEPSS 0.4%CVE-2026-118635MEDIUMGeoDirectory <= 2.8.198 - Unauthenticated Shortcode Injection via 'pagination_info' ParameterEPSS 0.4%CVE-2026-103913HIGHGeoDirectory <= 2.8.186 - Unauthenticated SQL Injection via 'latitude' Parameter via Stored Pending ListingEPSS 0.4%CVE-2026-119113MEDIUMGeoDirectory <= 2.8.199 - Authenticated (Subscriber+) Stored Cross-Site Scripting via 'post_content' ParameterEPSS 0.4%
References
https://github.com/AyeCode/geodirectory/commit/2357d640dad7973988742a6706b3a857b6b05d52https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.187/includes/class-geodir-ajax.php#L709https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.187/includes/template-functions.php#L143https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.187/includes/template-functions.php#L199https://plugins.trac.wordpress.org/browser/geodirectory/tags/2.8.187/includes/widgets/class-geodir-widget-tags.php#L1064https://plugins.trac.wordpress.org/changeset/3725126/geodirectory/trunk/includes/widgets/class-geodir-widget-tags.phphttps://www.wordfence.com/threat-intel/vulnerabilities/id/ac817587-1403-46e2-84bf-be5fcadc5425?source=cve