CVE-2025-32644

7.1 HIGH

📋 TL;DR

A Cross-Site Request Forgery (CSRF) vulnerability in the IP2Location World Clock WordPress plugin allows attackers to trick authenticated administrators into performing actions that lead to stored cross-site scripting (XSS). This affects WordPress sites running IP2Location World Clock version 1.1.9 and earlier. Attackers can inject malicious scripts that execute when other users view affected pages.

💻 Affected Systems

Products:
  • IP2Location World Clock WordPress Plugin
Versions: n/a through 1.1.9
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. Attack requires tricking an authenticated administrator.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could inject persistent malicious JavaScript that steals administrator credentials, redirects users to malicious sites, or performs administrative actions on behalf of authenticated users, potentially leading to complete site compromise.

🟠

Likely Case

Attackers trick administrators into adding malicious JavaScript to site pages, which then executes in visitors' browsers, potentially stealing session cookies or performing unauthorized actions.

🟢

If Mitigated

With proper CSRF protections and input validation, the vulnerability would be prevented, limiting impact to failed exploitation attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires social engineering to trick authenticated users. The vulnerability chain (CSRF to stored XSS) is well-documented in the reference.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.2.0 or later

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/ip2location-world-clock/vulnerability/wordpress-ip2location-world-clock-plugin-1-1-9-csrf-to-stored-xss-vulnerability?_s_id=cve

Restart Required: No

Instructions:

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

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily disable the vulnerable plugin until patched

wp plugin deactivate ip2location-world-clock

Implement CSRF Protection

all

Add WordPress nonce verification to plugin forms

🧯 If You Can't Patch

  • Disable the IP2Location World Clock plugin immediately
  • Implement web application firewall rules to block suspicious form submissions

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for IP2Location World Clock version 1.1.9 or earlier

Check Version:

wp plugin get ip2location-world-clock --field=version

Verify Fix Applied:

Verify plugin version is 1.2.0 or higher in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to wp-admin/admin-ajax.php with plugin-specific actions
  • Multiple failed CSRF token validations

Network Indicators:

  • Unexpected JavaScript injection in plugin settings or output

SIEM Query:

source="wordpress.log" AND "ip2location-world-clock" AND ("admin-ajax" OR "wp_nonce")

🔗 References

📤 Share & Export