{"id":278927,"date":"2026-03-05T19:06:49","date_gmt":"2026-03-05T19:06:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/security-kit\/"},"modified":"2026-03-05T19:07:05","modified_gmt":"2026-03-05T19:07:05","slug":"srworks-armorlite","status":"publish","type":"plugin","link":"https:\/\/lmo.wordpress.org\/plugins\/srworks-armorlite\/","author":23444628,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"5.3","requires_php":"7.4","requires_plugins":null,"header_name":"SRWorks ArmorPro Lite","header_author":"SRWorks LLC","header_description":"Free WordPress security with firewall, brute force protection, bot detection, security headers, IP whitelist, and login monitoring. Lightweight, no bloat.","assets_banners_color":"316656","last_updated":"2026-03-05 19:07:05","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/srworks-armorlite\/","header_author_uri":"https:\/\/srworks.co","rating":0,"author_block_rating":0,"active_installs":0,"downloads":162,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"srworks","date":"2026-03-05 19:07:05"}},"upgrade_notice":{"1.0.0":"<p>Initial release of SRWorks ArmorPro Lite. Free WordPress security with firewall, brute force protection, bot detection, and more.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3475861,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3475861,"resolution":"256x256","location":"assets","locale":""},"icon.svg":{"filename":"icon.svg","revision":3475861,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3475861,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3475861,"resolution":"772x250","location":"assets","locale":""},"banner.svg":{"filename":"banner.svg","revision":3475861,"resolution":false,"location":"assets","locale":false}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Security Dashboard with real-time stats, protection status overview, and blocks over time chart","2":"Brute Force Protection with login activity log, status badges, and lockout settings","3":"Firewall with 600+ built-in patterns, pattern manager with per-pattern toggle and hit counts","4":"Access Control with IP whitelist","5":"Settings page with security headers and basic configuration","6":"Tools and Diagnostics with system health checks and database repair"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2439,1174,2846,15756,600],"plugin_category":[54],"plugin_contributors":[257201],"plugin_business_model":[],"class_list":["post-278927","plugin","type-plugin","status-publish","hentry","plugin_tags-brute-force","plugin_tags-firewall","plugin_tags-headers","plugin_tags-login-protection","plugin_tags-security","plugin_category-security-and-spam-protection","plugin_contributors-srworks","plugin_committers-srworks"],"banners":{"banner":"https:\/\/ps.w.org\/srworks-armorlite\/assets\/banner-772x250.png?rev=3475861","banner_2x":"https:\/\/ps.w.org\/srworks-armorlite\/assets\/banner-1544x500.png?rev=3475861","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/srworks-armorlite\/assets\/icon.svg?rev=3475861","icon":"https:\/\/ps.w.org\/srworks-armorlite\/assets\/icon.svg?rev=3475861","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>ArmorLite<\/strong> is a free, lightweight WordPress security plugin built for performance. Firewall with 600+ built-in patterns, brute force protection, bot detection, security headers, and login monitoring. No bloat, no unnecessary database queries, no external API calls during normal operation.<\/p>\n\n<h4>Free Features<\/h4>\n\n<ul>\n<li><strong>Firewall<\/strong> \u2014 Pure PHP string-matching firewall with 600+ built-in patterns covering SQL injection, XSS, path traversal, shell access, and more. Five categories (Request URI, Query String, User Agent, Referrer, IP Address). Three matching modes: contains, ends-with, and path-only. Pattern manager with per-pattern toggle and hit counts.<\/li>\n<li><strong>Brute Force Protection<\/strong> \u2014 Session-based login tracking with automatic IP lockouts after configurable failed attempts. Login activity log with IP, location, status badges, and usernames tried. 7-day log retention.<\/li>\n<li><strong>Bot Protection<\/strong> \u2014 Automated bot detection for login, registration, and password reset forms using honeypot fields, timestamp validation, and JavaScript token verification. Blocks bots before they can attempt brute force attacks.<\/li>\n<li><strong>Security Headers<\/strong> \u2014 Four managed headers (X-Content-Type-Options, X-Frame-Options, Referrer-Policy, X-XSS-Protection) with dual delivery via PHP and .htaccess. Header probe system avoids duplicates.<\/li>\n<li><strong>IP Whitelist<\/strong> \u2014 Whitelist trusted IPs to bypass all security checks including brute force lockouts and firewall blocking.<\/li>\n<li><strong>Obfuscation<\/strong> \u2014 Author slug randomization to prevent user enumeration and email obfuscation to protect addresses from scrapers.<\/li>\n<li><strong>Dashboard<\/strong> \u2014 Real-time stats, blocks over time chart, protection status cards, and WordPress dashboard widget.<\/li>\n<li><strong>XML-RPC &amp; REST API Protection<\/strong> \u2014 Disable XML-RPC and protect the REST API from user enumeration.<\/li>\n<li><strong>Firewall Log<\/strong> \u2014 View blocked requests with IP, matched rule, request URI, and timestamps. 7-day log retention.<\/li>\n<li><strong>Tools<\/strong> \u2014 Health checks with database integrity verification, one-click table repair, and debug mode.<\/li>\n<\/ul>\n\n<h4>Upgrade to ArmorPro<\/h4>\n\n<p>Need more protection? <a href=\"https:\/\/srworks.co\/plugins\/armorpro\/?utm_source=armorlite&amp;utm_medium=readme&amp;utm_campaign=description#pricing\">ArmorPro<\/a> adds:<\/p>\n\n<ul>\n<li>WAF Engine (blocks attacks before WordPress loads)<\/li>\n<li>Two-Factor Authentication (TOTP) with backup codes<\/li>\n<li>Passkey Authentication (Face ID, Touch ID, Windows Hello)<\/li>\n<li>Custom Login URL (hide wp-login.php)<\/li>\n<li>IP Blacklist with auto-blacklist for repeat offenders<\/li>\n<li>Country Blocking with GeoIP<\/li>\n<li>HSTS, Content-Security-Policy, and Permissions-Policy headers<\/li>\n<li>Email Notifications and digest summaries<\/li>\n<li>Extended log retention (90 days)<\/li>\n<li>Custom firewall patterns<\/li>\n<li>Export\/import settings<\/li>\n<\/ul>\n\n<p><a href=\"https:\/\/srworks.co\/plugins\/armorpro\/?utm_source=armorlite&amp;utm_medium=readme&amp;utm_campaign=description#pricing\">Learn more about ArmorPro<\/a><\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to external third-party services in the following situations:<\/p>\n\n<h4>Anonymous Usage Data (Optional)<\/h4>\n\n<p>This plugin can optionally share anonymous usage data to help improve ArmorLite. This is disabled by default and requires explicit opt-in from the Settings page.<\/p>\n\n<ul>\n<li>When it is called: Daily heartbeat (if opted in)<\/li>\n<li>Data sent: WordPress version, PHP version, active plugin features (no personal data)<\/li>\n<li>Service: https:\/\/api.srworks.co<\/li>\n<li>Privacy: https:\/\/srworks.co\/privacy<\/li>\n<\/ul>\n\n<p>No personal data is collected or stored by this service.<\/p>\n\n<h3>Privacy Policy<\/h3>\n\n<p>ArmorLite stores the following data locally in your WordPress database:<\/p>\n\n<ul>\n<li>IP addresses of visitors who trigger security rules or attempt to log in<\/li>\n<li>Timestamps of security events<\/li>\n<li>Usernames used in login attempts<\/li>\n<\/ul>\n\n<p>This data is stored to help you monitor and protect your website. You can clear all logs at any time from the Tools tab. When the plugin is uninstalled, all data is automatically deleted.<\/p>\n\n<p>No visitor data is sent to external services during normal operation. Anonymous usage data sharing is optional and disabled by default.<\/p>\n\n<h3>Support<\/h3>\n\n<p>Need help with ArmorLite? Have a feature request or found a bug?<\/p>\n\n<p>Visit our support page: https:\/\/srworks.co\/contact<\/p>\n\n<h3>Credits<\/h3>\n\n<p>Firewall patterns inspired by the work of Jeff Starr at Perishable Press (https:\/\/perishablepress.com). Used under GPLv2.<\/p>\n\n<p>Charts powered by Chart.js (https:\/\/www.chartjs.org), MIT License.<\/p>\n\n<p>Tooltips powered by Tippy.js (https:\/\/atomiks.github.io\/tippyjs), MIT License.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the \"srworks-armorlite\" folder to \"\/wp-content\/plugins\/\"<\/li>\n<li>Activate the plugin through the Plugins menu in WordPress<\/li>\n<li>Go to ArmorLite in your admin menu to configure settings<\/li>\n<li>Enable the features you need (firewall, brute force protection, etc.)<\/li>\n<\/ol>\n\n<p>That's it! Your site is now protected.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20armorlite%20work%20with%20nginx%3F\"><h3>Does ArmorLite work with NGINX?<\/h3><\/dt>\n<dd><p>Yes! ArmorLite works on any web server including Apache, NGINX, LiteSpeed, and others. The firewall uses pure PHP and requires no server configuration.<\/p><\/dd>\n<dt id=\"will%20this%20security%20plugin%20slow%20down%20my%20website%3F\"><h3>Will this security plugin slow down my website?<\/h3><\/dt>\n<dd><p>No. ArmorLite is designed for performance. The firewall uses fast string matching (stripos) to scan requests early in the WordPress load process. Blocked requests are stopped before WordPress fully loads, actually reducing server load from attacks.<\/p><\/dd>\n<dt id=\"how%20does%20the%20brute%20force%20protection%20work%3F\"><h3>How does the brute force protection work?<\/h3><\/dt>\n<dd><p>ArmorLite monitors login attempts and tracks failed logins by IP address using session-based tracking. After a configurable number of failures (2, 3, 5, or 10 attempts), the IP is temporarily locked out for a configurable duration (5 minutes to 2 hours).<\/p><\/dd>\n<dt id=\"what%20does%20the%20bot%20protection%20do%3F\"><h3>What does the bot protection do?<\/h3><\/dt>\n<dd><p>Bot protection adds invisible honeypot fields, timestamp validation, and JavaScript token verification to login, registration, and password reset forms. Automated bots that submit forms without rendering JavaScript or that submit too quickly are blocked before they can attempt brute force attacks.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20with%20other%20security%20plugins%3F\"><h3>Can I use this with other security plugins?<\/h3><\/dt>\n<dd><p>Yes, but there may be overlapping features. We recommend testing thoroughly. ArmorLite is designed to be lightweight and focused, so it generally pairs well with other plugins without conflicts.<\/p><\/dd>\n<dt id=\"how%20do%20i%20whitelist%20my%20ip%20address%3F\"><h3>How do I whitelist my IP address?<\/h3><\/dt>\n<dd><p>Go to ArmorLite &gt; Access Control and add your IP to the whitelist. Whitelisted IPs bypass all security checks including brute force lockouts and firewall blocking.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20armorlite%20and%20armorpro%3F\"><h3>What is the difference between ArmorLite and ArmorPro?<\/h3><\/dt>\n<dd><p>ArmorLite includes all the essential security features for free: firewall, brute force protection, bot detection, basic security headers, IP whitelist, and login monitoring. ArmorPro adds advanced features like the WAF engine, two-factor authentication, passkey login, custom login URL, country blocking, IP blacklist, advanced security headers, email notifications, and extended log retention. <a href=\"https:\/\/srworks.co\/plugins\/armorpro\/?utm_source=armorlite&amp;utm_medium=readme&amp;utm_campaign=faq#pricing\">Compare features<\/a><\/p><\/dd>\n<dt id=\"what%20data%20does%20armorlite%20collect%3F\"><h3>What data does ArmorLite collect?<\/h3><\/dt>\n<dd><p>ArmorLite stores security logs locally in your WordPress database (IP addresses, timestamps, usernames from login attempts). No visitor data is sent to external services. Anonymous usage data sharing is optional and disabled by default.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20an%20ip%20is%20blocked%3F\"><h3>What happens when an IP is blocked?<\/h3><\/dt>\n<dd><p>Blocked visitors see a professional \"Access Blocked\" page with a 403 status code. The page is clean and branded, informing them to contact the site administrator if they believe it's an error.<\/p><\/dd>\n<dt id=\"is%20armorlite%20compatible%20with%20caching%20plugins%3F\"><h3>Is ArmorLite compatible with caching plugins?<\/h3><\/dt>\n<dd><p>Yes. ArmorLite works with all major caching plugins including WP Rocket, W3 Total Cache, LiteSpeed Cache, and WP Super Cache. The firewall runs before caching layers and includes proper cache-control headers.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Firewall with 600+ built-in patterns<\/li>\n<li>Brute force protection with configurable thresholds<\/li>\n<li>Bot protection (honeypot, timestamp, JS token)<\/li>\n<li>Security headers (X-Content-Type, X-Frame-Options, Referrer-Policy, X-XSS-Protection)<\/li>\n<li>IP whitelist<\/li>\n<li>Author slug and email obfuscation<\/li>\n<li>XML-RPC and REST API protection<\/li>\n<li>Login activity log (7-day retention)<\/li>\n<li>Firewall log (7-day retention)<\/li>\n<li>Dashboard with stats and chart<\/li>\n<li>Health checks and database repair<\/li>\n<\/ul>","raw_excerpt":"Free WordPress security with firewall, brute force protection, bot detection, security headers, IP whitelist, and login monitoring. No bloat.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/278927","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=278927"}],"author":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/srworks"}],"wp:attachment":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=278927"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=278927"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=278927"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=278927"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=278927"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=278927"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}