Skip to content
Laskyr

Plugins · password-protect-page · data as of 2026-11-04

Is PPWP safe? Known vulnerabilities and latest version

No known unpatched vulnerabilities in the latest version (1.9.27)

As of 2026-11-04. 10 issues are on record for older versions; version 1.9.27 or newer fixes all of them that state a fix.

Latest version
1.9.27
Last updated
2026-10-29
Active installs
30,000+
Known issues on record
10
Unpatched in latest
0
Tested up to WP
7.1.4 · PHP 5.6+

Password protect WordPress pages and posts by user roles or with multiple passwords; protect your entire website with a single password. — by WP Folio Team

What to do

  1. Update to the latest version (1.9.27). Anything older than 1.9.27 has at least one known issue listed below. Dashboard → Updates, or Plugins → “update now”.
  2. If you cannot update right away, deactivate it until you can.
  3. Turn on auto-updates for it: Plugins → “Enable auto-updates” on its row.
  4. If you ran a vulnerable version and something looks off (spam pages, strange admins, redirects), run the free scan.

With WP-CLI: wp plugin get password-protect-page --field=version shows what you run; wp plugin update password-protect-page updates it.

Check your version

Known vulnerabilities

10 on record, newest first. “Affected” is the version range the source gives; “fixed in” is the version the source names, or (marked *) the first wordpress.org release after the last affected version.

high 7.2 CVE-2026-116520 · published 2026-10-31

Stored cross-site scripting (XSS) in PPWP (1.9.26 and older)

Affected
1.9.26 and older
Fixed in
1.9.27 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect Pages plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'comment / shortcode attribute desc_below_form (and placeholder as the marker-smuggling helper)' parameter in all versions up to, and including, 1.9.26 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This is exploitable by unauthenticated attackers because WordPress's comment_content filter leaves bare shortcode text (containing no HTML tags) untouched, and the comment_whitelist setting auto-approves subsequent comments from a previously approved name and email without administrator intervention.

NVD CVE-2026-116520Wordfence advisoryCode change (fix)Plugin source

medium 6.4 CVE-2025-9878 · published 2026-08-25

Stored cross-site scripting (XSS) in PPWP (1.9.21 and older)

Affected
1.9.21 and older
Fixed in
1.9.22 *
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect WordPress | #1 Most-Reviewed Password Plugin plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's 'ppwp' shortcode in all versions up to, and including, 1.9.21 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

NVD CVE-2025-9878Wordfence advisoryCode change (fix)reserach.cleantalk.orgPlugin source

high 8.8 CVE-2026-0551 · published 2026-08-23

PHP object injection in PPWP (1.9.18 and older)

Affected
1.9.18 and older
Fixed in
1.9.19 *
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect Pages plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 1.9.18 via deserialization of untrusted input from the 'post_protection_roles' vulnerable parameter. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present.

NVD CVE-2026-0551Wordfence advisoryCode change (fix)Plugin source

medium 4.3 CVE-2025-10005 · published 2026-08-16

Missing authorization check in PPWP (1.9.20 and older)

Affected
1.9.20 and older
Fixed in
1.9.21 *
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect WordPress | #1 Most-Reviewed Password Plugin plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 1.9.20 via the ppw_free_set_password AJAX action due to missing validation on a user controlled key. This makes it possible for authenticated attackers, with Contributor-level access and above, to update the password on any password protected post and subsequently access the content.

NVD CVE-2025-10005Wordfence advisoryCode change (fix)research.cleantalk.org

medium 6.4 CVE-2026-3639 · published 2026-08-13

Stored cross-site scripting (XSS) in PPWP (1.9.21 and older)

Affected
1.9.21 and older
Fixed in
1.9.22 *
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect Pages plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin's `ppwp` shortcode attributes in all versions up to, and including, 1.9.21 due to insufficient input sanitization and output escaping on user supplied attributes. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

NVD CVE-2026-3639Wordfence advisoryCode change (fix)Plugin source

medium 4.3 CVE-2026-57634 · published 2026-06-26

Missing authorization check in PPWP (1.9.19 and older)

Affected
1.9.19 and older
Fixed in
1.9.20
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Contributor Insecure Direct Object References (IDOR) in PPWP <= 1.9.19 versions.

NVD CVE-2026-57634Patchstack advisory

medium 5.4 CVE-2026-32562 · published 2026-03-25

Missing authorization check in PPWP (1.9.15 and older)

Affected
1.9.15 and older
Fixed in
1.9.16
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
advisory text · score by Patchstack
Details from the advisory

Missing Authorization vulnerability in WP Folio Team PPWP password-protect-page allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects PPWP: from n/a through <= 1.9.15.

NVD CVE-2026-32562Patchstack advisory

medium 6.5 CVE-2025-5998 · published 2025-08-14

Security issue in PPWP (older than 1.9.11)

Affected
older than 1.9.11
Fixed in
1.9.11
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The PPWP – Password Protect Pages WordPress plugin before version 1.9.11 allows to put the site content behind a password authorization, however users with subscriber or greater roles can view content via the REST API.

NVD CVE-2025-5998WPScan advisory

medium 5.3 CVE-2024-11280 · published 2024-12-17

Information disclosure in PPWP (1.9.5 and older)

Affected
1.9.5 and older
Fixed in
1.9.6 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The PPWP – Password Protect Pages plugin for WordPress is vulnerable to Sensitive Information Exposure in all versions up to, and including, 1.9.5 via the WordPress core search feature. This makes it possible for unauthenticated attackers to extract sensitive data from posts that have been restricted to higher-level roles such as administrator.

NVD CVE-2024-11280Wordfence advisoryCode change (fix)

medium 5.3 CVE-2024-0620 · published 2024-02-29

Information disclosure in PPWP (1.8.9 and older)

Affected
1.8.9 and older
Fixed in
1.9.0 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

The PPWP – Password Protect Pages plugin for WordPress is vulnerable to Sensitive Information Exposure in all versions up to, and including, 1.8.9 via API. This makes it possible for unauthenticated attackers to obtain post titles, IDs, slugs as well as other information including for password-protected posts.

NVD CVE-2024-0620Wordfence advisoryCode change (fix)

Recent activity

Browse vulnerabilities

Where this data comes from

Badge for your site or docs (states facts with a date, not a verdict):
PPWP vulnerability status badge
<a href="https://laskyr.com/plugins/password-protect-page"><img src="https://laskyr.com/plugins/password-protect-page/badge.svg" alt="PPWP vulnerability status"></a>

← Check another plugin · Free hacked-site scan

First hour checklist

If the site was just hacked, read the emergency kit before you delete files. The page is free. Email is optional.

Read the emergency kit