CVE-2025-31460

7.1 HIGH

📋 TL;DR

A Cross-Site Request Forgery (CSRF) vulnerability in the OmniLeads Scripts and Tags Manager WordPress plugin allows attackers to inject malicious scripts that execute when users visit affected pages. This affects WordPress sites using OmniLeads Scripts and Tags Manager plugin versions up to 1.3. Attackers can perform stored cross-site scripting (XSS) attacks through CSRF.

💻 Affected Systems

Products:
  • OmniLeads Scripts and Tags Manager WordPress Plugin
Versions: n/a through 1.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. Attack requires user interaction (visiting malicious page while authenticated).

⚠️ 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 phishing sites, or performs administrative actions on behalf of authenticated users, potentially leading to complete site compromise.

🟠

Likely Case

Attackers inject tracking scripts, deface website content, or steal session cookies from authenticated users visiting affected pages.

🟢

If Mitigated

With proper CSRF protections and content security policies, the attack surface is reduced to authenticated users only, limiting impact to user-specific data.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires tricking authenticated users into visiting a malicious page. The CSRF leads to stored XSS payload injection.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 1.3

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/omnileads-scripts-and-tags-manager/vulnerability/wordpress-omnileads-scripts-and-tags-manager-plugin-1-3-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 'OmniLeads Scripts and Tags Manager'. 4. Click 'Update Now' if update available. 5. If no update available, deactivate and remove plugin immediately.

🔧 Temporary Workarounds

Implement CSRF Tokens

WordPress

Add CSRF protection to all plugin forms and actions

Requires code modification: Add nonce verification to plugin PHP files

Content Security Policy

all

Implement strict CSP headers to prevent script execution from unauthorized sources

Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'"
Or use WordPress security plugin to configure CSP

🧯 If You Can't Patch

  • Disable or remove the OmniLeads Scripts and Tags Manager 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 OmniLeads Scripts and Tags Manager version 1.3 or earlier

Check Version:

wp plugin list --name='OmniLeads Scripts and Tags Manager' --field=version

Verify Fix Applied:

Verify plugin version is higher than 1.3 or plugin is completely removed

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /wp-admin/admin-ajax.php with plugin-specific actions
  • Multiple failed nonce verification attempts in WordPress debug logs

Network Indicators:

  • Cross-origin requests to plugin endpoints without proper referrer headers
  • JavaScript injection patterns in HTTP requests

SIEM Query:

source="wordpress.log" AND ("admin-ajax.php" AND "omnileads") AND (status=200 OR status=403)

🔗 References

📤 Share & Export