Page Protection Security & Risk Analysis

wordpress.org/plugins/page-protection

Protect pages and their subpages with user name/password, and keep protected pages from showing up in menus, search results and page lists.

80 active installs v1.2 PHP + WP 2.8+ Updated Sep 9, 2009
accessprivacyprotectionsecurity
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Page Protection Safe to Use in 2026?

Generally Safe

Score 85/100

Page Protection has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 16yr ago
Risk Assessment

The "page-protection" plugin v1.2 exhibits a generally strong security posture based on the provided static analysis. The absence of identified dangerous functions, file operations, external HTTP requests, and a lack of critical or high severity taint flows are positive indicators. All identified outputs are properly escaped, and there are no known vulnerabilities in its history, suggesting a well-maintained and secure plugin. The limited attack surface, with zero AJAX handlers, REST API routes, shortcodes, or cron events, further contributes to its robust security.

However, a significant concern arises from the two SQL queries that are not using prepared statements. This lack of sanitization for database interactions introduces a potential risk for SQL injection vulnerabilities, even if no such vulnerabilities have been publicly recorded or identified in taint analysis. While the plugin has a clean vulnerability history, this specific coding practice should be addressed. The complete absence of nonce checks and capability checks, while not directly leading to immediate exploitation given the current attack surface, represents a missed opportunity for robust authorization and could become a risk if the plugin's functionality or attack surface expands in the future.

In conclusion, the "page-protection" plugin v1.2 is commendably secure in many aspects, particularly concerning its limited attack surface and output escaping. The primary area for improvement lies in adopting prepared statements for all SQL queries to mitigate the risk of SQL injection. Addressing this, along with considering the implementation of nonce and capability checks for future-proofing, would further solidify its security.

Key Concerns

  • SQL queries without prepared statements
Vulnerabilities
None known

Page Protection Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Page Protection Code Analysis

Dangerous Functions
0
Raw SQL Queries
2
0 prepared
Unescaped Output
0
4 escaped
Nonce Checks
0
Capability Checks
0
File Operations
0
External Requests
0
Bundled Libraries
0

SQL Query Safety

0% prepared2 total queries

Output Escaping

100% escaped4 total outputs
Attack Surface

Page Protection Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 9
actiontemplate_redirectpage-protection.php:24
actionparse_querypage-protection.php:36
filterwp_list_pages_excludespage-protection.php:89
filterthe_contentpage-protection.php:146
filterthe_excerptpage-protection.php:153
actionadmin_headpage-protection.php:162
actionwp_insert_postpage-protection.php:202
actionadmin_initpage-protection.php:207
actioninitpage-protection.php:213
Maintenance & Trust

Page Protection Maintenance & Trust

Maintenance Signals

WordPress version tested2.8.4
Last updatedSep 9, 2009
PHP min version
Downloads10K

Community Trust

Rating60/100
Number of ratings2
Active installs80
Developer Profile

Page Protection Developer Profile

mortenf

4 plugins · 110 total installs

86
trust score
Avg Security Score
89/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Page Protection

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

HTML / DOM Fingerprints

CSS Classes
page-protectionpage-protection-switchpage-protection-user-passpage-protection-options
Data Attributes
id="page-protection-user-pass"id="page-protection-options"id="page-protection-searchable"id="page-protection-on"name="page-protection-user"id="page-protection-user"+4 more
Shortcode Output
This page is protected with user name and password...
FAQ

Frequently Asked Questions about Page Protection