CVE-2023-30487

7.1 HIGH

📋 TL;DR

Unauthenticated Reflected Cross-Site Scripting (XSS) vulnerability in the ThimPress LearnPress Export Import WordPress plugin allows attackers to inject malicious scripts via crafted requests. This affects WordPress sites using LearnPress Export Import plugin version 4.0.2 and earlier. Attackers can execute arbitrary JavaScript in victims' browsers when they visit malicious links.

💻 Affected Systems

Products:
  • ThimPress LearnPress Export Import WordPress Plugin
Versions: <= 4.0.2
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects WordPress installations with the vulnerable plugin active. No specific OS or server configuration required.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers steal administrator session cookies, take over WordPress admin accounts, install backdoors, deface websites, or redirect visitors to malicious sites.

🟠

Likely Case

Attackers steal user session cookies, perform actions on behalf of users, or redirect users to phishing pages.

🟢

If Mitigated

Limited impact with proper Content Security Policy (CSP) headers, input validation, and output encoding in place.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Reflected XSS vulnerabilities are commonly exploited via phishing or malicious links. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.0.3 or later

Vendor Advisory: https://patchstack.com/database/vulnerability/learnpress-import-export/wordpress-learnpress-export-import-plugin-4-0-2-cross-site-scripting-xss-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Go to Plugins → Installed Plugins. 3. Find 'LearnPress Export Import'. 4. Click 'Update Now' if available. 5. Alternatively, download latest version from WordPress repository and replace plugin files.

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily deactivate the vulnerable plugin until patched.

wp plugin deactivate learnpress-import-export

Implement Content Security Policy

all

Add CSP headers to restrict script execution sources.

Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self'"
Add to nginx config: add_header Content-Security-Policy "default-src 'self'; script-src 'self'";

🧯 If You Can't Patch

  • Implement Web Application Firewall (WAF) rules to block XSS payloads in requests.
  • Restrict plugin access to trusted IP addresses only using .htaccess or server configuration.

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin → Plugins → Installed Plugins. Look for 'LearnPress Export Import' version <= 4.0.2.

Check Version:

wp plugin get learnpress-import-export --field=version

Verify Fix Applied:

Confirm plugin version is 4.0.3 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual GET/POST requests with script tags or JavaScript payloads in query parameters
  • Multiple 404 errors for plugin-specific endpoints with suspicious parameters

Network Indicators:

  • HTTP requests containing <script>, javascript:, or encoded XSS payloads in URL parameters
  • Outbound connections to unknown domains following plugin page visits

SIEM Query:

source="web_server" AND (url="*learnpress-import-export*" AND (url="*<script>*" OR url="*javascript:*" OR url="*%3Cscript%3E*"))

🔗 References

📤 Share & Export