{"id":115703,"date":"2020-01-08T22:05:37","date_gmt":"2020-01-08T22:05:37","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/bad-ip-wp\/"},"modified":"2025-10-05T23:36:23","modified_gmt":"2025-10-05T23:36:23","slug":"bad-ip-wp","status":"publish","type":"plugin","link":"https:\/\/twd.wordpress.org\/plugins\/bad-ip-wp\/","author":17119198,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"2.0.7","stable_tag":"2.0.7","tested":"6.8.5","requires":"3.0.1","requires_php":"7.4","requires_plugins":null,"header_name":"bad_ip WP","header_author":"Iridium Intelligence","header_description":"Protect from malicious IP addresses visiting and trying to exploit your website with addition to block Tor endpoints","assets_banners_color":"","last_updated":"2025-10-05 23:36:23","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/bad-ip.iridiumintel.com","header_author_uri":"https:\/\/iridiumintel.com","rating":5,"author_block_rating":0,"active_installs":20,"downloads":2776,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.2":{"tag":"1.1.2","author":"iridiumintel","date":"2021-07-13 18:06:40"},"2.0.0":{"tag":"2.0.0","author":"iridiumintel","date":"2025-08-31 18:58:48"},"2.0.1":{"tag":"2.0.1","author":"iridiumintel","date":"2025-08-31 19:28:21"},"2.0.2":{"tag":"2.0.2","author":"iridiumintel","date":"2025-09-02 19:48:53"},"2.0.3":{"tag":"2.0.3","author":"iridiumintel","date":"2025-09-05 21:07:00"},"2.0.4":{"tag":"2.0.4","author":"iridiumintel","date":"2025-09-05 22:47:00"},"2.0.5":{"tag":"2.0.5","author":"iridiumintel","date":"2025-09-09 14:50:40"},"2.0.6":{"tag":"2.0.6","author":"iridiumintel","date":"2025-09-10 23:24:53"},"2.0.7":{"tag":"2.0.7","author":"iridiumintel","date":"2025-10-05 23:36:23"}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":"1"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":2224510,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":2224510,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.2","2.0.0","2.0.1","2.0.2","2.0.3","2.0.4","2.0.5","2.0.6","2.0.7"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2313427,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2229662,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Main plugin page where user can observe latest reports segmented in several sections covering login attempts, bad queries logged and access to site from Tor browsers with additional details","2":"Settings page of the bad_ip plugin where user can enable or disable specific functionalities of the plugin"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2155,1220,1174,1493,600],"plugin_category":[52,54],"plugin_contributors":[180550],"plugin_business_model":[],"class_list":["post-115703","plugin","type-plugin","status-publish","hentry","plugin_tags-ban","plugin_tags-block","plugin_tags-firewall","plugin_tags-ip","plugin_tags-security","plugin_category-performance","plugin_category-security-and-spam-protection","plugin_contributors-iridiumintel","plugin_committers-iridiumintel"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/bad-ip-wp\/assets\/icon-128x128.png?rev=2224510","icon_2x":"https:\/\/ps.w.org\/bad-ip-wp\/assets\/icon-256x256.png?rev=2224510","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/bad-ip-wp\/assets\/screenshot-1.png?rev=2313427","caption":"Main plugin page where user can observe latest reports segmented in several sections covering login attempts, bad queries logged and access to site from Tor browsers with additional details"},{"src":"https:\/\/ps.w.org\/bad-ip-wp\/assets\/screenshot-2.png?rev=2229662","caption":"Settings page of the bad_ip plugin where user can enable or disable specific functionalities of the plugin"}],"raw_content":"<!--section=description-->\n<p>Bad IP WP is a modern, developer-focused firewall plugin that protects your WordPress site by blocking malicious IP addresses, brute-force login attempts, TOR exit nodes, and known threat actors. It integrates with the centralized bad_ip database (https:\/\/bad-ip.iridiumintel.com) to automatically sync and apply updated IP blocklists in real-time.<\/p>\n\n<p><strong>Key features:<\/strong>\n- Real-time detection and blocking of malicious visitors\n- TOR network endpoint detection and blocking\n- Brute-force login protection\n- Dashboard-based IP control and analytics\n- API integration with centralized threat database\n- Lightweight and built for performance (no bloat)\n- Ideal for agencies, sysadmins, and developers<\/p>\n\n<p>This plugin is part of the broader <a href=\"https:\/\/bad-ip.iridiumintel.com\">bad_ip ecosystem<\/a> and provides synergy with server-level defenses and other CMS platforms.<\/p>\n\n<h3>Libraries<\/h3>\n\n<p>To make development and maintaining of our plugin as easy as possible, current version uses next public libraries and plugins:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/getbootstrap.com\/\">Bootsrtap<\/a><\/li>\n<li><a href=\"https:\/\/www.chartjs.org\/\">Chart.js<\/a><\/li>\n<li><a href=\"https:\/\/jquery.com\/\">jQuery<\/a><\/li>\n<li><a href=\"https:\/\/jqueryui.com\/easing\/\">jQueryUI<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload <code>bad_ip WP<\/code> to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='what%20if%20i%20lock%20my%20self%20out%20of%20my%20web%20site%3F'><h3>What if I lock my self out of my web site?<\/h3><\/dt>\n<dd><p>Delisting from bad_ip database is pretty straight forward, after you have been redirected as IP with restriction you will be offered a form to unlist your IP, just fill your email address, send request and you will receive link to remove your IP from database.<\/p><\/dd>\n<dt id='can%20web%20crawlers%20still%20index%20my%20web%20site%3F'><h3>Can Web Crawlers still index my web site?<\/h3><\/dt>\n<dd><p>Plugin comes with options in settings to allow crawler bots to bypass reporting and blocking mechanisms, and is enabled by default.<\/p><\/dd>\n<dt id='can%20i%20manually%20whitelist%20ip%3F'><h3>Can I manually whitelist IP?<\/h3><\/dt>\n<dd><p>Yes, in plugin's settings page you can manually add and remove IP's to white and black lists.<\/p><\/dd>\n<dt id='what%20if%20broken%20link%20is%20being%20detected%20as%20bad%20query%3F'><h3>What if broken link is being detected as bad query?<\/h3><\/dt>\n<dd><p>You can add exception for any reported bad query by clicking on icon next to query inside Bad Queries list on main plugin's page<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.0.7<\/h4>\n\n<ul>\n<li>Minor updates<\/li>\n<\/ul>\n\n<h4>2.0.6<\/h4>\n\n<ul>\n<li>Minor updates<\/li>\n<\/ul>\n\n<h4>2.0.5<\/h4>\n\n<ul>\n<li>Minor updates<\/li>\n<\/ul>\n\n<h4>2.0.4<\/h4>\n\n<ul>\n<li>bugfix for PHP 8.2 deprecation<\/li>\n<\/ul>\n\n<h4>2.0.3<\/h4>\n\n<ul>\n<li>bugfix for PHP 8.2 deprecation, refactored bad_query logic<\/li>\n<\/ul>\n\n<h4>2.0.2<\/h4>\n\n<ul>\n<li>Minor updates<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Minor updates<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>WP 6.6 compatibility<\/li>\n<li>Codebase cleanup and PHP 8+ compatibility<\/li>\n<li>Switched to native rendering from Timber<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.20<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.13<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.12<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.11<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.10<\/h4>\n\n<ul>\n<li>Server migration<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Patch<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Storing of IP and query whitelists and blacklists moved to database<\/li>\n<li>Implemented ipalyzer as external IP info service for reported IP's<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Patch with unlist request<\/li>\n<li>Bad queries check upgrade<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Patch with missing view<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Upgrade process refactor<\/li>\n<li>Query whitelisting<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Introducing data visualisation in reports<\/li>\n<li>Regular refactoring and optimisation<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Upgrade process refactor<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Manually add IP to white or black list<\/li>\n<li>IP info link on blocked IP's<\/li>\n<li>Unlist request for blocked IP<\/li>\n<li>Option to allow web crawlers<\/li>\n<li>Refactoring<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release of the plugin.<\/li>\n<\/ul>","raw_excerpt":"Lightweight WordPress firewall plugin to block malicious IPs, TOR nodes, and brute-force attacks with real-time sync and control.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/115703","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=115703"}],"author":[{"embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/iridiumintel"}],"wp:attachment":[{"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=115703"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=115703"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=115703"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=115703"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=115703"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/twd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=115703"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}