CVE-2023-50905

7.1 HIGH

📋 TL;DR

This stored cross-site scripting (XSS) vulnerability in the WP Activity Log WordPress plugin allows attackers to inject malicious scripts into web pages that are then executed when viewed by other users. It affects all versions up to 4.6.1. Any WordPress site using the vulnerable plugin is at risk.

💻 Affected Systems

Products:
  • Melapress WP Activity Log (formerly WP Security Audit Log)
Versions: All versions up to and including 4.6.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin activated. The vulnerability is in the plugin's input handling during web page generation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator session cookies, perform actions as administrators, deface websites, or redirect users to malicious sites, potentially leading to complete site compromise.

🟠

Likely Case

Attackers inject malicious scripts that steal user session cookies or credentials when users view affected pages, leading to account takeover.

🟢

If Mitigated

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

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Stored XSS vulnerabilities are commonly exploited. While no public PoC is confirmed, the vulnerability type suggests exploitation is straightforward for attackers with basic web skills.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.6.2 or later

Vendor Advisory: https://patchstack.com/database/vulnerability/wp-security-audit-log/wordpress-wp-activity-log-plugin-plugin-4-6-1-cross-site-scripting-xss-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'WP Activity Log' and click 'Update Now' if available. 4. Alternatively, download version 4.6.2+ from WordPress.org and manually update via FTP.

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily disable the WP Activity Log plugin until patched

wp plugin deactivate wp-security-audit-log

Content Security Policy

all

Implement a strict Content Security Policy header to mitigate XSS

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
  • Restrict plugin access to trusted users only using WordPress roles

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for WP Activity Log version. If version is 4.6.1 or lower, you are vulnerable.

Check Version:

wp plugin get wp-security-audit-log --field=version

Verify Fix Applied:

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

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to plugin endpoints with script tags or JavaScript payloads
  • Multiple failed XSS attempts in web server logs

Network Indicators:

  • HTTP requests containing <script> tags or JavaScript code to plugin URLs

SIEM Query:

source="web_logs" AND (uri_path="/wp-admin/admin-ajax.php" OR uri_path CONTAINS "wp-security-audit-log") AND (http_method="POST" AND (request_body CONTAINS "<script>" OR request_body CONTAINS "javascript:"))

🔗 References

📤 Share & Export