CVE-2024-13700

6.4 MEDIUM

📋 TL;DR

The Embed Swagger UI WordPress plugin has a stored XSS vulnerability in all versions up to 1.0.0. Authenticated attackers with contributor-level access or higher can inject malicious scripts via the 'wpsgui' shortcode, which execute when users view affected pages. This affects WordPress sites using this plugin.

💻 Affected Systems

Products:
  • Embed Swagger UI WordPress Plugin
Versions: All versions up to and including 1.0.0
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. Contributor-level or higher access is needed for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal admin credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.

🟠

Likely Case

Attackers inject malicious scripts to steal user session cookies, perform actions as authenticated users, or display phishing content.

🟢

If Mitigated

With proper input validation and output escaping, the vulnerability is prevented, and only legitimate Swagger UI content is displayed.

🌐 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 privileges.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.0.1

Vendor Advisory: https://wordpress.org/plugins/embed-swagger-ui/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Embed Swagger UI' and click 'Update Now'. 4. Verify the plugin version is 1.0.1 or higher.

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily deactivate the Embed Swagger UI plugin until patched.

wp plugin deactivate embed-swagger-ui

Restrict User Roles

all

Limit contributor-level access to trusted users only.

🧯 If You Can't Patch

  • Remove the plugin entirely if not needed.
  • Implement a web application firewall (WAF) with XSS protection rules.

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel under Plugins > Installed Plugins for Embed Swagger UI version 1.0.0 or lower.

Check Version:

wp plugin get embed-swagger-ui --field=version

Verify Fix Applied:

Confirm the plugin version is 1.0.1 or higher in the WordPress admin plugins list.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to WordPress admin-ajax.php or admin-post.php with 'wpsgui' parameters.
  • Suspicious user activity from contributor accounts.

Network Indicators:

  • Unexpected JavaScript payloads in HTTP requests to WordPress pages.

SIEM Query:

source="wordpress.log" AND ("wpsgui" OR "embed-swagger-ui") AND ("script" OR "onerror" OR "javascript:")

🔗 References

📤 Share & Export