Maintenance Mode Security & Risk Analysis

wordpress.org/plugins/hkdev-maintenance-mode

This plugin is intended primarily for developers that need to allow clients to preview sites before being available to the general public or to tempor …

8K active installs v3.1.3 PHP 7.4+ WP 6.1+ Updated Mar 7, 2025
coming-soondevelopermaintenanceredirectunder-construction
91
A · Safe
CVEs total2
Unpatched0
Last CVEApr 22, 2024
Safety Verdict

Is Maintenance Mode Safe to Use in 2026?

Generally Safe

Score 91/100

Maintenance Mode has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Apr 22, 2024Updated 1yr ago
Risk Assessment

The 'hkdev-maintenance-mode' plugin v3.1.3 presents a mixed security posture. On the positive side, it demonstrates good practices by utilizing prepared statements for the vast majority of its SQL queries and properly escaping most of its output. The absence of critical or high-severity taint flows, along with no identified raw SQL queries or file operations, suggests a reasonably well-developed codebase in these areas. The plugin also has a good history of patching vulnerabilities, with no currently unpatched CVEs.

However, significant concerns arise from the attack surface analysis. The plugin exposes a substantial number of AJAX handlers (9) with no authentication checks. While nonce checks are present for these handlers, the complete lack of capability checks means that any authenticated user, regardless of their role, could potentially interact with these endpoints. This creates a broad attack surface that could be leveraged for unintended actions or information disclosure if not carefully secured. The vulnerability history, though currently clear of unpatched issues, does show a pattern of medium-severity vulnerabilities related to 'Use of Less Trusted Source' and 'Improper Access Control', indicating past issues with how external data is handled or how access to functionality is managed.

In conclusion, while the plugin has strengths in areas like SQL and output handling and a history of prompt patching, the critical weakness lies in its unprotected AJAX endpoints. This makes it susceptible to potential privilege escalation or unauthorized actions by less privileged users within WordPress. The plugin should be reviewed for implementing capability checks on all AJAX handlers to mitigate this risk.

Key Concerns

  • Unprotected AJAX handlers
  • Use of Less Trusted Source (historical pattern)
  • Improper Access Control (historical pattern)
  • Bundled library (Select2) may have vulnerabilities
Vulnerabilities
2

Maintenance Mode Security Vulnerabilities

CVEs by Year

2 CVEs in 2024
2024
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2024-32708medium · 5.3Use of Less Trusted Source

Maintenance Mode by helderk <= 3.0.1 - Unauthenticated IP Spoofing

Apr 22, 2024 Patched in 3.0.2 (8d)
CVE-2024-1478medium · 5.3Improper Access Control

Maintenance Mode <= 3.0.1 - Information Exposure

Mar 4, 2024 Patched in 3.0.2 (25d)
Code Analysis
Analyzed Mar 16, 2026

Maintenance Mode Code Analysis

Dangerous Functions
0
Raw SQL Queries
2
23 prepared
Unescaped Output
25
175 escaped
Nonce Checks
9
Capability Checks
11
File Operations
0
External Requests
0
Bundled Libraries
1

Bundled Libraries

Select2

SQL Query Safety

92% prepared25 total queries

Output Escaping

88% escaped200 total outputs
Data Flows
All sanitized

Data Flow Analysis

9 flows
toggle_ip_status (class-hkdev-maintenance-mode.php:330)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
9 unprotected

Maintenance Mode Attack Surface

Entry Points9
Unprotected9

AJAX Handlers 9

authwp_ajax_hkdev_mm_getpostshkdev-maintenance-mode.php:111
authwp_ajax_hkdev_mm_toggle_maintenance_modehkdev-maintenance-mode.php:112
authwp_ajax_hkdev_mm_add_iphkdev-maintenance-mode.php:113
authwp_ajax_hkdev_mm_toggle_iphkdev-maintenance-mode.php:114
authwp_ajax_hkdev_mm_delete_iphkdev-maintenance-mode.php:115
authwp_ajax_hkdev_mm_add_akhkdev-maintenance-mode.php:116
authwp_ajax_hkdev_mm_toggle_akhkdev-maintenance-mode.php:117
authwp_ajax_hkdev_mm_delete_akhkdev-maintenance-mode.php:118
authwp_ajax_hkdev_mm_resend_akhkdev-maintenance-mode.php:119
WordPress Hooks 13
filterrest_authentication_errorshkdev-disable-rest-api.php:19
filterjson_enabledhkdev-disable-rest-api.php:64
filterjson_jsonp_enabledhkdev-disable-rest-api.php:65
filterrest_enabledhkdev-disable-rest-api.php:67
filterrest_jsonp_enabledhkdev-disable-rest-api.php:68
actioninithkdev-maintenance-mode.php:37
actionadmin_noticeshkdev-maintenance-mode.php:95
actionadmin_menuhkdev-maintenance-mode.php:103
actionadmin_bar_menuhkdev-maintenance-mode.php:104
actionadmin_headhkdev-maintenance-mode.php:105
actionsend_headershkdev-maintenance-mode.php:106
actionadmin_noticeshkdev-maintenance-mode.php:107
actionadmin_enqueue_scriptshkdev-maintenance-mode.php:121
Maintenance & Trust

Maintenance Mode Maintenance & Trust

Maintenance Signals

WordPress version tested6.7.5
Last updatedMar 7, 2025
PHP min version7.4
Downloads130K

Community Trust

Rating92/100
Number of ratings14
Active installs8K
Developer Profile

Maintenance Mode Developer Profile

helderk

1 plugin · 8K total installs

88
trust score
Avg Security Score
91/100
Avg Patch Time
17 days
View full developer profile
Detection Fingerprints

How We Detect Maintenance Mode

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/hkdev-maintenance-mode/assets/select2.min.css/wp-content/plugins/hkdev-maintenance-mode/assets/select2.min.js
Script Paths
/wp-content/plugins/hkdev-maintenance-mode/assets/select2.min.js
Version Parameters
hkdev_maintenance_mode/style.css?ver=hkdev-maintenance-mode/assets/select2.min.css?ver=hkdev-maintenance-mode/assets/select2.min.js?ver=

HTML / DOM Fingerprints

HTML Comments
<!-- hkdev_MM: admin page --><!-- hkdev_MM: admin page END -->
Data Attributes
data-hkdev-mm-id
JS Globals
cm_settings
REST Endpoints
/wp-json/hkdev-maintenance-mode/v1/settings
Shortcode Output
[hkdev_maintenance_mode]
FAQ

Frequently Asked Questions about Maintenance Mode