Force Reinstall Security & Risk Analysis

wordpress.org/plugins/force-reinstall

Easily force a Plugin or Theme reinstall from WordPress.org

2K active installs v1.1.11 PHP + WP 4.0+ Updated Dec 26, 2025
corruptedfixinstallthemeupdate
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Force Reinstall Safe to Use in 2026?

Generally Safe

Score 100/100

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

No known CVEs Updated 3mo ago
Risk Assessment

The 'force-reinstall' plugin v1.1.11 exhibits a mixed security posture. On the positive side, it demonstrates strong security hygiene in several key areas. The absence of any known CVEs and a clean vulnerability history suggests a history of secure development or proactive patching by the developers. Furthermore, all SQL queries are properly prepared, and there are a sufficient number of nonce checks, indicating an awareness of common attack vectors. The attack surface is also commendably small, with no exposed AJAX handlers, REST API routes, shortcodes, or cron events that lack authentication or proper authorization checks.

However, several concerns warrant attention. The presence of seven 'dangerous functions' like 'assert' is a significant red flag. While the static analysis didn't detect immediate taint flows utilizing these functions, their mere presence introduces a potential backdoor for attackers if not carefully managed or if future versions introduce vulnerabilities. The low rate of properly escaped output (12%) is another critical weakness. This could lead to cross-site scripting (XSS) vulnerabilities if user-supplied data is rendered directly into the HTML without proper sanitization.

In conclusion, while the plugin benefits from a lack of known vulnerabilities and a contained attack surface, the use of dangerous functions and inadequate output escaping represent significant, albeit latent, risks. The developers have a solid foundation in preventing common web attacks like SQL injection, but the code quality regarding output sanitization and the inclusion of potentially risky functions needs improvement to achieve a robust security posture. The absence of capability checks is also a notable omission, suggesting that even protected entry points might not enforce granular user permissions.

Key Concerns

  • Dangerous functions used (assert)
  • Low rate of properly escaped output
  • No capability checks
  • Bundled library (Guzzle) may be outdated
Vulnerabilities
None known

Force Reinstall Security Vulnerabilities

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

Force Reinstall Code Analysis

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

Dangerous Functions Found

assertassert(count($arguments) >= 2, new BadMethodCallException('You need to provide at least two argumentsrc\ForceReinstall.php:195
assertassert(file_exists($file), new BadMethodCallException('Please provide a valid file path for ' . $namsrc\ForceReinstall.php:204
assertassert(is_callable($callable, true), new BadMethodCallException('Please provide a callable function src\ForceReinstall.php:215
assertassert(is_string($hook), new BadMethodCallException('Please provide the name of the hook for ' . $nasrc\ForceReinstall.php:225
assertassert(is_callable($callable, true), new BadMethodCallException('Please provide a callable function src\ForceReinstall.php:236
assertassert(is_numeric($priority), new BadMethodCallException('Priority should be numeric for ' . $name))src\ForceReinstall.php:244
assertassert(is_numeric($args), new BadMethodCallException('Number of arguments should be numeric for ' . src\ForceReinstall.php:252

Bundled Libraries

Guzzle

Output Escaping

12% escaped25 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
handle_action (src\Controller\Admin.php:144)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Force Reinstall Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 9
actionplugins_loadedsrc\ForceReinstall.php:115
actionadmin_menusrc\ForceReinstall.php:129
actionadmin_enqueue_scriptssrc\ForceReinstall.php:131
actionadmin_enqueue_scriptssrc\ForceReinstall.php:132
filterplugin_action_linkssrc\ForceReinstall.php:134
filteradmin_noticessrc\ForceReinstall.php:136
filterbulk_actions-pluginssrc\ForceReinstall.php:140
filterhandle_bulk_actions-pluginssrc\ForceReinstall.php:141
filteradmin_initsrc\ForceReinstall.php:143
Maintenance & Trust

Force Reinstall Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 26, 2025
PHP min version
Downloads30K

Community Trust

Rating88/100
Number of ratings14
Active installs2K
Developer Profile

Force Reinstall Developer Profile

Richard Muvirimi

2 plugins · 4K total installs

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

How We Detect Force Reinstall

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/force-reinstall/admin-rating.css/wp-content/plugins/force-reinstall/admin-about.css/wp-content/plugins/force-reinstall/admin-reinstall-themes.js/wp-content/plugins/force-reinstall/admin-rating.js
Script Paths
/wp-content/plugins/force-reinstall/admin-reinstall-themes.js/wp-content/plugins/force-reinstall/admin-rating.js
Version Parameters
force-reinstall/admin-rating.css?ver=force-reinstall/admin-about.css?ver=force-reinstall/admin-reinstall-themes.js?ver=force-reinstall/admin-rating.js?ver=

HTML / DOM Fingerprints

CSS Classes
force-reinstall
HTML Comments
Would have loved a hook much like plugins but guess will have to add through javascripttried "plugin_action_links" but could not be found on the front endBut then again...https://developer.wordpress.org/reference/hooks/handle_bulk_actions-screen/
Data Attributes
force-reinstall-nonceforce-reinstall-target
JS Globals
force_reinstall
FAQ

Frequently Asked Questions about Force Reinstall