CVE-2025-24555

7.1 HIGH

📋 TL;DR

This CVE describes a Cross-Site Request Forgery (CSRF) vulnerability in the Subscription DNA WordPress plugin that can lead to Stored Cross-Site Scripting (XSS). Attackers can trick authenticated administrators into executing malicious actions, potentially injecting persistent scripts into the website. All WordPress sites using Subscription DNA plugin versions up to 2.1 are affected.

💻 Affected Systems

Products:
  • Subscription DNA WordPress Plugin
Versions: n/a through 2.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires the Subscription DNA plugin to be installed and active on a WordPress site. The vulnerability is in the plugin's admin interface.

⚠️ 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 malicious JavaScript that steals administrator credentials, redirects users to malicious sites, or performs unauthorized administrative actions, potentially leading to complete site compromise.

🟠

Likely Case

Attackers would typically use this to inject advertising scripts, cryptocurrency miners, or credential-stealing payloads that affect all visitors to the vulnerable WordPress site.

🟢

If Mitigated

With proper CSRF protections and content security policies, the attack surface is reduced, though the vulnerability still exists in the codebase.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploitation requires tricking an authenticated administrator into clicking a malicious link or visiting a crafted page. The CSRF leads to stored XSS payload injection.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 2.1

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/subscriptiondna/vulnerability/wordpress-subscription-dna-plugin-2-1-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 'Subscription DNA' plugin. 4. Click 'Update Now' if available. 5. If no update is available, consider disabling or removing the plugin until a patched version is released.

🔧 Temporary Workarounds

Implement CSRF Tokens Manually

WordPress

Add CSRF protection to the plugin's admin forms by implementing nonce verification

Not applicable - requires code modification

Content Security Policy (CSP)

all

Implement a strict CSP header to mitigate XSS impact

Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' https://trusted.cdn.com;"
Or use WordPress security plugins to implement CSP

🧯 If You Can't Patch

  • Disable the Subscription DNA plugin immediately
  • Implement web application firewall (WAF) rules to block CSRF attempts and XSS payloads

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for Subscription DNA version. If version is 2.1 or earlier, you are vulnerable.

Check Version:

WordPress CLI: wp plugin list --name=subscriptiondna --field=version

Verify Fix Applied:

After updating, verify the plugin version is higher than 2.1 in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to Subscription DNA admin endpoints without referrer headers
  • Multiple failed CSRF token validations in WordPress debug logs

Network Indicators:

  • Unexpected JavaScript injections in Subscription DNA plugin pages
  • Cross-origin requests to Subscription DNA admin endpoints

SIEM Query:

source="wordpress" AND (uri_path="/wp-admin/admin-ajax.php" OR uri_path CONTAINS "subscriptiondna") AND http_method="POST" AND referrer IS NULL

🔗 References

📤 Share & Export