Description
The Password Protected plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the bundled Freemius SDK's purchase-completion handler in all versions up to, and including, 2.8.4 due to insufficient input sanitization and output escaping. Once the site's Freemius opt-in is complete (the normal state after an administrator clicks "Allow & Continue"), the handler processes the 'purchased_plan' request parameter on any wp-admin request from an authenticated user without any capability, nonce, or purchase validation, and stores it in a persistent, site-wide administrative notice. This makes it possible for authenticated attackers, with subscriber-level access and above, to inject arbitrary web scripts that execute automatically when an administrator views a standard admin page such as their Profile page.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
saadiqbal Password Protected – Protect Your Site Content With a Password
Default version status: unaffected
0 to ≤ 2.8.4affected
References
- https://www.wordfence.com/threat-intel/vulnerabilities/id/0c0fe97a-a9e4-46e0-bb53-135c2d9a69a4?source=cve ↗
- https://ti.wordfence.io/vendors/patch/3925/download ↗
- https://plugins.trac.wordpress.org/changeset?reponame=&new=3766681%40password-protected%2Ftags%2F2.8.5&old=3627972%40password-protected%2Ftags%2F2.8.4 ↗