WP Post Stats Security & Risk Analysis

wordpress.org/plugins/wp-post-stats

Simple post stats plugin. Enables you to display how many times a post/page had been viewed.

10 active installs v2.2 PHP + WP 3.0+ Updated Dec 17, 2013
counterhitspageviewstatsviews
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is WP Post Stats Safe to Use in 2026?

Generally Safe

Score 85/100

WP Post Stats 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-post-stats" v2.2 plugin exhibits a mixed security posture. On the positive side, it demonstrates good practices by avoiding dangerous functions, utilizing prepared statements for all SQL queries, and having no recorded vulnerabilities or external HTTP requests. However, significant security concerns arise from its attack surface and lack of input validation. The plugin exposes two AJAX handlers, both of which lack authentication checks, creating a direct path for unauthenticated users to interact with potentially sensitive functionalities. Furthermore, the taint analysis reveals two flows with unsanitized paths, indicating that user-supplied input might not be adequately cleaned before being processed, even though no critical or high severity issues were flagged in this analysis. The complete absence of nonce checks on AJAX handlers is a critical oversight that, combined with the unprotected AJAX endpoints, significantly increases the risk of Cross-Site Request Forgery (CSRF) attacks.

While the plugin's vulnerability history is clean, this does not negate the immediate risks presented by its current code. The lack of proper authentication and sanitization on its entry points is a more proactive and inherent security weakness than a historical vulnerability might suggest. The plugin has strengths in its database query security and the absence of malicious code signals, but these are overshadowed by the readily exploitable attack surface and the potential for unsanitized input to lead to unexpected behavior or security breaches. Immediate attention should be paid to securing its AJAX endpoints and implementing robust input validation.

Key Concerns

  • AJAX handlers without auth checks
  • Flows with unsanitized paths
  • No nonce checks on AJAX
  • Low percentage of properly escaped output
Vulnerabilities
None known

WP Post Stats Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

WP Post Stats Release Timeline

No version history available.
Code Analysis
Analyzed Apr 16, 2026

WP Post Stats Code Analysis

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

SQL Query Safety

100% prepared8 total queries

Output Escaping

48% escaped86 total outputs
Data Flows · Security
2 unsanitized

Data Flow Analysis

2 flows2 with unsanitized paths
increment_views (wp-post-stats.php:636)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

WP Post Stats Attack Surface

Entry Points2
Unprotected2

AJAX Handlers 2

authwp_ajax_postviewswp-post-stats.php:634
noprivwp_ajax_postviewswp-post-stats.php:635
WordPress Hooks 21
actioninitwp-post-stats.php:31
actionadmin_menuwp-post-stats.php:38
actionwp_headwp-post-stats.php:47
actionpublish_postwp-post-stats.php:510
actionpublish_pagewp-post-stats.php:511
actiondelete_postwp-post-stats.php:521
filterquery_varswp-post-stats.php:531
actionpre_get_postswp-post-stats.php:540
filterposts_fieldswp-post-stats.php:543
filterposts_joinwp-post-stats.php:544
filterposts_wherewp-post-stats.php:545
filterposts_orderbywp-post-stats.php:546
actionwpwp-post-stats.php:557
filterwp_stats_page_admin_pluginswp-post-stats.php:561
filterwp_stats_page_admin_mostwp-post-stats.php:562
filterwp_stats_page_pluginswp-post-stats.php:563
filterwp_stats_page_mostwp-post-stats.php:564
actionmanage_posts_custom_columnwp-post-stats.php:654
filtermanage_posts_columnswp-post-stats.php:655
actionwidgets_initwp-post-stats.php:777
actionactivate_wp-post-stats/wp-post-stats.phpwp-post-stats.php:784
Maintenance & Trust

WP Post Stats Maintenance & Trust

Maintenance Signals

WordPress version tested3.7.41
Last updatedDec 17, 2013
PHP min version
Downloads8K

Community Trust

Rating0/100
Number of ratings0
Active installs10
Developer Profile

WP Post Stats Developer Profile

Pankaj Jha

5 plugins · 310 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 Post Stats

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-post-stats/
Version Parameters
wp-post-stats/post-stats-options.php?ver=

HTML / DOM Fingerprints

HTML Comments
<!-- Last Action -->
Data Attributes
id="views_template_template"name="views_template_template"id="views_template_most_viewed"name="views_template_most_viewed"name="views_count"name="views_exclude_bots"+7 more
JS Globals
views_default_templates
FAQ

Frequently Asked Questions about WP Post Stats