CVE-2025-13962
📋 TL;DR
The Divelogs Widget WordPress plugin has a stored cross-site scripting vulnerability in all versions up to 1.5. Authenticated attackers with contributor-level access or higher can inject malicious scripts via the 'latestdive' shortcode, which execute when users view affected pages. This affects all WordPress sites using vulnerable versions of the plugin.
💻 Affected Systems
- Divelogs Widget WordPress Plugin
⚠️ 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.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal administrator credentials, redirect users to malicious sites, deface websites, or perform actions on behalf of authenticated users.
Likely Case
Attackers with contributor access inject malicious scripts that steal session cookies or redirect users to phishing pages.
If Mitigated
With proper input validation and output escaping, the vulnerability is prevented entirely.
🎯 Exploit Status
Exploitation requires authenticated access at contributor level or higher. The vulnerability is in a shortcode handler with insufficient sanitization.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.6 or later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3415821/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find Divelogs Widget and update to version 1.6 or later. 4. If update not available, deactivate and delete the plugin.
🔧 Temporary Workarounds
Remove Contributor Access
allTemporarily restrict contributor-level user creation and review existing contributor accounts.
Disable Plugin
linuxDeactivate the Divelogs Widget plugin until patched.
wp plugin deactivate divelogs-widget
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block XSS payloads
- Review and audit all posts/pages for suspicious content in shortcodes
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel > Plugins > Installed Plugins for Divelogs Widget version 1.5 or earlier.
Check Version:
wp plugin list --name=divelogs-widget --field=version
Verify Fix Applied:
Verify plugin version is 1.6 or later in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to WordPress admin-ajax.php with divelogs-widget parameters
- Multiple failed login attempts followed by successful contributor login
Network Indicators:
- HTTP requests containing malicious script tags in 'latestdive' shortcode parameters
SIEM Query:
source="wordpress.log" AND ("divelogs-widget" OR "latestdive") AND ("script" OR "onerror" OR "javascript:")
🔗 References
- https://plugins.trac.wordpress.org/browser/divelogs-widget/tags/1.5/divelogs-widget.php#L51
- https://plugins.trac.wordpress.org/browser/divelogs-widget/trunk/divelogs-widget.php#L51
- https://plugins.trac.wordpress.org/changeset/3415821/
- https://www.wordfence.com/threat-intel/vulnerabilities/id/cbb3378a-d3e8-4a31-9ed2-f580960878cf?source=cve