WP Expire Passwords Security & Risk Analysis

wordpress.org/plugins/wp-expire-passwords

This plugin allows you to set passwords to expire every X amount of days (default is 90) and to expire all non-admin user passwords (requiring new uni …

10 active installs v1.1.1 PHP + WP 3.3+ Updated Sep 3, 2013
administrationexpirepasswordsecurityuser
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is WP Expire Passwords Safe to Use in 2026?

Generally Safe

Score 85/100

WP Expire Passwords has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 12yr ago
Risk Assessment

The wp-expire-passwords plugin version 1.1.1 exhibits a concerning security posture despite having a minimal attack surface and no recorded vulnerabilities. The static analysis reveals a significant weakness: one AJAX handler lacks any authentication checks. This unprotected entry point is a prime target for attackers, as it could potentially be exploited to perform unauthorized actions. Furthermore, the analysis indicates a complete absence of output escaping for all identified outputs, meaning sensitive data or malicious code could be injected and rendered directly in the user's browser. While the plugin avoids dangerous functions, raw SQL, and external requests, these positive aspects are heavily overshadowed by the critical lack of security measures for its exposed AJAX endpoint and output handling.

Key Concerns

  • Unprotected AJAX handler
  • No output escaping
  • No nonce checks
  • No capability checks
Vulnerabilities
None known

WP Expire Passwords Security Vulnerabilities

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

WP Expire Passwords Code Analysis

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

Output Escaping

0% escaped1 total outputs
Attack Surface
1 unprotected

WP Expire Passwords Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_ep_expire_userswp-expire-passwords.php:138
WordPress Hooks 7
actionadmin_initwp-expire-passwords.php:22
actionadmin_menuwp-expire-passwords.php:30
actionpersonal_options_updatewp-expire-passwords.php:81
actionedit_user_profile_updatewp-expire-passwords.php:84
actionpassword_resetwp-expire-passwords.php:87
filterauthenticatewp-expire-passwords.php:110
actionadmin_enqueue_scriptswp-expire-passwords.php:122
Maintenance & Trust

WP Expire Passwords Maintenance & Trust

Maintenance Signals

WordPress version tested3.6.1
Last updatedSep 3, 2013
PHP min version
Downloads2K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

WP Expire Passwords Developer Profile

rob.divincenzo

1 plugin · 10 total installs

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

How We Detect WP Expire Passwords

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-expire-passwords/js/ep-ajax.js
Script Paths
js/ep-ajax.js

HTML / DOM Fingerprints

CSS Classes
wrapbutton-primary
Data Attributes
name="days_until_expired"id="expire_passwords_form"name="pass1"
JS Globals
window.jQuery
FAQ

Frequently Asked Questions about WP Expire Passwords