
HTML5 pushState Security & Risk Analysis
wordpress.org/plugins/pushstateEnables HTML5 pushState for wordpress to get contents through AJAX without breaking SEO rank
Is HTML5 pushState Safe to Use in 2026?
Generally Safe
Score 85/100HTML5 pushState has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.
The "pushstate" plugin v1.0.2 presents a mixed security posture. On the positive side, the plugin has a minimal attack surface with no identified AJAX handlers, REST API routes, shortcodes, or cron events. It also demonstrates good practices by exclusively using prepared statements for SQL queries and not making any external HTTP requests. The presence of a nonce check is also a positive sign. However, a significant concern arises from the complete lack of output escaping for all identified output points. This means that any data processed and displayed by the plugin could be vulnerable to cross-site scripting (XSS) attacks if it originates from an untrusted source. Additionally, the absence of capability checks is a weakness, as it implies that any user, regardless of their WordPress role, could potentially interact with plugin functionalities, assuming any were exposed via other means not captured in the static analysis.
The vulnerability history for this plugin is clean, with no recorded CVEs. This, combined with the limited attack surface and some good coding practices, suggests a potentially low risk profile. However, the critical flaw of unescaped output cannot be overlooked. While the static analysis did not reveal any critical or high severity taint flows, the unescaped output opens the door for such issues to be exploited if user-supplied data is not properly handled before rendering. The plugin's strengths lie in its limited attack surface and secure database interactions, but its critical weakness in output sanitization requires immediate attention to mitigate potential XSS vulnerabilities.
Key Concerns
- All outputs are unescaped
- No capability checks present
HTML5 pushState Security Vulnerabilities
HTML5 pushState Code Analysis
Output Escaping
HTML5 pushState Attack Surface
WordPress Hooks 7
Maintenance & Trust
HTML5 pushState Maintenance & Trust
Maintenance Signals
Community Trust
HTML5 pushState Alternatives
Ajaxified Cart
ajaxified-cart-woocommerce
AJAX add-to-cart for WooCommerce: simple & variable products on archives/blocks via accessible modal and instant cart refresh.
Advanced Event Manager
advanced-event-manager
Calendar plugin by Stachethemes
Child Theme Configurator
child-theme-configurator
When using the Customizer is not enough - Create a child theme from your installed themes and customize styles, templates, functions and more.
Ivory Search – WordPress Search Plugin
add-search-to-menu
Advanced WordPress custom search plugin. Provides Search Form Customizer, WooCommerce Search, AJAX Search & Live Search support!
FiboSearch – Ajax Search for WooCommerce
ajax-search-for-woocommerce
The most popular WooCommerce product search plugin. Gives your users a well-designed advanced AJAX search bar with live search suggestions.
HTML5 pushState Developer Profile
2 plugins · 40 total installs
How We Detect HTML5 pushState
Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.
Asset Fingerprints
/wp-content/plugins/pushstate/jquery.history.js/wp-content/plugins/pushstate/jquery.scrollTo.js/wp-content/plugins/pushstate/jquery.history.js/wp-content/plugins/pushstate/jquery.scrollTo.jspushstate/jquery.history.js?ver=pushstate/jquery.scrollTo.js?ver=HTML / DOM Fingerprints
Copyright 2013 Erick Tampubolon <lontongcorp@gmail.com>This program is free software; you can redistribute it and/or modifyThis program is distributed in the hope that it will be useful,You should have received a copy of the GNU General Public License+18 moreid="pushstate_loading"id="select_image"name="pushstate_domain"id="pushstate_div"name="pushstate_div"name="pushstate_tied"+7 morepushstate_divpushstate_loadingpushstate_loading_posxpushstate_loading_posypushstate_callback