Description
The Password Protected plugin for WordPress is vulnerable to authorization bypass via IP address spoofing in all versions up to, and including, 2.7.11. This is due to the plugin trusting client-controlled HTTP headers (such as X-Forwarded-For, HTTP_CLIENT_IP, and similar headers) to determine user IP addresses in the `pp_get_ip_address()` function when the "Use transients" feature is enabled. This makes it possible for attackers to bypass authorization by spoofing these headers with the IP address of a legitimately authenticated user, granted the "Use transients" option is enabled (non-default configuration) and the site is not behind a CDN or reverse proxy that overwrites these headers.
Problem types
CWE-285 Improper Authorization
Product status
* (semver)
Timeline
| 2025-09-17: | Discovered |
| 2025-10-06: | Vendor Notified |
| 2025-10-24: | Disclosed |
Credits
Dmitrii Ignatyev
References
www.wordfence.com/...-54a2-4111-ad2c-b38b6b31884d?source=cve
plugins.trac.wordpress.org/...cludes/transient-functions.php
research.cleantalk.org/cve-2025-11244/