CVE-2025-10128

6.4 MEDIUM

📋 TL;DR

This stored XSS vulnerability in the Eulerpool Research Systems WordPress plugin allows authenticated attackers with contributor-level access or higher to inject malicious scripts into website pages. When users visit compromised pages, the scripts execute in their browsers, potentially stealing credentials or performing unauthorized actions. All WordPress sites using this plugin version 4.0.1 or earlier are affected.

💻 Affected Systems

Products:
  • Eulerpool Research Systems WordPress Plugin
Versions: All versions up to and including 4.0.1
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. Contributor-level authentication or higher is needed for exploitation.

⚠️ 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 steal administrator credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.

🟠

Likely Case

Attackers with contributor access inject malicious scripts to steal user session cookies or credentials, potentially compromising user accounts.

🟢

If Mitigated

With proper input validation and output escaping, malicious scripts would be neutralized before execution, preventing exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access (contributor role or higher) and knowledge of WordPress shortcode usage.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 4.0.1

Vendor Advisory: https://plugins.trac.wordpress.org/browser/alleaktien-quantitativ/trunk/aaq-fundamentals-plugin.php#L36

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Eulerpool Research Systems' plugin. 4. Click 'Update Now' if update available. 5. If no update available, deactivate and remove plugin until patched version is released.

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily deactivate the vulnerable plugin until patched version is available

wp plugin deactivate alleaktien-quantitativ

Remove Contributor Role Access

all

Temporarily restrict contributor-level users from accessing the site to prevent exploitation

wp user list --role=contributor --field=ID | xargs wp user set-role {ID} subscriber

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block XSS payloads in plugin parameters
  • Monitor and audit user activity for suspicious shortcode modifications

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → Installed Plugins for 'Eulerpool Research Systems' plugin version 4.0.1 or earlier

Check Version:

wp plugin get alleaktien-quantitativ --field=version

Verify Fix Applied:

Verify plugin version is higher than 4.0.1 in WordPress admin panel or using wp-cli: wp plugin get alleaktien-quantitativ --field=version

📡 Detection & Monitoring

Log Indicators:

  • Unusual modifications to posts/pages containing 'aaq' shortcode
  • Multiple failed login attempts followed by successful contributor-level login

Network Indicators:

  • HTTP requests containing suspicious script tags in 'aaq' shortcode parameters
  • Outbound connections to unknown domains from WordPress pages

SIEM Query:

source="wordpress.log" AND ("aaq" NEAR "script" OR "onerror" OR "onload")

🔗 References

📤 Share & Export