CVE-2020-36726
📋 TL;DR
The Ultimate Reviews WordPress plugin up to version 2.1.32 contains a PHP object injection vulnerability due to insecure deserialization of untrusted input. Unauthenticated attackers can exploit this to inject arbitrary PHP objects, potentially leading to remote code execution. All WordPress sites using vulnerable plugin versions are affected.
💻 Affected Systems
- WordPress Ultimate Reviews plugin
📦 What is this software?
Ultimate Reviews by Etoilewebdesign
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to complete system compromise, data theft, and website defacement.
Likely Case
Website compromise through arbitrary code execution, potentially leading to backdoor installation and data exfiltration.
If Mitigated
Limited impact if proper input validation and output encoding are implemented, though deserialization vulnerabilities remain dangerous.
🎯 Exploit Status
No POP chain required in the plugin itself, but attackers can use PHP's built-in classes for exploitation.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.1.33 and later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/2409141
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Ultimate Reviews plugin. 4. Click 'Update Now' if available. 5. Alternatively, download version 2.1.33+ from WordPress.org and manually update.
🔧 Temporary Workarounds
Disable vulnerable plugin
allTemporarily disable the Ultimate Reviews plugin until patched
wp plugin deactivate ultimate-reviews
Web Application Firewall rule
allBlock deserialization attempts at WAF level
🧯 If You Can't Patch
- Remove the Ultimate Reviews plugin completely
- Implement strict input validation and sanitization at application layer
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Ultimate Reviews → Version number
Check Version:
wp plugin get ultimate-reviews --field=version
Verify Fix Applied:
Verify plugin version is 2.1.33 or higher in WordPress admin
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to WordPress admin-ajax.php or plugin endpoints
- PHP deserialization errors in logs
- Unexpected file creation in wp-content/uploads
Network Indicators:
- HTTP requests containing serialized PHP objects (O: syntax)
- Traffic to unusual ports from WordPress server
SIEM Query:
source="wordpress.log" AND ("ultimate-reviews" OR "admin-ajax.php") AND ("unserialize" OR "O:" OR "C:")
🔗 References
- https://blog.nintechnet.com/wordpress-ultimate-reviews-plugin-fixed-insecure-deserialization-vulnerability/
- https://plugins.trac.wordpress.org/changeset/2409141
- https://www.wordfence.com/threat-intel/vulnerabilities/id/db30acd7-ce51-45d9-8ff0-6ceea8237a8c?source=cve
- https://blog.nintechnet.com/wordpress-ultimate-reviews-plugin-fixed-insecure-deserialization-vulnerability/
- https://plugins.trac.wordpress.org/changeset/2409141
- https://www.wordfence.com/threat-intel/vulnerabilities/id/db30acd7-ce51-45d9-8ff0-6ceea8237a8c?source=cve