Ajax Dropdowns Security & Risk Analysis

wordpress.org/plugins/ajax-dropdowns

Display a group of posts that can be switched using dropdowns.

400 active installs v0.9.8 PHP + WP 3.0+ Updated Dec 7, 2016
ajaxdropdownsoptionpagesposts
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Ajax Dropdowns Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 9yr ago
Risk Assessment

The "ajax-dropdowns" plugin v0.9.8 exhibits a mixed security posture. On the positive side, it demonstrates good practices by using prepared statements for all SQL queries and has a clean vulnerability history with no recorded CVEs. The plugin also includes a nonce check, which is a fundamental security control.

However, significant concerns arise from the static analysis. The plugin has a total of 3 entry points, with 2 of them being AJAX handlers that lack authentication checks. This creates a substantial attack surface accessible to unauthenticated users, potentially allowing them to trigger plugin functionality without proper authorization. Furthermore, the taint analysis indicates one flow with unsanitized paths, which, while not classified as critical or high, still represents a potential risk for input manipulation or unexpected behavior.

The limited output escaping (14% properly escaped) is another area of concern, as it increases the likelihood of cross-site scripting (XSS) vulnerabilities if user-supplied data is not properly sanitized before being displayed. The plugin's vulnerability history, while currently clean, does not negate the risks identified in the code analysis. A balanced conclusion is that while the plugin doesn't have a history of severe vulnerabilities and uses prepared statements, the unprotected AJAX endpoints and potential for unsanitized paths and output represent notable security weaknesses that require attention.

Key Concerns

  • Unprotected AJAX handlers
  • Flows with unsanitized paths
  • Low output escaping percentage
Vulnerabilities
None known

Ajax Dropdowns Security Vulnerabilities

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

Ajax Dropdowns Code Analysis

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

Bundled Libraries

jQuery

Output Escaping

14% escaped7 total outputs
Data Flows
1 unsanitized

Data Flow Analysis

2 flows1 with unsanitized paths
ajax_callback (ajax-dropdowns.php:424)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

Ajax Dropdowns Attack Surface

Entry Points3
Unprotected2

AJAX Handlers 2

authwp_ajax_ajax_dropdownajax-dropdowns.php:45
noprivwp_ajax_ajax_dropdownajax-dropdowns.php:46

Shortcodes 1

[ajax_dropdown] ajax-dropdowns.php:134
WordPress Hooks 10
actioninitajax-dropdowns.php:35
actioninitajax-dropdowns.php:36
actioninitajax-dropdowns.php:37
actionwp_enqueue_scriptsajax-dropdowns.php:39
actionadmin_headajax-dropdowns.php:40
actionadmin_enqueue_scriptsajax-dropdowns.php:41
actionadd_meta_boxesajax-dropdowns.php:42
actionsave_postajax-dropdowns.php:43
filterpost_updated_messagesajax-dropdowns.php:44
filterwidget_textajax-dropdowns.php:47
Maintenance & Trust

Ajax Dropdowns Maintenance & Trust

Maintenance Signals

WordPress version tested4.7.32
Last updatedDec 7, 2016
PHP min version
Downloads13K

Community Trust

Rating98/100
Number of ratings14
Active installs400
Developer Profile

Ajax Dropdowns Developer Profile

ThemeBoy

12 plugins · 21K total installs

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

How We Detect Ajax Dropdowns

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/ajax-dropdowns/assets/css/ajaxd.css/wp-content/plugins/ajax-dropdowns/assets/css/chosen.css/wp-content/plugins/ajax-dropdowns/assets/css/admin.css/wp-content/plugins/ajax-dropdowns/assets/js/chosen.jquery.min.js/wp-content/plugins/ajax-dropdowns/assets/js/ajaxd-admin.js
Script Paths
/wp-content/plugins/ajax-dropdowns/assets/js/chosen.jquery.min.js/wp-content/plugins/ajax-dropdowns/assets/js/ajaxd-admin.js
Version Parameters
/wp-content/plugins/ajax-dropdowns/assets/css/ajaxd.css?ver=/wp-content/plugins/ajax-dropdowns/assets/css/admin.css?ver=/wp-content/plugins/ajax-dropdowns/assets/js/ajaxd-admin.js?ver=

HTML / DOM Fingerprints

CSS Classes
ajaxd-postsajaxd-posts-tableajaxd-placeholderchosen-selectchosen-rtl
Data Attributes
data-post-type
JS Globals
ajax_dropdowns_ajax_object
REST Endpoints
/wp-json/ajax-dropdowns/v1
Shortcode Output
[ajax_dropdown]
FAQ

Frequently Asked Questions about Ajax Dropdowns