CVE-2024-13553
📋 TL;DR
This vulnerability allows unauthenticated attackers to bypass authentication and take over any user account, including administrators, in the SMS Alert Order Notifications WooCommerce plugin for WordPress. Attackers can spoof the Host header to trigger a development environment mode that accepts a hardcoded OTP code. All WordPress sites using this plugin are affected.
💻 Affected Systems
- SMS Alert Order Notifications - WooCommerce WordPress plugin
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete site compromise with administrative access, data theft, malware installation, and defacement.
Likely Case
Administrative account takeover leading to data exfiltration, plugin/theme manipulation, and backdoor installation.
If Mitigated
Limited impact if strong network controls prevent external access, but internal attackers could still exploit.
🎯 Exploit Status
Exploitation requires only HTTP request manipulation with a spoofed Host header.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 3.8.0 and later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3248017/sms-alert
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'SMS Alert Order Notifications - WooCommerce'. 4. Click 'Update Now' if available. 5. If manual update needed, download version 3.8.0+ from WordPress.org and replace plugin files.
🔧 Temporary Workarounds
Disable plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate sms-alert
Web server Host header validation
linuxConfigure web server to validate or restrict Host header values
# Apache: Use mod_headers to restrict Host headers
# Nginx: Use $host variable validation in config
🧯 If You Can't Patch
- Implement WAF rules to block requests with spoofed Host headers targeting the plugin endpoints
- Restrict network access to WordPress admin interface using IP whitelisting
🔍 How to Verify
Check if Vulnerable:
Check plugin version in WordPress admin under Plugins → Installed Plugins. If version is 3.7.9 or lower, you are vulnerable.
Check Version:
wp plugin get sms-alert --field=version
Verify Fix Applied:
Verify plugin version is 3.8.0 or higher. Test authentication endpoints with spoofed Host header should no longer accept '1234' OTP.
📡 Detection & Monitoring
Log Indicators:
- Multiple failed login attempts followed by successful login with OTP '1234'
- Requests with unusual Host header values to /wp-admin/admin-ajax.php or plugin endpoints
Network Indicators:
- HTTP requests with manipulated Host headers to WordPress sites
- Unusual authentication patterns from single IPs
SIEM Query:
source="web_logs" AND (uri_path="*sms-alert*" OR uri_path="*wp-admin/admin-ajax.php*") AND (http_host!="expected_domain.com" OR response_code=200 AND user_agent="*curl*" OR user_agent="*python*" OR user_agent="*wget*")
🔗 References
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3227241%40sms-alert&new=3227241%40sms-alert&sfp_email=&sfph_mail=
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3248017%40sms-alert&new=3248017%40sms-alert&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4e444a30-11c5-4219-b4fe-635084cbac3a?source=cve