CVE-2025-4127

6.4 MEDIUM

📋 TL;DR

This vulnerability allows authenticated WordPress users with Contributor-level access or higher to inject malicious scripts into the WP SEO Structured Data Schema plugin's 'Price Range' parameter. The scripts are stored and execute when administrators access the plugin settings page, potentially compromising administrative accounts. All WordPress sites using vulnerable plugin versions are affected.

💻 Affected Systems

Products:
  • WP SEO Structured Data Schema plugin for WordPress
Versions: All versions up to and including 2.7.11
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. Contributor-level or higher user accounts are needed for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Administrator account takeover leading to full site compromise, data theft, malware distribution, or complete website defacement.

🟠

Likely Case

Session hijacking of administrator accounts, credential theft, or injection of malicious content into the WordPress admin interface.

🟢

If Mitigated

Limited to plugin settings page only, with no impact on front-end users if proper user role management is enforced.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but is straightforward once an attacker has Contributor-level credentials.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.7.12 or later

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3289009/wp-seo-structured-data-schema

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'WP SEO Structured Data Schema' and click 'Update Now'. 4. Verify plugin version is 2.7.12 or higher.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily deactivate the WP SEO Structured Data Schema plugin until patched

wp plugin deactivate wp-seo-structured-data-schema

Restrict user roles

all

Limit Contributor-level access and review user permissions

🧯 If You Can't Patch

  • Implement strict input validation and output escaping for the 'Price Range' parameter
  • Apply web application firewall rules to block XSS payloads targeting the plugin

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for WP SEO Structured Data Schema version 2.7.11 or lower

Check Version:

wp plugin get wp-seo-structured-data-schema --field=version

Verify Fix Applied:

Confirm plugin version is 2.7.12 or higher in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to plugin settings page with script tags in parameters
  • Multiple failed login attempts followed by successful Contributor-level login

Network Indicators:

  • HTTP requests containing script payloads in 'price_range' parameter
  • Unusual admin panel access patterns

SIEM Query:

source="wordpress.log" AND ("wp-seo-structured-data-schema" OR "price_range") AND ("<script>" OR "javascript:")

🔗 References

📤 Share & Export