Plugin Directory

Test out the new Plugin Directory and let us know what you think.

Shield WordPress Security

The Most Comprehensive and Highest-Rated Security System for WordPress (formerly the WordPress Simple Firewall).

5.6.2 Latest Point Release

Released: 10th February, 2017

  • (v.2) CHANGE: Fix an instance where the hidden Login URL would be leaded.

5.6 Series

  • (v.2) CHANGE: Fix an instance where the hidden Login URL would be leaded.
  • (v.1) CHANGE: Replaying of Yubikey one-time-passwords is no longer permitted.
  • (v.1) ADDED: Filter for login form GASP fields.
  • (v.1) ADDED: Filter for comment form GASP fields.
  • (v.1) CHANGE: Improved compatibility of HTTP Headers with WP Super Cache.
  • (v.0) ADDED: Option to disable anonymous Rest API access. WordPress v4.7+ only. Note that if another plugin or service authenticates the request it will be honoured, whether anonymous or not.

5.5 Series

  • (v.6) IMPROVED: Fixed possible leak of the Login URL from the 'Hide WP Login URL' feature.
  • (v.5) ADDED: Ability to add custom protocols to the domains (apart from http/s) to the Content Security Policy
  • (v.5) FIXED: Bug where automatic update emails would contain empty plugins.
  • (v.5) FIXED: Javascript scope on GASP form elements.
  • (v.5) FIXED: Various fixes and code improvements.
  • (v.4) FIXED: Bug with data cleaning/storage that caused stored options to balloon resulting in database timeouts. (only certain options affected)
  • (v.4) IMPROVED: Sometimes "anti-virus" scanners scared normal, everyday hard-working folk by identifying a Shield file as being a virus, because they're not very clever - reduced chances of this.
  • (v.3) ADDED: Fix for WordPress Multisite where the correct database prefix wasn't being used.
  • (v.2) ADDED: Filter to allow modification of the email footer
  • (v.2) ADDED: Block auto-updates on Shield itself if PHP < 5.3 and new version is v6.0+
  • (v.2) FIXED: Missing Link
  • (v.2) FIXED: Plugin Installation ID wasn't always being set
  • (v.2) TRANSLATIONS: Dutch (56%)
  • (v.1) ADDED: Built-in forceful protection in the form of a wp_die() against the (currently) un-patched W3 Total Cache XSS vulnerability more info
  • (v.1) IMPROVED: Better XMLRPC Lockdown - prevents ANY XMLRPC command processing.
  • (v.1) IMPROVED: Make certain strings translatable
  • (v.1) IMPROVED: Wrap-up certain login form elements into spans/divs to allow styling etc.
  • (v.1) IMPROVED: PHP Version number cleaning during stats tracking.
  • (v.0) ADDED: Options and statistics tracking ability. Over time we are looking to share statistics and performance metrics of Shield.
  • (v.0) IMPROVED: Performance for options loading, especially for web hosts that don't permit file writing
  • (v.0) CHANGED: Numerous fixes and code improvements.
  • (v.0) CHANGED: Removed query that deletes old GASP comment tokens on normal page loads.
  • (v.0) CHANGED: Google reCAPTCHA is now based on the locale of the website, not auto-detected.
  • (v.0) FIXED: Now URL encodes the username in the link for two-factor authentication by email.
  • (v.0) FIXED: If the xmlrpc.php has been deleted, this is now ignore by the file scanner
  • (v.0) TRANSLATIONS: Dutch (38%), Portuguese (32%)

5.4 Series

  • (v.5) CHANGED: User Management module is no-longer enabled by default on clean installations
  • (v.5) CHANGED: Made the GASP checkbox for Login protection clickable by label. Thanks Aubrey!
  • (v.5) CHANGED: Shield Statistics only shows for WordPress admins (instead of all users)
  • (v.5) FIXED: Added a couple of guards to ensure data is of the correct format to prevent spurious errors
  • (v.5) FIXED: Bug where automatic file repair links from emails we're not working.
  • (v.4) SKIPPED.
  • (v.3) FIXED: Various fixes and improvements
  • (v.3) CHANGED: Lots of cleaning of old code.
  • (v.3) REMOVED: Various old, unused options, and the force_ssl_login option as it's deprecated by WordPress Core
  • (v.3) TRANSLATIONS: Dutch (36%), Swedish (35%)
  • (v.3) FIXED: Various fixes and improvements
  • (v.3) CHANGED: Lots of cleaning of old code.
  • (v.3) REMOVED: Various old, unused options, and the force_ssl_login option as it's deprecated by WordPress Core
  • (v.3) TRANSLATIONS: Dutch (36%), Swedish (35%)
  • (v.2) ADDED: A guard around certain modules like, User Sessions, to ensure the DB has been initiated properly before use.
  • (v.2) ADDED: Exclusion for Swedish license files that don't exist in the SVN repo.
  • (v.2) ADDED: Parameter exclusion for reCAPTCHA.
  • (v.2) CHANGED: HTTP Security Headers module is enabled by default on new installs.
  • (v.1) FIXED: Nasty bug that caused an infinite loop bug in some configurations.
  • (v.0) ADDED: Per-site plugin statistics gathering - summary display on admin dashboard.
  • (v.0) ADDED: HTML class to the "I'm a human" checkbox field.
  • (v.0) ADDED: Ability to change minimum user role for login notification emails with use of add_filter(). See FAQs.
  • (v.0) REMOVED: Option 'Prevent Remote Login' causes more trouble with than it's worth with too many hosting configurations.
  • (v.0) CHANGED: For websites that don't run WP Crons correctly, added code for automatic database cleaning.
  • (v.0) CLEANED: Removed Twig render code as it was never being used.

5.3 Series

  • (v.2) IMPROVED: HTTP Security Headers Content Security Policy now supports specifying HTTPS for domains/hosts.
  • (v.2) FIXED: Human Comment SPAM Feature didn't fire under certain circumstances.
  • (v.2) FIXED: Fixed parsing of Human Comment SPAM dictionary words.
  • (v.1) TRANSLATIONS: Dutch (32%)
  • (v.0) ADDED: New Feature - HTTP Security Headers.
  • (v.0) FIXED: Prevent renaming WP Login to "/login"

5.2 Series

  • (v.0) ADDED: Guard against core file scanner and automatic WordPress updates clashing.
  • (v.0) CHANGED: Logic for brute force login checking is improved - they all run before username/password checking
  • (v.0) FIXED: Certain older versions of PHP don't like combined IPv4 and IPv6 filter flags
  • (v.0) FIXED: Google reCAPTCHA for WordPress sites that have restrictive settings for sockets etc.
  • (v.0) REMOVED: Plugin vulnerabilities scanner. It's out-of-date and unsuitable.

5.1 Series

  • (v.0) FIXED: Improved compatibility with bbPress.
  • (v.0) CHANGED: Optimizations around options and definitions (storing fewer options data)
  • (v.0) CHANGED: Improved styling and responsiveness of plugin badge.
  • (v.0) ADDED: Ability to programmatically export/import options - further preparation for iControlWP+Shield integration.
  • (v.0) FIXED: Issue where Core automatic updates would fail, but notification email was sent anyway

5.0 Series

  • (v.3) FIXED: Issue with setting session cookies with PHP 7
  • (v.2) FIXED: Rename WordPress Login URL bug
  • (v.2) CHANGED: reCAPTCHA text usage corrected throughout plugin.
  • (v.1) CHANGED: Removed the whole 'wp-content' directory from the Core File Scanner feature.
  • (v.1) CHANGED: A WordPress filter to change the plugin badge text content (see FAQ)
  • (v.1) CHANGED: Tweaked the plugin badge styling.
  • (v.1) CHANGED: All emails sent by the plugin contain the name of the site and the current plugin version in the email footer.
  • (v.1) ADDED: In-plugin links to blogs and info articles for Google ReCaptcha and Google Authenticator
  • (v.0) NEW: WordPress Simple Firewall plugin has been re-branded and is called Shield
  • (v.0) ADDED: NEW feature - Google ReCaptcha for Comment SPAM and Login protection.
  • (v.0) ADDED: Support for this plugin is now Premium. Added Premium Support page that links to Helpdesk.
  • (v.0) CHANGED: Refactor of comment spam code.
  • (v.0) CHANGED: Core File Scanner now handles the odd Hungarian distribution.

4.17 Series

Released: 17th February, 2016

  • (v.0) ADDED: NEW feature - Google Authenticator Login option.
  • (v.0) ADDED: Core File Scanner now includes an automatic link to repair files (you must be logged in as admin for this link to work!).
  • (v.0) ADDED: NEW - if you already have a logged-in session and you open the login screen, you'll be provided with a link to go straight to the admin area.
  • (v.0) CHANGED: Email-based Two-Factor Authentication is now stateless/session-less - it will not check validity per-page load.
  • (v.0) CHANGED: Changes to the email-based authentication system - now only 1 option and it no longer locks to IP or browser.
  • (v.0) CHANGED: Various efficiency improvements including reduced SQL updates.
  • (v.0) CHANGED: Email system is improved and now send emails from the default WordPress sender. This may be changed with filter.

4.16 Series

Released: 20th January, 2016

  • (v.2) CHANGED: Further changes and improvements to the Core File Scanner.
  • (v.2) CHANGED: Improvements to the automatic black list system for failed login attempts.
  • (v.2) TRANSLATIONS: Turkish (100%)
  • (v.1) CHANGED: Improved the contents of the Core File Scanner notification email with links to original source files.
  • (v.1) CHANGED: Now also excluding the /wp-content/languages/ directory since translations may update independently.
  • (v.1) CHANGED: Handles the special case of old index.php files
  • (v.0) ADDED: Feature: Automatically scans WordPress Core files and detects alterations from the default WordPress Core File data
  • (v.0) ADDED: Feature: to automatically attempt to repair/replace WordPress Core files that are discovered which have been altered.
  • (v.0) ADDED: Option to toggle the Plugin Vulnerabilities cron.
  • (v.0) ADDED: Two-Factor Authentication links now honour the WordPress 'redirect_to' parameter.

4.15 Series

Released: 6th January, 2016

  • (v.0) ADDED: New and updated Firewall rules as well as a new 'Aggressive' option that looks for additional request data. Disabled by default, but may cause an increase in false positives.
  • (v.0) CHANGED: Improved and optimized Firewall processing.
  • (v.0) FIXED: Issue where automatic update notification emails are sent out without any update notices (probably due to failed updates).
  • (v.0) FIXED: Small conflict with WP Login Rename and other security plugins.
  • (v.0) TRANSLATIONS: Czech (91%), Finnish (98%), Turkish (98%).

4.14 Series

Released: 20th November, 2015

  • (v.2) ADDED: User notice message displayed when the 'Theme My Login' plugin is active and you try to rename your login URL - It is not compatible.
  • (v.1) ADDED: Added WordPress filter option to specify URL instead of present a 404 when Rename WP Login is active. more info
  • (v.1) ADDED: Added 'Unique Plugin Installation ID' to be utilized in the future.
  • (v.1) FIXED: WordPress Comments bug where some comments didn't pass through the SPAM filters in a certain scenario.
  • (v.0) ADDED: Custom Automatic Update Notifications Email that runs separately to the in-built WordPress core notification email.
  • (v.0) ADDED: Filter to remove the admin area IP address footer text
  • (v.0) CHANGED: Added native support for PayPal return links - whitelisting "verify_sign" parameter.
  • (v.0) CHANGED: Tweak patterns for matching on 'WordPress terms'.
  • (v.0) TRANSLATIONS: Danish (100%), Czech (92%), Turkish (92%), Finnish (88%),
  • (v.0) FIXED: Small bugs and readying for WordPress 4.4

4.13 Series

Released: 22nd October, 2015

  • (v.0) NEW: Added option to block the modification, addition/promotion and deletion of WordPress administrators users within the 'Security Admin' module.
  • (v.0) NEW: Renamed 'Admin Access' module to 'Security Admin'.
  • (v.0) CHANGED: Simplified and consolidated the use of cookies for User Session - sets and removes cookies better to reduce their usage.
  • (v.0) CHANGED: Simplified and consolidated the use of cookies for Two Factor Login Authentication.
  • (v.0) CHANGED: Cleaned up some Comment SPAM filtering code.
  • (v.0) CHANGED: Comments Filter doesn't use cookies unless a session cookie for the visitor already exists.
  • (v.0) CHANGED: IP Manager Automatic Black List - default black list duration is now 1 minute & default transgressions limit is 10
  • (v.0) CHANGED: Improvements to the database create queries: use MySQL Engine defaults (instead of MyISAM); use WordPress dbDelta() for updates.
  • (v.0) CHANGED: Various code optimizations and cleaning.

4.12 Series

Released: 10th October, 2015

  • (v.0) NEW: Option to completely disable the XML-RPC system. more info
  • (v.0) CHANGED: Logged-in users are automatically forwarded to the WordPress admin only if they are Administrators.

4.11 Series

Released: 5th October, 2015

  • (v.0) NEW: Ability to now completely block the update/changing of certain WordPress site options. more info
  • (v.0) FIXED: Various small bugs with the IP Manager UI ajax.
  • (v.0) FIXED: Uncaught PHP Exception when a site's hosting isn't properly configured to handle IPv6 addresses.
  • (v.0) TRANSLATIONS: Danish - 57%, Czech - 100%, Finnish - 94%

4.10 Series

Released: 23rd August, 2015

  • (v.4) REFACTOR: Notifications system is more reliable and most notices can be hidden/closed (at least for the current page load as some notices are persistent).
  • (v.4) REMOVED: The old manual black list option has been completely removed - in favour of the automatic black list system.
  • (v.4) CHANGED: Revised the order of certain hooks being created to avoid the possibility of pluggable.php not being loaded for PHP Shutdown.
  • (v.4) CHANGED: The presence of IP addresses in the IP Whitelist will force the IP Manager feature to be enabled.
  • (v.4) CHANGED: We now make an attempt to prevent the caching of WordPress wp_die() pages that we generate. (compatible with at least W3TC, Super Cache)
  • (v.4) TRANSLATIONS: Turkish - 100%, Danish - 3%

  • (v.3) FIXED: Another PHP 5.2 incompatibility.

  • (v.2) ADDED: White Listing UI to the IP Manager - CIDR ranges are supported (also automatically migrates IPs, except ranges, from legacy to new)
  • (v.2) ADDED: Returned the black marking of failed WP login attempts to the automatic black list system
  • (v.2) ADDED: Using a 3rd party API service: ipify.org - to find the server's own IP address so we can ensure it's not used in the black lists
  • (v.2) CHANGED: AJAX calls are handled more robustly with actual error messages where possible.
  • (v.2) FIXED: A few black list processing bugs.

  • (v.1) ADDED: UI to view and remove IP address from Automatic Black List Engine.

  • (v.1) FIX: Removed transgression counting on failed logins - WP data is inconsistent.
  • (v.1) CHANGED: Original legacy white list now takes priority over new auto black list
  • (v.1) CHANGED: Default transgressions limit is now 7
  • (v.1) ADDED: Ability to reset plugin options to default using 'reset' flag file. more info
  • (v.0) NEW FEATURE: 'FABLE' - Fully Automatic Black Listing Engine.

Simply put, FABLE will automatically block all malicious traffic by IP, based on their activity. This Security Plugin will track malicious behaviour and count all transgressions that visitors make against the site. Once a particular visitor exceeds the specified number transgressions, FABLE will outright block any access they have to your WordPress site.

What makes the FABLE system better?

  • Hands Free - Automatic. No more need for maintaining manual black lists.
  • Loads first before other plugins.
  • Automatic pruning. Based on expiration time you specify, older IP address will be removed.
  • Increased Performance. With automatic pruning, IP look-up tables remain small and concise so page load times for legitimate visitors is minimally affected.
  • Adaptive. It wont just block based on 1 misdemeanour - instead you may allow any given visitor grace to legitimately get things wrong (like login passwords).
  • Intelligent. With an fully integrated plugin such as this, it uses login failure attempts, spam comment attempts, login brute force attempts to capture malicious visitors.

Which actions will trigger an ABLE transgression?

  • Attempt to login with an invalid username/password combination
  • Any attempt to login while the login cooldown system is in-effect
  • Any login attempt that trips the GASP Login protection system
  • Any login attempt with a username that doesn't exist
  • Any attempt to access /wp-admin/, /login/, or wp-login.php while the Rename WP Login setting is active
  • Any comment that gets labelled as SPAM by the plugin
  • Failed attempt to authenticate with the plugin's Admin Access Protection module
  • Any trigger of a Firewall block rule

4.9 Series

Released: 7th July, 2015

  • (v.8) CHANGED: Firewall, User Sessions and Lockdown Feature Modules are now enabled by default for new installations.
  • (v.8) FIX: Some server email programs can't handle colons (:) in the email subject (because supporting all characters would be waaay too radical man).
  • (v.8) ADDED: Function to better get the WordPress home URL to prevent interference from other plugins.
  • (v.8) CHANGED: Updated Text For Author Scan Block feature.
  • (v.7) CHANGED: How author query blocking works to be more reliable and stricter - only runs when users are not logged in, and it will DIE instead of redirect.
  • (v.6) ADDED: New Option: prevent detection of usernames using the ?author=N query. (location under section: Lockdown -> Obscurity)
  • (v.6) FIXED: Infinite redirect loop logic prevents redirect for rejected comment SPAM that's posted in bulk. This results in email notifications for spam comments.
  • (v.5) ADDED: The plugin will load itself first before all other plugins
  • (v.5) FIXED: No longer using parse_url() to determine the request URL as it's too inconsistent and unreliable.
  • (v.4) FIX: Audit Trail Viewer display issue with non-escaped HTML (Thanks Chris!)
  • (v.4) ADDED: An admin warning for sites with PHP version less than 5.3.2 (future versions will require this as a minimum)
  • (v.4) TRANSLATIONS: Danish - 6%, Spanish - 76%
  • (v.3) ADDED: Further checking for availability of certain PHP/server data before enabling the rename WordPress login feature
  • (v.3) ADDED: Option to add the Plugin Badge as a Widget to your side-bar or page footer, or any other widget area.
  • (v.3) TRANSLATIONS: Polish - 100%
  • (v.2) ADDED: Email notifications sent out to report email address on a daily cron. more info
  • (v.2) FIX: Work around a WordPress inline plugin update Javascript bug.
  • (v.1) FIX: Fix syntax support for earlier versions of PHP.
  • (v.0) FEATURE: Plugin Vulnerabilities Detection: If you're running plugins with known vulnerabilities you will be warned - more info

4.8 Series

Released: 21st June, 2015

  • (v.0) FEATURE: Admin Access Restriction Areas - Restrict access to certain WordPress areas and functionality to Administrators with the Admin Access key.
  • (v.0) ADDED: Admin Access Restriction Area - Plugins. You can now restrict access to certain Plugin actions - activate, install, update, delete.
  • (v.0) ADDED: Admin Access Restriction Area - Themes. You can now restrict access to certain Theme actions - activate, install, update, delete.
  • (v.0) ADDED: Admin Access Restriction Area - Pages/Post. You can now restrict access to certain Page/Post actions - Create/Edit, Publish, Delete.

4.7 Series

Released: 29th April, 2015

  • (v.7) FIXED: The text used to explain why some comments were marked as spam was broken.
  • (v.7) FIXED: Group sign-up form now honours your SSL setting.
  • (v.7) TRANSLATIONS: Spanish - 74%, Russian - 91%, Turkish - 94%, Polish- 95%, Finnish - 100%
  • (v.6) FIXED: Verifying ability to send/receive email doesn't complete if Admin Access Protection is turned on.
  • (v.6) FIXED: GASP Login Protection feature breaks because certain key options aren't initialized when the feature is enabled.
  • (v.6) FIXED: Some "more info" links were empty.
  • (v.4) ADDED: Email Sending Verification when enabling two-factor authentication - this ensures your site can send (and you can receive) emails.
  • (v.4) ADDED: Section Summaries - each option tab contains a small text summary outlining the purpose and recommendation for each.
  • (v.4) CHANGED: The Admin Access Key input is now a password field.
  • (v.4) CHANGED: Custom Login URL now works with or without trailing slash.
  • (v.4) CHANGED: Streamlining and improvement of PHP UI templates
  • (v.4) ADDED: Implemented TWIG for templates (not yet activated)
  • (v.4) TRANSLATIONS: Romanian (100%), Spanish-Spain (63%)
  • (v.3) ADDED: Integrated protection against 2x RevSlider vulnerabilities (Local File Include and Arbitrary File Upload)
  • (v.3) CHANGED: Reverted the addition of Permalinks/Rewrite rules flushing, in case this is a problem for some.
  • (v.2) UPDATED/FIX: Major fixes and improvements to the rename wp-login.php feature.
  • (v.2) TRANSLATIONS: Mexican-Spanish (61%), Arabic (38%)
  • (v.1) FIX: Silence warnings from filesystem touch() command.
  • (v.1) TRANSLATIONS: Polish (100%), Finnish (100%), Czech (73%), Arabic (34%)
  • (v.0) UPDATED: Options page user interface re-design.
  • (v.0) FIX: Audit trail time now reflects the user's timezone correctly.
  • (v.0) FIX: Better compatibility with BBPress.
  • (v.0) UPDATED: Underlying plugin code improvements.
  • (v.0) TRANSLATIONS: Russian (100%), Czech (70%), Polish (97%)

4.6 Series

Released: 10th April, 2015

  • (v.3) SECURITY: Added protection against XSS vulnerability in WordPress comments. Learn More - Note: This is not a vulnerability with the Firewall plugin.
  • (v.3) SECURITY: Added extra precautions to WordPress URL redirects. Learn More.
  • (v.3) TRANSLATIONS: Russian (70%), Czech (67%)
  • (v.2) FIX: Bug with the database table verification logic.
  • (v.2) TRANSLATIONS: Russian (New- 54%), Romanian (100%), Turkish (89%), Czech (53%)
  • (v.1) FIX: XMLRPC compatibility logic was preventing other non-XMLRPC related code from running.
  • (v.1) UPDATED: Plugin Badge styling
  • (v.1) UPDATED: Updated Czech(41%) and Spanish (60%) translations
  • (v.0) ADDED: New feature that displays the last login time for all users on the users listing page (User Management feature must be enabled).
  • (v.0) ADDED: Completely optional promotional Plugin Badge option - help us promote the plugin and reassure your site visitors at the same time. Learn More
  • (v.0) UPDATED: Updated Czech(38%) translations

4.5 Series

Released: 6th March, 2015

  • (v.5) CHANGED: Updated Finnish (100%), Czech (16%) translations
  • (v.5) CHANGED: Change logs now more clearly display changes between versions
  • (v.5) FIX: Small translation coverage
  • (v.4) ADDED: New and updated language translations including Polish (100%), Finnish
  • (v.4) FIX: Better string translation coverage for menus etc.
  • (v.3) ADDED: New and updated language translations including Polish, Czech and German
  • (v.3) CHANGED: Only set the plugin cookie if necessary
  • (v.2) CHANGED: Attempt to resolve DB errors related to transient options reported on WP Engine
  • (v.1) ADDED: New feature- GASP Login Protection can now be applied to lost password form - enabled by default
  • (v.0) ADDED: New feature- GASP Login Protection can now be applied to user registrations - enabled by default

4.4 Series

Released: 21st February, 2015

  • (v.2) ADDED: Romanian Translation.
  • (v.2) ADDED: A plugin minimum-requirements processing system.
  • (v.2) IMPROVED: The WordPress admin-UI code is simpler and cleaner.
  • (v.1) ADDED: Significant performance enhancement in plugin loading times (up to 50% reduction).
  • (v.0) CHANGED: The 'Prevent Remote Login' option now tries to detect web hosting server compatibility before allowing it to be enabled.
  • (v.0) CHANGED: More lax in finding the 'forceOff' file when users are trying to turn off the firewall.
  • (v.0) CHANGED: Parsing the URL no longer outputs warnings that might interfere with response headers.

4.3 Series

Released: 15th January, 2015

  • (v.6) FIXES: More thorough validation of whitelisted IP addresses
  • (v.5) FIXES: Some hosting environments need absolute file paths for PHP include()/require()
  • (v.5) CHANGED: Streamlined the detection of whitelisting and added in-plugin notification if you are whitelisted
  • (v.4) FIXES: Work around for cases where PHP can't successfully run parse_url()
  • (v.2) IMPROVED: Refactoring for better code organisation
  • ADDED: New Feature - Rename WP Login Page.
  • ADDED: UI indicators on whether plugins will be automatically updated in the plugins listing.
  • CHANGED: IP Address WhiteList is now global for the whole plugin, and can be accessed under the "Dashboard" area
  • IMPROVED: Firewall processing code is simplified and more efficient.


Released: 22th December, 2014

  • FIXED: Changes to how feature specifications are read from disk to prevent .tmp file build up.


Released: 12th December, 2014

  • ADDED: Audit Trail Auto Cleaning - default cleans out entries older than 30 days.
  • FIXED: Various small bug fixes and code cleaning.


Released: 24th November, 2014

  • FIXED: Fixed small logic bug which prevented deactivation of the plugin on the UI.


Released: 19th November, 2014

  • IMPROVED: User Sessions are simplified.
  • UPDATED: a few translation files based on the latest available contributions.


  • ADDED: Self-correcting database table validation - if the structure of a database table isn't what is expected, it'll be re-created.


  • WARNING: Due to new IPv6 support, all databases tables will be rebuilt - all active user sessions will be destroyed.
  • ADDED: Preliminary support for IPv6 addresses throughout. We don't support whitelist ranges but IPv6 addresses are handled much more reliably in general.
  • ADDED: New audit trail concept added called "immutable" that represents entries that will never be deleted - such entries would usually involve actions taken on the audit trail itself.
  • FIXED: Support for audit trail events with longer names.
  • IMPROVED: Comments Filtering - It now honours the WordPress settings for previously approved comment authors and never filters such comments.
  • REMOVED: Option to enable GASP Comments Filtering for logged-in users has been completely removed - this reduces plugin options complexity. All logged-in users by-pass all comments filtering.
  • FIXED: Prevention against plugin redirect loops under certain conditions.
  • FIXED: IP whitelisting wasn't working under certain cases.


  • ADDED: New Feature - Audit Trail
  • ADDED: Audit Trail options include: Plugins, Themes, Email, WordPress Core, Posts/Pages, Shield plugin
  • FIXED: Full and proper cleanup of plugin options, crons, and databases upon deactivation.
  • REMOVED: Firewall Log. This is no longer an option and is instead integrated into the "Shield" Audit Trail.


  • ADDED: Better admin notifications for events such as options saving etc.
  • CHANGE: Some plugin styling to highlight features and options better.
  • FIXED: Small bug with options default values.


  • ADDED: A warning message on the WordPress admin if the "forceOff" override is active.
  • CHANGED: The 'forceOff' system is now temporary - i.e. it doesn't save the configuration, and so once this file is removed, the plugin returns to the settings specified.
  • CHANGED: The 'forceOn' option is now removed.
  • FIXED: Problems with certain hosting environments reading in files with the ".yaml" extension - support ref
  • FIXED: Small issue where when the file system paths change, some variables don't update properly.


  • CHANGED: Plugin features are now configured using YAML - no more in-PHP configuration.
  • REMOVED: A few options from User Sessions Management as they were unnecessary.
  • CHANGED: Database storing tables now have consistent naming.
  • FIXED: Issue with User Sessions Management where '0' was specified for session length, resulting in lock out.
  • FIXED: Firewall log gathering.
  • FIXED: Various PHP warning notices.


  • ADDED: Option to limit number of simultaneous sessions per WordPress user login name (User Management section)


  • ADDED: Option to send notification when an administrator user logs in successfully (under User Management menu).
  • CHANGED: Refactoring for how GET and POST data is retrieved


  • FIXED: Custom Comment Filter message problem when using more than one substitution. ref


  • ADDED: Options to allow by-pass XML-RPC so as to be compatible with WordPress iPhone/Android apps.
  • UPDATED: Login screen message when you're forced logged-out due to 2-factor auth failure on IP or cookie.
  • CHANGED: Tweaked method for setting admin access protection on/off
  • CHANGED: comment filtering code refactoring.
  • FIXED: Options that were "multiple selects" weren't saving correctly


  • FIX: Where some comments would fail GASP comment token checking.


  • FIX: Logout URL parameters are now generated correctly so that the correct messages are shown.
  • CHANGED: small optimizations and code refactoring.
  • UPDATED: a few translation files based on the latest available contributions.


  • FIX: issue with login cooldown timeouts not being updated where admin access restriction is in place.


  • FIX: auto-updates feature not loading
  • FIX: simplified implementation of login protection feature to reduce possibility for bugs/lock-outs
  • FIX: auto-forwarding for wp-login.php was preventing user logout


  • ADDED: option to check the logged-in user session only on WordPress admin pages (now the default setting)
  • ADDED: option to auto-forward to the WordPress dashboard when you go to wp-login.php and you're already logged in.
  • ADDED: message to login screen when no user session is found
  • CHANGED: does not verify session when performing AJAX request. (need to build appropriate AJAX response)
  • FIX: for wp_login action not passing second argument


  • FEATURE: User Management. Phase 1 - create user sessions to track current and attempted logged in users.
  • CHANGED: MASSIVE plugin refactoring for better performance and faster, more reliable future development of features
  • ADDED: Obscurity Feature - ability to remove the WP Generator meta tag.
  • ADDED: ability to change user login session length in days
  • ADDED: ability to set session idle timeout in hours
  • ADDED: ability to lock session to a particular IP address (2-factor auth by IP is separate)
  • ADDED: ability to view active user sessions
  • ADDED: ability to view last page visited for active sessions
  • ADDED: ability to view last active time for active sessions
  • ADDED: ability to view failed or attempted logins in the past 48hrs
  • ADDED: Support for GASP login using WooCommerce
  • CHANGED: Admin Access Restriction now has a separate options/feature page
  • CHANGED: Admin styling to better see some selected options
  • ADDED: Support for WP Wall shoutbox plugin (does no GASP comment checks)
  • CHANGED: Removed support for upgrading from versions prior to 2.0
  • CHANGED: Removed support for importing from Firewall 2 plugin - to import, manually install plugin v2.6.6, import settings, then upgrade.


  • FIX: Improved compatibility with bbPress.


  • FIX: Could not enable Admin Access Protection feature on new installs due to too aggressive testing on security.


  • ENHANCED: Dashboard now shows a more visual summary of settings and removes duplicate options settings with links to sections.
  • ENHANCED: WordPress Lock Down options now also set the corresponding WordPress defines if they're not already.


  • ADDED: More in-line plugin links to help/blog resources
  • ENHANCED: Admin Access Protection is further enhanced in 3 ways:
  1. More robust cookie values using MD5s
  2. Blocks plugin options updating right at the point of WordPress options update so nothing can rewrite the actual plugin options.
  3. Locks the current Admin Access session to your IP address - effectively only 1 Shield admin allowed at a time.


  • ENHANCED: Added option to completely reject a SPAM comment and redirect to the home page (so it doesn't fill up your database with rubbish)
  • ADDED: Plugin now has an internal stats counter for spam and other significant plugin events.


  • ADDED: Plugin now installs with default SPAM blacklist.
  • ADDED: Now automatically checks and updates the SPAM blacklist when it's older than 48hrs.
  • ENHANCED: Comment messages indicate where the SPAM content was found when marking human-based spam messages.


Major Features Release: Please review SPAM comments filtering options to determine where SPAM goes

  • FEATURE: Added Human SPAM comments filtering - replacement for Akismet that doesn't use or send any data to 3rd party services. Uses Blacklist provided and maintained by Grant Hutchinson
  • ENHANCED: Two-Factor Login now automatically logs in the user to the admin area without them having to re-login again.
  • ENHANCED: Added ability to terminate all currently (two-factor) verified logins.
  • ENHANCED: Spam filter/scanning adds an explanation to the SPAM content to show why a message was filtered.
  • FIXES: For PHP warnings while in php strict mode.
  • CLEAN: Much cleaning up of code.


  • FEATURE: Added option to try and exclude search engine bots from firewall checking option - OFF by default.


  • FEATURE: Added 'PHP Code' Firewall checking option.


  • IMPROVED: Handling and logic of two-factor authentication and user roles/levels


  • FEATURE: Added ability to specify the particular WordPress user roles that are subject to 2-factor authentication. (Default: Contributors, Authors, Editors and Administrators)


  • FEATURE: Added 'Lockdown' feature to force login to WordPress over SSL.
  • FEATURE: Added 'Lockdown' feature to force WordPress Admin dashboard to be delivered over SSL.
  • FIX: Admin restricted access feature wasn't disabled with the "forceOff" option.


  • FIX: How WordPress Automatic/Background Updates filters worked was changed with WordPress 3.8.2.


  • UPDATED: Translations. And confirmed compatibility with WordPress 3.9


  • FEATURE: Option to Prevent Remote Posting to the WordPress Login system. Will check that the login form was submitted from the same site.


  • UPDATED: Translations and added some partials (Catalan, Persian)
  • FIX: for cleanup cron running on non-existent tables.


  • FEATURE: Two-Factor Authenticated Login using Yubikey One Time Passwords (OTP).


  • ADDED: Translations: Spanish, Italian, Turkish. (~15% complete)
  • UPDATED: Hebrew Translations (100%)


  • ADDED: Contextual help links for many options. More to come...
  • ADDED: More Portuguese (Brazil) translations (~80%)


  • ADDED: More strings to the translation set for better multilingual support
  • ADDED: Portuguese (Brazil) translations (~40%)
  • UPDATED: Hebrew Translations
  • FIXED: Automatic cleaning of database logs wasn't actually working as expected. Should now be fixed.


  • NEW: Option to enable Two-Factor Authentication based on Cookie. In this way you can tie a user session to a single browser.
  • FIX: Better WordPress Multisite (WPMS) Support.


  • FIX: Automatic updating of itself.


  • ADDED: Hebrew Translations. Thanks Ahrale!
  • ADDED: Automatic trimming of the Firewall access log to 7 days - it just grows too large otherwise.
  • FIX: The previously added automatic clean up of old comments and login protect database entries was wiping out the valid login protect entries and was forcing users to re-login every 24hrs.
  • FIX: Some small bugs, errors, and PHPDoc Comments.


  • ADDED: Automatic cleaning of GASP Comments Filter and Login Protection database entries (older than 24hrs) using WordPress Cron (everyday @ 6am)
  • CHANGED: Huge code refactoring to allow for more easily use with other WordPress plugins.


  • ADDED: Email sending options for automatic update notifications - options to change the notification email address, or turn it off completely.


  • FIX: Small bug fix.
  • CHANGED: When running a force automatic updates process, tries to remove influence from other plugins and uses only this plugin's automatic updates settings.
  • CHANGED: A bit of automatic updates code refactoring.


  • CHANGED: Changed all options to be disabled by default.
  • CHANGED: The option for admin notices will turn off all main admin notices except after you update options.


  • ADDED: Verified compatibility with WordPress 3.8


  • CHANGED: Certain filesystem calls are more compatible with restrictive hosting environments.
  • CHANGED: Plugin is now ready to integate with iControlWP automatic background updates system.
  • FIX: Login Protection Cooldown feature may not operate properly in certain scenarios.


  • IMPROVED: Improved logic for Firewall whitelisting for pages and parameters to ensure whitelisting rules are followed.
  • CHANGED: The whitelisting rule for posting pages/posts is only for the "content" and the fi

Requires: 3.5.0 or higher
Compatible up to: 4.7.2
Last Updated: 2 weeks ago
Active Installs: 50,000+


4.9 out of 5 stars


7 of 17 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

1 person says it works.
0 people say it's broken.

100,1,1 0,1,0 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
0,1,0 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1
0,1,0 100,1,1 100,2,2 100,1,1 100,2,2 100,1,1
100,2,2 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1
100,1,1 100,2,2 100,1,1
100,2,2 100,1,1 100,1,1
100,1,1 0,1,0 100,1,1 100,2,2
100,2,2 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1