CVE-2024-43981

4.3 MEDIUM

📋 TL;DR

This CVE describes a missing authorization vulnerability in the GeoDirectory WordPress plugin that allows attackers to bypass access controls. It affects all WordPress sites running GeoDirectory versions up to 2.3.70, potentially allowing unauthorized access to restricted functionality.

💻 Affected Systems

Products:
  • AyeCode - WP Business Directory Plugins GeoDirectory
Versions: n/a through 2.3.70
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all WordPress installations using vulnerable GeoDirectory versions regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could modify directory listings, delete business entries, or access administrative functions without proper authentication, potentially defacing or damaging the business directory.

🟠

Likely Case

Unauthorized users could view or modify business directory content they shouldn't have access to, compromising data integrity and privacy.

🟢

If Mitigated

With proper access controls and authentication mechanisms in place, only authorized users can perform directory operations.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires understanding of WordPress plugin structure but doesn't require advanced technical skills.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.3.71 or later

Vendor Advisory: https://patchstack.com/database/vulnerability/geodirectory/wordpress-geodirectory-plugin-2-3-70-broken-access-control-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel
2. Navigate to Plugins > Installed Plugins
3. Find GeoDirectory plugin
4. Click 'Update Now' if update is available
5. Alternatively, download version 2.3.71+ from WordPress repository and manually update

🔧 Temporary Workarounds

Temporary Plugin Deactivation

all

Disable the GeoDirectory plugin until patched to prevent exploitation

wp plugin deactivate geodirectory

Access Restriction via .htaccess

linux

Restrict access to GeoDirectory plugin directories

# Add to .htaccess in wp-content/plugins/geodirectory/
Order Deny,Allow
Deny from all
Allow from 127.0.0.1

🧯 If You Can't Patch

  • Implement strict network access controls to limit who can access the WordPress admin interface
  • Enable detailed logging and monitoring for unauthorized access attempts to GeoDirectory functionality

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > GeoDirectory version. If version is 2.3.70 or lower, you are vulnerable.

Check Version:

wp plugin get geodirectory --field=version

Verify Fix Applied:

After updating, verify GeoDirectory version shows 2.3.71 or higher in WordPress plugins list.

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized POST requests to GeoDirectory admin endpoints
  • Multiple failed authentication attempts followed by successful directory modifications

Network Indicators:

  • Unusual traffic patterns to /wp-content/plugins/geodirectory/ endpoints from unauthenticated users

SIEM Query:

source="wordpress.log" AND ("geodirectory" AND ("admin" OR "ajax")) AND status=200 AND user="unauthenticated"

🔗 References

📤 Share & Export