CVE-2022-4541

7.2 HIGH

📋 TL;DR

The WordPress Visitors plugin up to version 1.0 has a stored XSS vulnerability that allows unauthenticated attackers to inject malicious scripts via spoofed HTTP headers. These scripts execute when users access the nm_vistior page, potentially compromising their sessions or browsers. All WordPress sites using vulnerable versions of this plugin are affected.

💻 Affected Systems

Products:
  • WordPress Visitors plugin
Versions: All versions up to and including 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects WordPress installations with the Visitors plugin enabled. The vulnerability is in the plugin's handling of HTTP headers.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator credentials, install backdoors, redirect users to malicious sites, or perform actions on behalf of authenticated users, leading to complete site compromise.

🟠

Likely Case

Attackers inject malicious JavaScript to steal session cookies, redirect users to phishing pages, or deface the website by modifying page content.

🟢

If Mitigated

With proper input validation and output escaping, the attack would fail as malicious scripts would be sanitized before execution.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploitation requires sending specially crafted HTTP headers to trigger the XSS payload. The vulnerability is well-documented with public references.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 1.0 (check plugin repository for latest)

Vendor Advisory: https://plugins.trac.wordpress.org/browser/nm-visitors/trunk/nm-visitors.php

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Visitors' plugin. 4. Click 'Update Now' if available. 5. If no update is available, deactivate and delete the plugin immediately.

🔧 Temporary Workarounds

Disable plugin

all

Deactivate the Visitors plugin to remove the vulnerable component

wp plugin deactivate nm-visitors

Apply input sanitization

all

Manually patch the vulnerable lines in nm-visitors.php

Edit lines 63 and 105 to add proper sanitization: esc_html() or esc_attr() around header values

🧯 If You Can't Patch

  • Implement a web application firewall (WAF) with XSS protection rules
  • Restrict access to the nm_vistior page using .htaccess or server configuration

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for 'Visitors' plugin version 1.0 or earlier

Check Version:

wp plugin get nm-visitors --field=version

Verify Fix Applied:

Verify plugin version is updated beyond 1.0 or plugin is completely removed

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP header values in access logs
  • Multiple requests to nm_vistior page with suspicious parameters

Network Indicators:

  • HTTP requests containing script tags or JavaScript in header values

SIEM Query:

source="web_access_logs" AND uri="/nm_vistior" AND (header="*<script*" OR header="*javascript:*")

🔗 References

📤 Share & Export