Hide My WP Ghost
  • Features
    • All Features
    • Brute Force Protection
    • Limit Login Attempts
    • Website Activity Log
    • Website Security Check
    • Security Tweaks
    • Change Wp-Admin URL
  • Pricing
  • Help
  • My Account
  • Features
    • All Features
    • Brute Force Protection
    • Limit Login Attempts
    • Website Activity Log
    • Website Security Check
    • Security Tweaks
    • Change Wp-Admin URL
  • Pricing
  • Help
  • My Account
Buy Now
  • Home
  • Hide My WP Features
  • Brute Force Attack Protection In WP Ghost - Complete Setup Guide

Brute Force Attack Protection in WP Ghost – Complete Setup Guide

Moved

This tutorial has moved to the new WP Ghost Knowledge Base where each feature is presented in detail.

View on new site
Table of Contents
  • What is a Brute Force Attack
    • How Brute Force Attacks Work
    • Which Websites Are Targeted
  • Why Brute Force Protection Matters
    • Activate Brute Force Protection
      • Lost Password Form Protection
      • Sign Up Form Protection
      • Comment Form Protection
      • Wrong Username Protection
      • WooCommerce Protection
  • reCAPTCHA Protection Options
    • Math reCAPTCHA Protection
    • Google reCAPTCHA V2 Protection
      • How to Set Up Google reCAPTCHA V2
    • Google reCAPTCHA V3 Protection
      • How to Set Up Google reCAPTCHA V3
    • Google reCAPTCHA Enterprise Protection
  • IP Management
    • Ban IP Addresses
    • Whitelist IP Addresses
    • Blocked IPs Report
  • Translation Tip
    • Brute Force Shortcode
  • Related Tutorials

Activate brute force protection in WP Ghost (formerly Hide My WP Ghost) to limit login attempts, add reCAPTCHA to login forms, protect WooCommerce, ban malicious IPs, and block automated password-guessing attacks on your WordPress site.

WordPress does not limit the number of login attempts by default. There is no lockout after 5, 50, or even 500 failed password guesses. Bots exploit this by running brute force attacks, cycling through thousands of username and password combinations until they find one that works.

According to the Melapress WordPress Security Survey, the most common security threats reported by WordPress professionals are brute force attacks, plugin vulnerabilities, and malicious code injection. And 8% of WordPress sites that get hacked are compromised through weak or stolen passwords.

WP Ghost stops brute force attacks by adding reCAPTCHA verification to your login forms, limiting the number of failed attempts before an IP gets banned, and extending protection to password reset, registration, comment, and WooCommerce login forms.

This tutorial covers every option in the WP Ghost > Brute Force panel.

What is a Brute Force Attack

How Brute Force Attacks Work

A brute force attack is a method where automated bots try different username and password combinations repeatedly until they find one that grants access. Think of it as trying every key on a keyring until one opens the door.

Attackers use automated tools and botnets that can test thousands of combinations per minute. They target the login page (wp-login.php) and the XML-RPC file, both of which accept authentication requests by default without any rate limiting.

A successful brute force attack gives hackers full access to your admin dashboard. From there, they can install malware, steal user data, redirect your traffic, inject spam, or delete your entire site.

Even an unsuccessful brute force attack causes problems. The flood of login requests consumes server resources, which can slow down your site or make it temporarily unavailable to legitimate visitors.


Which Websites Are Targeted

WordPress is the most targeted CMS on the internet, powering over 43% of all websites. According to security researchers, WordPress faces an average of 90,000 attacks per minute. Most of these are automated and indiscriminate, meaning bots attack every WordPress site they can find, not just high-value targets.

Bots typically target the login page and the xmlrpc.php file first. They start with common usernames like “admin” and run dictionary-based password lists against them. If your site uses a default username and a weak password, it can be compromised in minutes.

This is why WP Ghost combines path security (changing the login URL so bots cannot find it) with brute force protection (limiting attempts and adding CAPTCHA verification for the login forms that remain accessible).

Why Brute Force Protection Matters

Without brute force protectionWith WP Ghost brute force protection
Unlimited login attempts allowedLogin locked after configurable failed attempts
No CAPTCHA verificationMath reCAPTCHA, Google V2, V3, or Enterprise
Bots submit forms freelyLogin, password reset, register, and comment forms protected
No IP managementBan and whitelist IPs individually or by range
No visibility into attacksBlocked IPs report with hostnames and attempt counts
WooCommerce login exposedWooCommerce login forms protected automatically

Activate Brute Force Protection

Go to WP Ghost > Brute Force > Settings and switch on Use Brute Force Protection.

WP Ghost Brute Force panel showing the Use Brute Force Protection toggle and all protection options
WP Ghost Brute Force Settings showing reCAPTCHA type selection and form protection options

Once enabled, you will see options to select your preferred reCAPTCHA type and configure form-level protections.

Lost Password Form Protection

Adds brute force protection to the password reset form. This prevents bots from flooding your site with password reset requests and from using the reset form to confirm whether a username exists on your site.

Sign Up Form Protection

Adds protection to the registration form. This blocks automated bots from creating fake accounts on your site, which is a common attack vector for spam and phishing.

Comment Form Protection

Protects the comment section from automated spam submissions and malicious link injection through bot-submitted comments.

Wrong Username Protection

Immediately blocks or slows down login attempts when an incorrect username is entered. This stops bots from enumerating valid usernames on your site before launching targeted password attacks.

WooCommerce Protection

If WooCommerce is installed on your site, WP Ghost automatically detects it and shows WooCommerce-specific brute force options. You can activate protection for WooCommerce login forms by switching on WP Ghost > Brute Force > WooCommerce > WooCommerce Support.

WP Ghost WooCommerce brute force protection toggle showing automatic WooCommerce detection

reCAPTCHA Protection Options

WP Ghost offers four reCAPTCHA options to verify that login attempts come from humans, not bots. You need to enable Use Brute Force Protection first to see these options.

Math reCAPTCHA Protection

Math reCAPTCHA displays a simple math problem on the login page that users must solve before logging in. This is the easiest option to set up because it requires no external API keys.

Go to WP Ghost > Brute Force > Settings and select Math reCAPTCHA.

WP Ghost Math reCAPTCHA selection in Brute Force Settings

After selecting Math reCAPTCHA, you can customize three settings:

Max Failed Attempts – the number of times a user can fail before their IP is temporarily locked. Default: 5 attempts.

WP Ghost maximum failed login attempts setting with default value of 5

Ban Duration – how long a blocked IP stays locked out. Default: 3600 seconds (1 hour).

WP Ghost ban duration setting showing configurable lockout time in seconds

Lockout Message – the message shown instead of the login form when an IP is blocked. Default: “Your IP has been flagged for potential security violations. Please try again in a little while.”

WP Ghost custom lockout message field for blocked IP addresses

Google reCAPTCHA V2 Protection

Google reCAPTCHA V2 adds the familiar “I’m not a robot” checkbox to your login form. Google analyzes user behavior and either passes them through instantly or presents a challenge to verify they are human.

Google reCAPTCHA V2 I'm not a robot checkbox widget animation

Go to WP Ghost > Brute Force > Settings and select Google reCAPTCHA V2.

WP Ghost Google reCAPTCHA V2 selection with Site Key and Secret Key fields

You will see the same Max Failed Attempts, Ban Duration, and Lockout Message settings available in Math reCAPTCHA. Plus, Google reCAPTCHA V2 adds two customization options: reCaptcha Theme (Light or Dark) and Language (auto-detects from your site language if unspecified).

WP Ghost reCAPTCHA theme selection showing Light and Dark theme options
WP Ghost reCAPTCHA language selection dropdown

How to Set Up Google reCAPTCHA V2

  1. Go to https://www.google.com/recaptcha/admin#list and click to create a new reCAPTCHA.
  2. Enter a Label (use something you will recognize, like your site name).
  3. Select reCAPTCHA v2 and choose “I’m not a robot” Checkbox.
  4. Enter your domain name, accept the terms, and click Submit.
  5. Copy the Site Key and Secret Key from the next page.
  6. Paste both keys into the corresponding fields in WP Ghost > Brute Force > Settings and click Save.
  7. Click the reCAPTCHA Test button that appears after saving, and verify the login works correctly before logging out.
Google reCAPTCHA admin console showing reCAPTCHA v2 type selection and domain registration
Google reCAPTCHA admin showing the generated Site Key and Secret Key

The Site Key renders the reCAPTCHA widget on your pages. The Secret Key handles server-side validation between your site and Google’s servers. Both keys are unique to your domain.

WP Ghost Site Key and Secret Key fields for Google reCAPTCHA V2 configuration
WP Ghost reCAPTCHA Test button to verify login works correctly with the CAPTCHA enabled

Google reCAPTCHA V3 Protection

Google reCAPTCHA V3 works differently from V2. Instead of showing a checkbox, it runs invisibly in the background and assigns a spam score to each visitor based on their behavior. There is no friction for legitimate users, as they never see a challenge.

The score (0.0 to 1.0, where 1.0 is very likely a human) is visible in your Google reCAPTCHA account. Learn more about how reCAPTCHA V3 works.

Go to WP Ghost > Brute Force > Settings and select Google reCAPTCHA V3.

WP Ghost Google reCAPTCHA V3 selection with Site Key and Secret Key fields

How to Set Up Google reCAPTCHA V3

  1. Go to https://www.google.com/recaptcha/admin#list and click to create a new reCAPTCHA.
  2. Enter a Label for your site.
  3. Select reCAPTCHA v3 as the type.
  4. Enter your domain name, accept the terms, and click Submit.
  5. Copy the Site Key and Secret Key.
  6. Paste both keys into WP Ghost > Brute Force > Settings and click Save.
  7. Click the reCAPTCHA Test button and verify the login works correctly.
Google reCAPTCHA admin console showing reCAPTCHA v3 type selection
WP Ghost Site Key and Secret Key fields for Google reCAPTCHA V3 configuration

Google reCAPTCHA V3 includes the same customization options as the other types: Max Failed Attempts (default 5), Ban Duration (default 1 hour), and a customizable Lockout Message.


Google reCAPTCHA Enterprise Protection

Google reCAPTCHA Enterprise is the most advanced option, designed for high-traffic sites and businesses that need granular control over bot detection. It uses the same invisible scoring as V3 but adds enterprise-grade features like detailed analytics, custom risk thresholds, and integration with Google Cloud security services.

Go to WP Ghost > Brute Force > Settings and select Google reCAPTCHA Enterprise.

Setting up Enterprise requires a few extra steps compared to V2 and V3:

  1. Go to the Google Cloud reCAPTCHA Enterprise console and create a new Enterprise key.
  2. Copy the Site Key ID and paste it into the Site Key field in WP Ghost.
  3. Copy your Google Cloud Project ID and paste it into the Project ID field.
  4. Create a Google Cloud API Key from https://console.cloud.google.com/apis/credentials and paste it into the API Key field.
  5. Click Save, then use the reCAPTCHA Test button to verify everything works.

Enterprise includes the same Max Failed Attempts, Ban Duration, and Lockout Message options as all other reCAPTCHA types.


IP Management

IP whitelisting and blacklisting are managed from the Firewall panel in the current version of WP Ghost. This gives you centralized control over all IP-based access rules across both brute force protection and firewall features.

Ban IP Addresses

You can permanently ban specific IP addresses from accessing your site. This is useful when you see the same IPs appearing repeatedly in your security logs or blocked IPs list.

Go to WP Ghost > Firewall > Blacklist and add IPs to the blacklist. You can enter individual IPs or IP ranges using wildcards: 192.168.0.*, 192.168.*.*, or 192.*.*.* to block an entire class. You can also block by User Agent, Referrer, and Hostname from this same panel.

WP Ghost IP blacklist field for permanently banning IP addresses

Whitelist IP Addresses

If you have a static IP address, add it to the whitelist so your own IP is never blocked by brute force protection, the firewall, automated IP blocking, or country blocking. This is especially important for teams where several people share the same office network.

Go to WP Ghost > Firewall > Whitelist and add your IPs. You can use the same wildcard format: 192.168.0.*, 192.168.*.*, or 192.*.*.* for IP ranges. You can also choose from three whitelist levels that control how much access whitelisted IPs receive.

WP Ghost IP whitelist field to prevent your own IP from being blocked

Whitelisted IPs bypass all security

Whitelisted IPs bypass the firewall, brute force limits, automated IP blocking, and country blocking. Only whitelist IPs you fully trust.


Blocked IPs Report

IPs that get blocked by brute force protection appear in the Blocked IPs list. For each blocked IP, WP Ghost shows the IP address, the number of failed login attempts, and the hostname.

WP Ghost Blocked IPs Report showing IP addresses, failed attempts, and hostnames

You can unlock all blocked IPs at once using the Unlock ALL button, or unlock individual IPs using the Unlock button in the Options column. For a complete view of all security threats including blocked IPs, see the Security Threats Log (Premium).


Translation Tip

If you use WPML or Polylang for multilingual sites, you can translate custom brute force texts (like the lockout message or Magic Login button label) from your translation plugin’s string translation panel. Changes apply automatically based on the visitor’s active language.


Brute Force Shortcode

If you use a page builder like Elementor or Divi to create custom login forms, WP Ghost may not automatically load brute force protection on those pages. The [ hmwp_bruteforce ] shortcode lets you add brute force protection to any custom login form.

To use it in Elementor, add a Login widget to your page, then add a shortcode field within the form and paste [ hmwp_bruteforce ] (without the spaces inside the brackets). The shortcode supports both Math reCAPTCHA and Google reCAPTCHA options.

For a full walkthrough with screenshots, see the Integrating Brute Force Protection in Elementor Login Forms article.


Related Tutorials

Continue strengthening your WordPress security with these guides:

Getting Started with WP Ghost – install, activate, and choose your security level.

Customize All WordPress Paths – change every WordPress path including the login path.

Change WordPress Login Path – make your login URL invisible to bots.

Two-Factor Authentication – add 2FA with code, email, or passkeys for the strongest login security.

Magic Link Login – passwordless login for administrators and team members.

Firewall and Geo Security – block entire countries and enable the 8G Firewall.

Disable XML-RPC Access – block the other major brute force attack vector.

Security Monitor – set up email alerts for brute force events and suspicious activity.

Website Security Check – run a complete security audit with one-click fixes.

June 6, 2019

Category: Tags:

  • Previous
    URL Mapping and Text Mapping in WP Ghost - Complete Guide
  • Next
    How to Activate Security Tweaks in WP Ghost - Complete Guide
  • Installation & Setup
    • Download plugin
    • Activate Hide My WP Ghost
    • Setup in Safe Mode & Ghost Mode
  • Customize Paths
    • Change wp-admin Path
    • Change wp-login Path
    • Hide Language Switcher
    • Change Author Path
    • Change Lost Password Path
    • Change Register Path
    • Change Logout Path
    • Change Activation Path
    • Change admin-ajax.php Path
    • Change Paths in Ajax Calls
    • Change wp-content Path
    • Change wp-includes Path
    • Change uploads Path
    • Change comments Path
    • Change Plugins Path
    • Change Themes Path
    • Change Rest API Path
    • Hide RSD Endpoint
    • Disable XML-RPC access
    • Hide WordPress Common Paths
    • Hide WordPress Common Files
    • Add Security Headers for XSS
    • Firewall Against Script Injection
    • Block Theme Detectors
    • Remove Unsafe Headers
    • Disable Directory Browsing
  • Security Tweaks
    • Redirect Hidden Paths
    • Login Redirect URL
    • Logout Redirect URL
    • Change Paths For Logged Users
    • Change Paths In Cached Files
    • Change Relative to Absolute URLs
    • Change Paths in Sitemaps XML
    • Change Paths in Robots.txt
    • Hide Admin Toolbar
    • Hide WordPress Version
    • Hide HTML Comments
    • Hide IDs from META Tags
    • Hide WordPress Generator
    • Hide Emoji icons
    • Disable Embed scripts
    • Disable WLW Manifest scripts
    • Disable DB Debug in Frontent
    • Disable Right Click
    • Disable Copy-Paste
    • Disable Drag-Drop
    • Disable View-Source
    • Disable Inspect Element
    • Login Page Design
  • URL Mapping and Text Mapping
    • URL Mapping
    • Text Mapping
    • CDN URLs
    • Optimize CSS and JS files
  • Brute Force Attack Protection
    • Activate Brute Force Protection
    • Math Captcha Protection
    • Google reCaptcha V2
    • Google reCaptcha V3
    • Ban IP addresses
    • Whitelist IP addresses
    • Blocked IPs Report
  • Firewall and Geo Security
    • 8G Firewall
    • Geo Security
    • Country Blocking
    • Whitelist IPs
    • Whitelist Paths
    • Blacklist IPs
    • Block User Agents
    • Block Referrers
    • Block Hostname
  • Temporary Logins
    • Global Settings
    • Create Temporary User
    • Edit Temporary User
    • Lock/Unlock Temporary User
    • Delete Temporary User
    • Copy Temporary Login Link
  • Two Factor Authentication
    • Activate 2FA Feature
    • Setting up 2FA Code Scan
    • Setting up 2FA Email Code
    • 2FA Login Monitor
    • Magic Link Login
  • Security Threats Log
    • Activate Security Threats Log
    • Reading Threats Report
    • Responding to Threats
    • GEO Threat Map
  • User Events Log
    • Activate Users Events Log
    • Log User Roles
    • Check User Events Log
    • User Events Email Alerts
  • Website Security Check
    • Run a Website Security Check
    • All The Security Tasks
  • Advanced WP Security
    • Custom Safe URL Parameter
    • Must Use Plugin Loading
    • Priority & Normal & Late Loading
    • Late Loading
    • Add Rewrites in WP Rules Section
    • Clean Login Page
    • Email Notification
    • Preset Security Options

Get Protected

  • Pricing & Plans
  • Install Free Version
  • Free vs Premium
  • Free Security Check
  • One-Click Security Presets
  • Quick Setup Guide
  • Best Practice Settings

Top Features

  • Hide wp-admin & wp-login
  • 7G + 8G Firewall
  • Brute Force Protection
  • 2FA & Passkey Login
  • Country Blocking
  • Security Headers
  • Security Threats Log
  • Temporary Logins

Resources

  • Knowledge Base
  • FAQs
  • Best Practice Guide
  • Plugin Compatibility
  • Theme Compatibility
  • Why WP Ghost
  • WordPress Security
  • Changelog

Company

  • Contact Support
  • Affiliate Program
  • Agency White Label
  • Media Kit
  • Terms of Use
  • Privacy Policy
  • About Us
© 2016 - 2026 WP Ghost. All rights reserved. Powered by AISQ.
Hide My WP uses cookies on the website to give you the most relevant experience by remembering your preferences and repeat visits.
Ok Reject
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
SAVE & ACCEPT