{"id":10634,"date":"2026-05-18T05:31:03","date_gmt":"2026-05-17T21:31:03","guid":{"rendered":"https:\/\/aeosub.com\/zerobot-security\/"},"modified":"2026-05-18T05:31:03","modified_gmt":"2026-05-17T21:31:03","slug":"zerobot-security","status":"publish","type":"post","link":"https:\/\/aeosub.com\/zh\/zerobot-security\/","title":{"rendered":"ZeroBot Security"},"content":{"rendered":"<div class=\"plugin-info-card\" style=\"border: 1px solid #e2e8f0;border-radius: 10px;overflow: hidden;margin-bottom: 30px;font-family: -apple-system, system-ui, sans-serif;background: #fff\">\n<table style=\"width: 100%;border-collapse: collapse;font-size: 14px\">\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 15px 20px;text-align: left;width: 35%;color: #4a5568;background: #fcfcfc\"><img decoding=\"async\" src=\"https:\/\/s.w.org\/plugins\/geopattern-icon\/zerobot-security.svg\" style=\"width: 40px;height: 40px;border-radius: 6px;margin-right: 12px;vertical-align: middle\"> Developer<\/th>\n<td style=\"padding: 15px 20px;font-weight: 500\"><a href=\"https:\/\/profiles.wordpress.org\/zerobot\/\" target=\"_blank\" rel=\"noopener\">zerobot<\/a><\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Version<\/th>\n<td style=\"padding: 12px 20px\">v1.0.15<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Active Installs<\/th>\n<td style=\"padding: 12px 20px\">0 +<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Requires \/ Tested<\/th>\n<td style=\"padding: 12px 20px\">5.8 \/ 6.9.4<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #edf2f7\">\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Last Updated<\/th>\n<td style=\"padding: 12px 20px\">2026-05-17 9:16pm GMT<\/td>\n<\/tr>\n<tr>\n<th style=\"padding: 12px 20px;text-align: left;color: #4a5568;background: #fcfcfc\">Official Link<\/th>\n<td style=\"padding: 12px 20px\"><a href=\"https:\/\/wordpress.org\/plugins\/zerobot-security\/\" target=\"_blank\" style=\"text-decoration: none;color: #4a3bca;font-weight: bold\" rel=\"noopener\">View Details \u2192<\/a><\/td>\n<\/tr>\n<\/table><\/div>\n<div class=\"plugin-short-desc\" style=\"margin: 20px 0;padding: 12px 15px;background: #f9fafb;border-left: 4px solid #4a3bca;border-radius: 6px;font-style: italic;color: #4a5568\">Full-stack antibot, firewall, captcha, and threat intelligence for WordPress \u2014 powered by the ZeroBot platform.<\/div>\n<p>ZeroBot Security brings the full ZeroBot antibot platform to WordPress, adding six layered defenses<br \/>\nmanaged from a single dashboard. Every event is screened against a 1.5M+ IP intelligence database,<br \/>\nfingerprint-based scoring, and real-time threat sharing across the ZeroBot network.<\/p>\n<h4>Six Protection Layers<\/h4>\n<ul>\n<li><strong>Page Protection<\/strong> \u2014 Per-page antibot screening. Renders Cloudflare Turnstile or the ZeroBot<br \/>\nnative slider captcha for borderline visitors before letting them through.<\/li>\n<li><strong>Firewall<\/strong> \u2014 Site-wide screening of every public request against the ZeroBot threat database.<\/li>\n<li><strong>Login Brute-Force Guard<\/strong> \u2014 Tracks failed logins per IP, auto-blocks after N attempts,<br \/>\noptionally pushes IPs to your ZeroBot blacklist.<\/li>\n<li><strong>Comment Guard<\/strong> \u2014 Blocks bot comments before they&#8217;re saved.<\/li>\n<li><strong>REST API Guard<\/strong> \u2014 Screens public REST calls (with configurable exempt routes).<\/li>\n<li><strong>XML-RPC Guard<\/strong> \u2014 Disables XML-RPC entirely (a major attack vector).<\/li>\n<\/ul>\n<h4>Full Platform Management<\/h4>\n<ul>\n<li><strong>Domain Rules<\/strong> \u2014 Create, edit, and delete antibot rules from inside wp-admin.<\/li>\n<li><strong>Whitelist<\/strong> \u2014 IPs, CIDR ranges, and ASNs scoped per service. Bulk import supported.<\/li>\n<li><strong>Blacklist<\/strong> \u2014 Same scoping and bulk import as the whitelist.<\/li>\n<li><strong>Threat Logs<\/strong> \u2014 Filterable, paginated viewer of every traffic event with CSV export.<\/li>\n<li><strong>Dashboard<\/strong> \u2014 Live stats, 7-day traffic chart, recent threats, account info.<\/li>\n<\/ul>\n<h4>Other Features<\/h4>\n<ul>\n<li>Cloudflare \/ proxy IP detection (CF-Connecting-IP, X-Real-IP, X-Forwarded-For)<\/li>\n<li>Decision cache via WordPress object cache (Redis\/Memcached) with transient fallback<\/li>\n<li>Fail-open by default \u2014 never breaks your site if the API is unreachable<\/li>\n<li>Daily license verification via wp-cron<\/li>\n<li>WP-admin dashboard widget showing bots\/humans (24h)<\/li>\n<li>Pure PHP + vanilla JS \u2014 no jQuery, no React, no external CDN<\/li>\n<\/ul>\n<h3>External Services<\/h3>\n<p>This plugin connects to the following third-party service to provide its core bot-detection<br \/>\nand threat-intelligence features. Nothing is contacted until the administrator enters a<br \/>\nlicense key and activates a protection layer.<\/p>\n<p><strong>1. ZeroBot API (https:\/\/zerobot.info)<\/strong><\/p>\n<ul>\n<li>What it does: Classifies visitors as human or bot, synchronizes domain rules \/ whitelists \/<br \/>\nblacklists, and returns threat log data for the dashboard.<\/li>\n<li>When it&#8217;s called: On every public request that one of the enabled protection layers handles<br \/>\n(Firewall, Page Protection, Login Guard, Comment Guard, REST API Guard). Also called from the<br \/>\nadmin dashboard for stats, rules, lists, and traffic logs. Also called once per day by<br \/>\nwp-cron for license verification.<\/li>\n<li>Data transmitted: Visitor IP address, user agent, current URL host, site domain, and the<br \/>\nplugin&#8217;s license key. No post content, no customer personal data, no form submissions.<\/li>\n<li>What it returns: A JSON decision object (<code>is_bot<\/code>, <code>reason<\/code>, <code>risk_score<\/code>, optional<br \/>\n  captcha_html), plan metadata, and aggregate stats for the dashboard.<\/li>\n<li>Terms &amp; Privacy: https:\/\/zerobot.info\/terms \u2014 https:\/\/zerobot.info\/policy<\/li>\n<\/ul>\n<p><strong>2. ZeroBot Fingerprint Collector (https:\/\/zerobot.info\/fingerprint\/index.js)<\/strong><\/p>\n<ul>\n<li>What it does: Collects client-side browser signals (canvas, WebGL, fonts, behavior) to detect<br \/>\nheadless browsers, VMs, and automation frameworks.<\/li>\n<li>When it&#8217;s loaded: Injected on public pages and the login screen ONLY when the administrator<br \/>\nenables &#8220;Browser Fingerprint&#8221; in Protection Settings. It is disabled by default; the plugin<br \/>\ndoes not load any external JavaScript out of the box.<\/li>\n<li>Data transmitted: Browser fingerprint signals and the visitor&#8217;s IP address. No WordPress<br \/>\nuser data, no cookies, no form data.<\/li>\n<li>What it returns: A risk score used to decide whether a visitor should face a soft challenge.<\/li>\n<li>Terms &amp; Privacy: https:\/\/zerobot.info\/terms \u2014 https:\/\/zerobot.info\/policy<\/li>\n<\/ul>\n<p><strong>3. FlagCDN (https:\/\/flagcdn.com)<\/strong><\/p>\n<ul>\n<li>What it does: Serves tiny country-flag PNG images for the admin-only traffic log.<\/li>\n<li>When it&#8217;s loaded: Only inside wp-admin, only when the administrator opens the Dashboard or<br \/>\nThreat Logs page. It is never loaded on the public site. Only 2-letter ISO country codes are<br \/>\ntransmitted as part of the image URL.<\/li>\n<li>Data transmitted: The 2-letter country code and standard image-request metadata. No visitor<br \/>\ndata, no WordPress data, no cookies.<\/li>\n<li>Service homepage: https:\/\/flagcdn.com<\/li>\n<\/ul>\n<p>If you do not wish to transmit any data to ZeroBot, simply do not activate a license \u2014 the<br \/>\nplugin stays dormant.<\/p>\n<h3>Privacy<\/h3>\n<p>This plugin does not store visitor personal data in your WordPress database beyond IP<br \/>\naddresses in the local threat-log table (<code>wp_zb_threats<\/code>, dropped on uninstall). It does<br \/>\nnot set any cookies on visitors. Data sent to the ZeroBot service is described in the<br \/>\nExternal Services section above.<\/p>","protected":false},"excerpt":{"rendered":"<p>Full-stack antibot, firewall, captcha, and threat intelligence for WordPress \u2014 powered by the ZeroBot platform.<\/p>","protected":false},"author":1,"featured_media":9317,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[252],"tags":[1110,1111,932,664,1112,555],"class_list":["post-10634","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-trends","tag-antibot","tag-captcha","tag-firewall","tag-security","tag-threat-intelligence","tag-wordpress-plugin"],"_links":{"self":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/10634","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/comments?post=10634"}],"version-history":[{"count":0,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/posts\/10634\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media\/9317"}],"wp:attachment":[{"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/media?parent=10634"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/categories?post=10634"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aeosub.com\/zh\/wp-json\/wp\/v2\/tags?post=10634"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}