Description
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.
Published: 2026-08-25
Score: 6.4 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Password Protect Pages plugin contains an insufficiently sanitized ppwp shortcode that can store and render user‑supplied attributes as raw HTML. Attackers with Contributor or higher roles can inject arbitrary JavaScript into the shortcode’s attributes, which is then executed in any browser that views the affected page. This allows client‑side code execution, cookie theft, session hijacking, defacement or other malicious actions that affect confidentiality, integrity and availability of the site’s content for all visitors.

Affected Systems

The vulnerability applies to the PPWP – Password Protect Pages plugin by buildwps, in all releases up to and including 1.9.21. Sites running any of these versions and allowing contributors to edit pages are potentially impacted.

Risk and Exploitability

The CVSS score of 6.4 indicates a moderate‑severity flaw, while the absence of an EPSS value and its lack of inclusion in the CISA KEV catalog imply that exploit activity is currently undocumented. The most likely attack path involves an authenticated contributor adding a malicious ppwp shortcode to a post or page. Once the shortcode is stored, every user who views the page receives the injected script, making the vulnerability a strong opportunistic threat for sites with exposed contributor permissions.

Generated by OpenCVE AI on August 25, 2026 at 03:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Password Protect Pages to the latest released version (≥ 1.9.22).
  • Edit or delete any existing pages or posts that contain the malicious ppwp shortcode attributes introduced before the upgrade.
  • Limit the use of the ppwp shortcode to trusted administrators or disable the shortcode entirely if it is not required.

Generated by OpenCVE AI on August 25, 2026 at 03:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 25 Aug 2026 03:45:00 +0000

Type Values Removed Values Added
First Time appeared Buildwps
Buildwps ppwp – Password Protect Pages
Wordpress
Wordpress wordpress
Vendors & Products Buildwps
Buildwps ppwp – Password Protect Pages
Wordpress
Wordpress wordpress

Tue, 25 Aug 2026 02:45:00 +0000

Type Values Removed Values Added
Description 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.
Title Password Protect WordPress Lite <= 1.9.21 - Authenticated (Contributor+) Stored Cross-Site Scripting
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 6.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N'}


Subscriptions

Buildwps Ppwp – Password Protect Pages
Wordpress Wordpress
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-08-25T02:26:48.990Z

Reserved: 2025-09-02T21:23:22.716Z

Link: CVE-2025-9878

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-25T03:16:54.540

Modified: 2026-08-25T03:16:54.540

Link: CVE-2025-9878

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T03:30:05Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')