Smush – Lazy Load Images, Optimize & Compress Images <= 3.0.0 - Authenticated PHAR Deserialization
Strategic Overview
- Status
- Patched in 3.0.1
- Affected Version
<= 3.0.0- CVSS
- 8.8High
- Weakness type
- CWE-502 · Deserialization of Untrusted Data
- CVE
CVE pending
At a glance
This record tracks a high-severity Deserialization of Untrusted Data vulnerability in the Smush WordPress plugin, affecting versions <= 3.0.0. It carries a CVSS score of 8.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires an authenticated account. The issue is fixed in version 3.0.1; sites on affected versions should update now. Disclosed December 2018.
Vulnerability Overview
The Smush – Lazy Load Images, Optimize & Compress Images plugin for WordPress is vulnerable to deserialization of untrusted input via the '$log_file' value in versions up to, and including 3.0.0. This makes it possible for authenticated attackers to call files using a PHAR wrapper that will deserialize the data and call arbitrary PHP Objects that can be used to perform a variety of malicious actions granted a POP chain is also present. It also requires that the attacker is successful in uploading a file with the serialized payload.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no interaction from a victim user. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.
CWE-502: Deserialization of Untrusted Data
Reaching this weakness in Smush <= 3.0.0 takes any authenticated account. Deserialization of untrusted data means the application reconstructs objects from input a caller controls, letting the attacker choose which classes get instantiated and what their properties hold.
A workable chain turns deserialization into file writes, deletions or code execution, depending on what the loaded classes do in their magic methods. For Smush the fix is 3.0.1: builds <= 3.0.0 are affected, anything from 3.0.1 onward is not.
Remediation
Update to version 3.0.1, or a newer patched version
How does WordSec protect against this?
The attempt arrives as an ordinary request to Smush: WordSec's web application firewall inspects request payloads before WordPress loads them. Classes like this one can leave something behind, so the staged malware scanner is the second half: it looks for dropped files and modified code rather than for the request that created them. None of that substitutes for the fix: Smush 3.0.1 closes this, and updating the plugin is the step that ends it.
- Firewall
- Scanner
- Alerts
External References
Related records
Other vulnerabilities in Smush – Image Optimization, Compression, Lazy Load, WebP & CDN
- 9.8Smush – Lazy Load Images, Optimize & Compress Images <= 2.9.1 XSS
- 7.5CVE-2026-81285: Smush DoS
CVE-2026-81285 - 7.2CVE-2026-19223: Smush RCE
CVE-2026-19223 - 5.3CVE-2017-15079: Smush Directory Traversal
CVE-2017-15079 - 4.4CVE-2022-1009: Smush XSS
CVE-2022-1009 - 4.3CVE-2023-3352: Smush Resmush List Deletion
CVE-2023-3352 - 2.7CVE-2025-22288: Smush Image Compression… Directory Traversal
CVE-2025-22288
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C