WP Voting Security & Risk Analysis

wordpress.org/plugins/wp-voting

Site owner to add voting functionality to the blog posts.

50 active installs v1.8 PHP + WP 3.0+ Updated May 29, 2012
voting
63
C · Use Caution
CVEs total1
Unpatched1
Last CVEAug 12, 2025
Safety Verdict

Is WP Voting Safe to Use in 2026?

Use With Caution

Score 63/100

WP Voting has 1 unpatched vulnerability. Evaluate alternatives or apply available mitigations.

1 known CVE 1 unpatched Last CVE: Aug 12, 2025Updated 13yr ago
Risk Assessment

The wp-voting plugin v1.8 presents a mixed security posture. On the positive side, it has a relatively small attack surface with all identified entry points having some form of authentication or permission checks. Furthermore, the majority of SQL queries utilize prepared statements, indicating good practice in preventing SQL injection vulnerabilities. The absence of file operations and external HTTP requests are also positive security indicators.

However, significant concerns arise from the code analysis. The presence of the deprecated and inherently insecure `create_function` is a major red flag, potentially leading to code injection vulnerabilities. A critical finding is the 2 identified taint flows with unsanitized paths, suggesting potential for vulnerabilities like cross-site scripting (XSS) or arbitrary file read/write if not handled carefully by the application context. The very low percentage of properly escaped output (3%) is particularly alarming, directly correlating with the historical medium severity XSS vulnerability found in 2025. This indicates a high likelihood of reflected or stored XSS vulnerabilities.

The plugin's vulnerability history, with one unpatched medium severity CVE related to XSS, reinforces the concerns raised by the static analysis. This suggests a pattern of input validation and output escaping weaknesses. While the plugin demonstrates strengths in preventing direct SQL injection and controlling its attack surface, the prevalence of insecure coding practices and insufficient output sanitization poses a notable risk to WordPress sites utilizing this plugin.

Key Concerns

  • Unpatched CVE (medium severity XSS)
  • Critical taint flow with unsanitized paths
  • Dangerous function detected (create_function)
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
  • Low percentage of properly escaped output
Vulnerabilities
1

WP Voting Security Vulnerabilities

CVEs by Year

1 CVE in 2025 · unpatched
2025
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2025-49057medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Voting <= 1.8 - Reflected Cross-Site Scripting

Aug 12, 2025Unpatched
Code Analysis
Analyzed Mar 16, 2026

WP Voting Code Analysis

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

Dangerous Functions Found

create_functionadd_action( 'widgets_init', create_function( '', 'return register_widget("Wpv_Total_Vote_Widget");' wpv-voting-widgets.php:39
create_functionadd_action( 'widgets_init', create_function( '', 'return register_widget("Wpv_Top_Voted_Widget");' )wpv-voting-widgets.php:87

SQL Query Safety

94% prepared34 total queries

Output Escaping

3% escaped34 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

4 flows2 with unsanitized paths
wpv_list_admin_vote_logs (wpv-voting-func.php:135)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

WP Voting Attack Surface

Entry Points6
Unprotected0

AJAX Handlers 4

noprivwp_ajax_wpv-submitwpv-voting.php:265
authwp_ajax_wpv-submitwpv-voting.php:267
noprivwp_ajax_wpv-top-widgetwpv-voting.php:289
authwp_ajax_wpv-top-widgetwpv-voting.php:291

Shortcodes 2

[wpvoting] wpv-voting.php:115
[wpv-top-voted] wpv-voting.php:134
WordPress Hooks 8
actionwidgets_initwpv-voting-widgets.php:39
actionwidgets_initwpv-voting-widgets.php:87
actionplugins_loadedwpv-voting.php:101
actionadmin_menuwpv-voting.php:143
actionwp_headwpv-voting.php:173
actionwp_footerwpv-voting.php:199
actionwp_print_scriptswpv-voting.php:218
actionwp_print_styleswpv-voting.php:232
Maintenance & Trust

WP Voting Maintenance & Trust

Maintenance Signals

WordPress version tested3.2.1
Last updatedMay 29, 2012
PHP min version
Downloads31K

Community Trust

Rating50/100
Number of ratings2
Active installs50
Developer Profile

WP Voting Developer Profile

Ko Min

2 plugins · 60 total installs

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

How We Detect WP Voting

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-voting/scripts/wpv-userregister.js/wp-content/plugins/wp-voting/scripts/wpv-voterajax.js/wp-content/plugins/wp-voting/styles/admin.css/wp-content/plugins/wp-voting/styles/wpv-voting.css
Script Paths
/wp-content/plugins/wp-voting/scripts/wpv-userregister.js/wp-content/plugins/wp-voting/scripts/wpv-voterajax.js
Version Parameters
wp-voting/scripts/wpv-userregister.js?ver=wp-voting/scripts/wpv-voterajax.js?ver=wp-voting/styles/admin.css?ver=wp-voting/styles/wpv-voting.css?ver=

HTML / DOM Fingerprints

CSS Classes
wpvregconwpvregconbgwpvregpopupwpvregclosebtn
HTML Comments
<!-- WP Voting custom CSS - begin --><!-- WP Voting custom CSS - end -->
Data Attributes
wpvAjax
JS Globals
wpvAjax
Shortcode Output
[wpvoting][wpv-top-voted show="5" nopostmsg="Nothing to show"]
FAQ

Frequently Asked Questions about WP Voting