CVE-2021-43409

9.3 CRITICAL

📋 TL;DR

The WPO365 | LOGIN WordPress plugin (versions up to 15.3) has a stored XSS vulnerability where anonymous users can inject malicious scripts. When a WordPress administrator views the dashboard, these scripts execute with admin privileges, potentially allowing attackers to take over the WordPress site.

💻 Affected Systems

Products:
  • WPO365 | LOGIN WordPress plugin
Versions: All versions up to and including 15.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled. The vulnerability is present in default configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete compromise of the WordPress installation: attacker creates new admin accounts, changes settings, installs backdoors, and potentially compromises the underlying server.

🟠

Likely Case

Attacker gains administrative access to WordPress, modifies content, steals sensitive data, and uses the site for further attacks.

🟢

If Mitigated

If proper input validation and output encoding are implemented, the XSS payloads would be neutralized before execution.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires anonymous users to submit malicious payloads and an administrator to view the affected dashboard area.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 15.4 or later

Vendor Advisory: https://www.wpo365.com/change-log/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'WPO365 | LOGIN' plugin. 4. Click 'Update Now' if available. 5. If no update appears, download version 15.4+ from WordPress.org or wpo365.com and manually update.

🔧 Temporary Workarounds

Disable the vulnerable plugin

all

Temporarily disable the WPO365 | LOGIN plugin until patched

wp plugin deactivate wpo365-login

Implement WAF rules

all

Add web application firewall rules to block XSS payloads targeting the vulnerable endpoint

🧯 If You Can't Patch

  • Restrict anonymous user access to the plugin's vulnerable functionality
  • Implement Content Security Policy (CSP) headers to mitigate XSS impact

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for WPO365 | LOGIN version. If version is 15.3 or lower, you are vulnerable.

Check Version:

wp plugin get wpo365-login --field=version

Verify Fix Applied:

After updating, verify the plugin version shows 15.4 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to plugin endpoints containing script tags or JavaScript payloads
  • Multiple failed authentication attempts followed by successful admin actions

Network Indicators:

  • HTTP requests containing malicious script payloads to plugin-specific endpoints
  • Unexpected outbound connections from WordPress server after admin login

SIEM Query:

source="wordpress" AND (uri="*wpo365*" OR plugin="wpo365-login") AND (body="*<script>*" OR body="*javascript:*" OR body="*onload=*" OR body="*onerror=*")

🔗 References

📤 Share & Export