WP Search Security & Risk Analysis

wordpress.org/plugins/wpsearch

WPSearch 2 is the missing site search for your Wordpress installation. Install this plugin if you need a fast, relevant, google-like search.

80 active installs v2.0.4.0 PHP + WP 3.0+ Updated Oct 25, 2011
fastlucenerelevantsearch
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is WP Search Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 14yr ago
Risk Assessment

The wpsearch v2.0.4.0 plugin exhibits a significant security risk due to a large attack surface with entirely unprotected entry points. All 9 AJAX handlers lack authentication checks, meaning any user, including unauthenticated visitors, can trigger these functions. This is a critical oversight that exposes the plugin to numerous potential attacks. Furthermore, the presence of dangerous functions like `unserialize` and `exec` within the codebase, combined with a low percentage of properly escaped output (22%), raises serious concerns about the plugin's ability to handle potentially malicious data safely. The lack of any nonce checks or capability checks on AJAX handlers amplifies the risk of unauthorized actions and privilege escalation.

While the plugin does utilize prepared statements for all its SQL queries, which is a positive practice, this single strength is heavily outweighed by the numerous weaknesses. The complete absence of any recorded vulnerabilities in its history is notable, but it does not negate the immediate and inherent risks identified in the static analysis. The lack of recorded vulnerabilities might indicate either a lack of historical scrutiny or that previous versions did not have these specific exploitable patterns. The combination of unprotected AJAX endpoints, dangerous function usage, and insufficient output escaping creates a high-risk profile for this plugin.

Key Concerns

  • AJAX handlers without authentication checks
  • Dangerous functions found (unserialize, exec)
  • Low percentage of properly escaped output
  • No nonce checks on AJAX handlers
  • No capability checks on AJAX handlers
Vulnerabilities
None known

WP Search Security Vulnerabilities

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

WP Search Code Analysis

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

Dangerous Functions Found

unserializeif (($unserializedData = @unserialize($stiFileData)) !== false) {WPSearch\Backends\Phplucene\Zend\Search\Lucene\Index\SegmentInfo.php:588
unserialize$search_types = unserialize(WPSearch_Utility::getOption(self::KEY_SEARCH_TYPES, FALSE));WPSearch\Core.php:313
unserialize$search_types = unserialize(WPSearch_Utility::getOption(WPSearch_Core::KEY_SEARCH_TYPES, FALSE));WPSearch\Drivers\Search\Phplucene.php:94
unserialize$status = unserialize($content);WPSearch\Drivers\Search\Phplucene.php:681
execexec('ps -A -o pid', $output);WPSearch\Utility.php:126

SQL Query Safety

100% prepared9 total queries

Output Escaping

22% escaped23 total outputs
Attack Surface
9 unprotected

WP Search Attack Surface

Entry Points9
Unprotected9

AJAX Handlers 9

authwp_ajax_get_statsWPSearch\Core.php:94
authwp_ajax_save_index_commentsWPSearch\Core.php:95
authwp_ajax_save_index_categoriesWPSearch\Core.php:96
authwp_ajax_save_title_boostWPSearch\Core.php:97
authwp_ajax_save_content_boostWPSearch\Core.php:98
authwp_ajax_save_search_typesWPSearch\Core.php:99
authwp_ajax_rebuild_indexWPSearch\Core.php:100
authwp_ajax_searchWPSearch\Core.php:101
noprivwp_ajax_searchWPSearch\Core.php:102
WordPress Hooks 10
actionedit_postWPSearch\Core.php:82
actiondelete_postWPSearch\Core.php:83
actionpublish_postWPSearch\Core.php:84
actionpublish_pageWPSearch\Core.php:85
actionadmin_menuWPSearch\Core.php:86
actionadmin_initWPSearch\Core.php:87
actionadmin_noticesWPSearch\Core.php:88
filterposts_whereWPSearch\Core.php:89
filterpost_limitsWPSearch\Core.php:90
filterthe_postsWPSearch\Core.php:91
Maintenance & Trust

WP Search Maintenance & Trust

Maintenance Signals

WordPress version tested3.2.1
Last updatedOct 25, 2011
PHP min version
Downloads30K

Community Trust

Rating40/100
Number of ratings1
Active installs80
Developer Profile

WP Search Developer Profile

Kenny

3 plugins · 110 total installs

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

How We Detect WP Search

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wpsearch/wpsearch.css/wp-content/plugins/wpsearch/jquery.multiselect.css/wp-content/plugins/wpsearch/js/jquery.timers-1.2.js/wp-content/plugins/wpsearch/js/jquery.multiselect.min.js/wp-content/plugins/wpsearch/js/wpsearch.js
Script Paths
http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.jshttp://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css
Version Parameters
wpsearch.css?ver=jquery.multiselect.css?ver=jquery.timers-1.2.js?ver=jquery.multiselect.min.js?ver=wpsearch.js?ver=

HTML / DOM Fingerprints

CSS Classes
wpsearch-main-contentwpsearch-titlewpsearch-search-form
HTML Comments
<!-- WPSearch Admin Warning --><!-- Admin Notice -->
Data Attributes
data-wpsearch-iddata-wpsearch-typedata-wpsearch-title
JS Globals
WPSearch_DATAwpsearchConfig
REST Endpoints
/wp-json/wpsearch/v1/search
Shortcode Output
[wpsearch]
FAQ

Frequently Asked Questions about WP Search