{"id":27913,"date":"2014-02-21T02:56:04","date_gmt":"2014-02-21T02:56:04","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/injection-guard\/"},"modified":"2026-03-14T21:13:48","modified_gmt":"2026-03-14T21:13:48","slug":"injection-guard","status":"publish","type":"plugin","link":"https:\/\/frp.wordpress.org\/plugins\/injection-guard\/","author":11237862,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.3.0","stable_tag":"1.3.0","tested":"6.9.4","requires":"3.0","requires_php":"7.0","requires_plugins":null,"header_name":"Injection Guard","header_author":"Fahad Mahmood","header_description":"","assets_banners_color":"37899e","last_updated":"2026-03-14 21:13:48","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.androidbubbles.com\/extends\/wordpress\/plugins\/injection-guard","header_author_uri":"https:\/\/www.androidbubbles.com","rating":5,"author_block_rating":0,"active_installs":1000,"downloads":33961,"num_ratings":4,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.2.1":{"tag":"1.2.1","author":"fahadmahmood","date":"2022-09-07 12:57:04"},"1.2.2":{"tag":"1.2.2","author":"fahadmahmood","date":"2023-05-10 17:34:06"},"1.2.3":{"tag":"1.2.3","author":"fahadmahmood","date":"2023-05-11 12:11:06"},"1.2.4":{"tag":"1.2.4","author":"fahadmahmood","date":"2024-06-05 13:08:42"},"1.2.5":{"tag":"1.2.5","author":"fahadmahmood","date":"2024-11-04 02:32:30"},"1.2.6":{"tag":"1.2.6","author":"fahadmahmood","date":"2025-04-10 18:07:35"},"1.2.7":{"tag":"1.2.7","author":"fahadmahmood","date":"2025-04-10 19:28:51"},"1.2.8":{"tag":"1.2.8","author":"fahadmahmood","date":"2025-07-22 15:41:36"},"1.2.9":{"tag":"1.2.9","author":"fahadmahmood","date":"2026-02-28 06:57:53"},"1.3.0":{"tag":"1.3.0","author":"fahadmahmood","date":"2026-03-14 21:13:48"}},"upgrade_notice":{"1.3.0":"<p>Security: Fixed Stored XSS vulnerability by sanitizing query parameter keys, escaping admin output, improving query handling, and adding a log size limit.<\/p>","1.2.9":"<p>Security Fix: Added depth-limited input sanitization and stricter nonce &amp; super-admin checks for bulk whitelist\/blacklist updates.<\/p>","1.2.8":"<p>Security Fix: Escaped <code>$_SERVER[&amp;#039;REQUEST_URI&amp;#039;]<\/code> output to prevent Reflected Cross-Site Scripting (XSS) vulnerability in the admin logs tab.<\/p>","1.2.7":"<p>Enhanced security for capability audit with proper nonce validation and admin-only access.<\/p>","1.2.6":"<p>Added user session tracking, logout history, and capability audit with proper prefixing (<code>ig_<\/code>) and textdomain usage.<\/p>","1.2.4":"<p>Updated version for WordPress.<\/p>","1.2.3":"<p>Updated version for pioneer.<\/p>","1.2.2":"<p>Updated version for vulnerable to Broken Access Control.<\/p>","1.2.1":"<p>Updated version for WordPress.<\/p>","1.2.0":"<p>Bootstrap, FontAwesome and timestamp based log added.<\/p>","1.1.9":"<p>Updating jQuery functions.<\/p>","1.1.8":"<p>Updating FAQs.<\/p>","1.1.7":"<p>Languages added.<\/p>","1.1.6":"<p>Dashboard refined with customers results.<\/p>","1.1.5":"<p>Dashboard introduced for registered users activity regarding orders and logins from different locations.<\/p>","1.1.4":"<p>Sanitized input and fixed direct file access issues.<\/p>","1.1.3":"<p>Updating a few Illegal string offset conditions.<\/p>","1.1.2":"<p>Updating a few Illegal string offset conditions.<\/p>","1.1.0":"<p>Releasing with WP Mechanic free help feature.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":4},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":1361282,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":1361282,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":2029693,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":2538153,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.2.1","1.2.2","1.2.3","1.2.4","1.2.5","1.2.6","1.2.7","1.2.8","1.2.9","1.3.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3098034,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3098034,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Settings panel with log and blocking tools","2":"Capability audit screen with suspicious flagging"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[36594,1174,600,1196,1173],"plugin_category":[54,59],"plugin_contributors":[220404,79969,231855],"plugin_business_model":[],"class_list":["post-27913","plugin","type-plugin","status-publish","hentry","plugin_tags-anti-hacking","plugin_tags-firewall","plugin_tags-security","plugin_tags-sql-injection","plugin_tags-wordpress-security","plugin_category-security-and-spam-protection","plugin_category-utilities-and-tools","plugin_contributors-alianwaar91","plugin_contributors-fahadmahmood","plugin_contributors-invoicepress","plugin_committers-fahadmahmood","plugin_support_reps-acrobaticsjs","plugin_support_reps-codingchamp","plugin_support_reps-danialcooper","plugin_support_reps-ibulbworksupport","plugin_support_reps-jamescharles9","plugin_support_reps-jqueryacrobatics","plugin_support_reps-richiewatson"],"banners":{"banner":"https:\/\/ps.w.org\/injection-guard\/assets\/banner-772x250.png?rev=2538153","banner_2x":"https:\/\/ps.w.org\/injection-guard\/assets\/banner-1544x500.png?rev=2029693","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/injection-guard\/assets\/icon-128x128.png?rev=1361282","icon_2x":"https:\/\/ps.w.org\/injection-guard\/assets\/icon-256x256.png?rev=1361282","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/injection-guard\/assets\/screenshot-1.png?rev=3098034","caption":"Settings panel with log and blocking tools"},{"src":"https:\/\/ps.w.org\/injection-guard\/assets\/screenshot-2.png?rev=3098034","caption":"Capability audit screen with suspicious flagging"}],"raw_content":"<!--section=description-->\n<p><strong>Author:<\/strong> <a href=\"https:\/\/www.androidbubbles.com\/contact\">Fahad Mahmood<\/a><br \/>\n<strong>Project URI:<\/strong> <a href=\"https:\/\/www.androidbubbles.com\/extends\/wordpress\/plugins\/injection-guard\">https:\/\/www.androidbubbles.com\/extends\/wordpress\/plugins\/injection-guard<\/a><br \/>\n<strong>License:<\/strong> GPL v3<\/p>\n\n<p>Injection Guard is a WordPress plugin designed to block malicious query string attacks and suspicious URL parameters. It logs all incoming attempts, blocks harmful parameters, and adds extra security intelligence to your WordPress admin\u2014like user session tracking and capability audit.<\/p>\n\n<p>The plugin uses the <code>ig_<\/code> prefix for database keys and functions, follows WordPress coding standards, and supports multiple languages. It's compatible with pretty permalinks and helps in securing your site from automated bots and manual attacks.<\/p>\n\n<h3>Method A (Admin Panel)<\/h3>\n\n<ol>\n<li>Login to WordPress Admin &gt; Plugins &gt; Add New &gt; Upload Plugin<\/li>\n<li>Upload the ZIP file and activate the plugin<\/li>\n<li>Go to Settings &gt; IG Settings and click \"Save Settings\"<\/li>\n<\/ol>\n\n<h3>Method B (Manual Upload)<\/h3>\n\n<ol>\n<li>Download and unzip the plugin package<\/li>\n<li>Upload the folder to <code>\/wp-content\/plugins\/injection-guard\/<\/code><\/li>\n<li>Activate the plugin from the WordPress Dashboard<\/li>\n<li>Visit Settings &gt; IG Settings to configure<\/li>\n<\/ol>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Logs all unique query strings attempting to penetrate your website<\/li>\n<li>Blocks malicious or unknown query parameters<\/li>\n<li>Tracks login, logout, session start and duration per user<\/li>\n<li>Capability audit report for all WordPress users<\/li>\n<li>Multi-language support (FR, DE, ES)<\/li>\n<li>Bootstrap-based admin UI and dashboard<\/li>\n<\/ul>\n\n<h3>License<\/h3>\n\n<p>This plugin is free software licensed under the GNU GPL v2 or later.<\/p>\n\n<p>You should have received a copy of the GNU General Public License along with this plugin. If not, see <a href=\"http:\/\/www.gnu.org\/licenses\/gpl-2.0.html\">http:\/\/www.gnu.org\/licenses\/gpl-2.0.html<\/a>.<\/p>\n\n<!--section=installation-->\n<p>To install Injection Guard, you will need:\n- WordPress 3.0 or later\n- FTP\/SFTP or hosting control panel access<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20help%20with%20seo%3F\"><h3>Does this plugin help with SEO?<\/h3><\/dt>\n<dd><p>Yes. By preventing invalid URLs from being indexed, it supports clean crawl behavior.<\/p><\/dd>\n<dt id=\"how%20does%20it%20work%3F\"><h3>How does it work?<\/h3><\/dt>\n<dd><p>It monitors incoming query strings and blocks those that don't match expected patterns. You can log, block, or analyze attempts.<\/p><\/dd>\n<dt id=\"what%20if%20i%27m%20still%20getting%20suspicious%20traffic%3F\"><h3>What if I'm still getting suspicious traffic?<\/h3><\/dt>\n<dd><p>Update to the latest version, use pretty permalinks, and tighten your query parameter policy.<\/p><\/dd>\n<dt id=\"can%20i%20get%20help%20with%20setup%20or%20troubleshooting%3F\"><h3>Can I get help with setup or troubleshooting?<\/h3><\/dt>\n<dd><p>Yes. Use the plugin support tab or contact the author via the provided link.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Security: Fixed Stored XSS vulnerability by sanitizing query parameter keys, escaping admin output, improving query handling, and adding a log size limit. [Thanks to Wordfence \/ 15\/03\/2026 \/ Aramsri (Boeing777)].<\/li>\n<\/ul>\n\n<h4>1.2.9<\/h4>\n\n<ul>\n<li>Security Fix: Added depth-limited recursive sanitization for all POST\/array inputs to prevent possible injection or malformed data attacks. [Thanks to Wordfence \/ 28\/02\/2026].<\/li>\n<li>Security Fix: Enforced stricter nonce and super-admin checks on bulk whitelist\/blacklist updates. [Thanks to Wordfence \/ 28\/02\/2026].<\/li>\n<li>Security Fix: Standardized all AJAX JSON responses to use wp_send_json_success() \/ wp_send_json_error() for safer output. [Thanks to Wordfence \/ 28\/02\/2026].<\/li>\n<\/ul>\n\n<h4>1.2.8<\/h4>\n\n<ul>\n<li>Security Fix: Escaped <code>$_SERVER['REQUEST_URI']<\/code> output to prevent Reflected Cross-Site Scripting (XSS) vulnerability in the admin logs tab. [Thanks to WPScan \/ 22\/07\/2025].<\/li>\n<\/ul>\n\n<h4>1.2.7<\/h4>\n\n<ul>\n<li>Enhanced security for capability audit with proper nonce validation and admin-only access.<\/li>\n<\/ul>\n\n<h4>1.2.6<\/h4>\n\n<ul>\n<li>Added user session tracking, logout history, and capability audit with proper prefixing (<code>ig_<\/code>) and textdomain usage. [Thanks to Hila \/ 10\/04\/2025]<\/li>\n<\/ul>\n\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>Updated version for WordPress. [05\/06\/2024]<\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>Updated version for pioneer. [Thanks to alianwaar91][11\/05\/2023]<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Updated version for vulnerable to Broken Access Control. [Thanks to Darius Sveikauskas | Patchstack Alliance overlord][10\/05\/2023]<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Updated version for WordPress. [07\/09\/2022]<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Bootstrap, FontAwesome and timestamp based log added. [Thanks to Team Ibulb Work]<\/li>\n<\/ul>\n\n<h4>1.1.9<\/h4>\n\n<ul>\n<li>Updating jQuery functions.<\/li>\n<\/ul>\n\n<h4>1.1.8<\/h4>\n\n<ul>\n<li>Updating FAQs.<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Languages added. [Thanks to Abu Usman]<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Dashboard refined with customers results.<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Dashboard introduced for registered users activity regarding orders and logins from different locations.<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Sanitized input and fixed direct file access issues.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Updating a few Illegal string offset conditions. [Thanks to PapGeo]<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Updating a few Illegal string offset conditions.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Releasing with WP Mechanic free help feature.<\/li>\n<\/ul>","raw_excerpt":"This plugin blocks all unauthorized and irrelevant requests through query strings and provides extended session tracking and capability audit.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/27913","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=27913"}],"author":[{"embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/fahadmahmood"}],"wp:attachment":[{"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=27913"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=27913"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=27913"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=27913"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=27913"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/frp.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=27913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}