We use cookies on our website to ensure we provide you with the best experience on our website. By using our website, you agree to the use of cookies for analytics and personalized content.This website uses cookies. More Information
It seems like your browser didn't download the required fonts. Please revise your security settings and try again.
Barracuda Web Application Firewall

Enabling Brute Force Protection

  • Last updated on

Brute Force Protection

Brute Force attacks attempt unauthorized access by repeatedly bombarding the system with guessed parameters.

Preventing Brute Force Attacks

Brute Force protection sets a maximum number of requests (all requests or only invalid requests) to a URL space from a single client, or from all sources, within a configured time interval. It blocks offending clients from making further requests. You can specify exception clients for which no maximum is enforced. Bruteforce protection prevents the following types of rate based attacks:

  • Brute force attempts to gain access – Repetitive login failures in quick succession may be an attempt to gain unauthorized access using guessed credentials.
  • Brute force attempts to steal session tokens – Session tokens, authentication mechanisms for requests by already authenticated users, can be guessed and stolen through repeated requests.
  • Distributed Denial of Service attacks (DDoS) – Repeated requests for the same resource can impair critical functionality by exhausting server resources.
  • Vulnerability scanning tools – High rates of requests can probe web applications for weaknesses. Typically these tools execute a database of commonly known and unknown (blind) attacks which are executed in quick succession.
  1. To detect brute force attacks against session management (too many sessions given out to a single IP address or range), use session tracking.
  2. To control the rate of requests to specific resources (URL spaces), and to provide different levels of service to different sets of clients, use rate control pool.
  1. On the BOT MITIGATION > Bot Mitigation > Bot Mitigation Policy section, locate the desired URL policy and click Edit in the Options column next to it. Configure the following values to configure protection from Brute Force attacks:
  • Enable Bruteforce Prevention – Set to Yes to enable bruteforce attack prevention for this URL policy.
  • Counting Criterion – Specifies whether requests from all sources, or requests per IP are counted. Values: Per IP, All Sources; Default: Per IP.
  • Count Window – Specifies the time interval in seconds to which Max Allowed Accesses Per IP or Max Allowed Accesses From All Sources applies. Range: 1 - 6000; Default: 60 (one minute).
  • Count Auth Response Codes - When set to Yes, the authentication status codes 401 and 407 will be considered as invalid status codes, and not as exception.Enable Invalid status code only – Set to Yes to monitor and count only invalid requests from a single client or from all sources. If set to No, both valid and invalid requests from a single client or from all sources are counted. Requests exceeding the configured Max Allowed Accesses Per IP and Max Allowed Accesses From All Sources are blocked.

    When Enable Invalid Status Code Only is set to Yes, the Barracuda Web Application Firewall counts the requests with invalid status code in the response. Status codes greater than 400 are considered invalid status codes, with the exception of 401 and 407.

    Client IP Address
  • Max Allowed Accesses Per IP – Specifies the maximum number of requests allowed to this web application per IP address.
    • Range: 1 - 65535;
    • Default: 10
  • Max Allowed Accesses From All Sources – Specifies the maximum number of requests allowed to this web application from all sources.
    • Range: 1 - 65535;
    • Default: 100
  • Max Bandwidth Per IP - Specifies the maximum number of bytes to be exchanged between the client and the Barracuda Web Application Firewall for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "Per IP". If the value is set to zero (0), it exempts the brute force policy validation.
    • Range: 0 - 1048576 ( in KB )
    • Default: 0
  • Max Bandwidth From All Sources - Specifies the maximum number of bytes to be exchanged between all clients and the Barracuda Web Application Firewall for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "All Sources". If the value is set to zero (0), it exempts the brute force policy validation.
    • Range: 0-10485760 (in KB)
    • Default:0
  • Max Failed Accesses Per IP - Specifies the maximum number of failed requests (4xx and 5xx status codes) to be allowed per IP address for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "Per IP". If the value is set to zero (0), it exempts the brute force policy validation.

    • Range: 0 - 65535

    • Default: 10

  • Max Failed Accesses From All Sources - Specifies the maximum number of failed requests (4xx and 5xx status codes) to be allowed from all sources for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "All Sources". If the value is set to zero (0), it exempts the brute force policy validation.

    • Range: 0 - 65535

    • Default: 100
  • Exception Clients – Specifies IP addresses for which no maximum number of accesses is enforced. You can enter a single IP address, a range of IP addresses, or a combination of both with a comma (,) as a delimiter. The range of IP addresses must be separated with a hyphen (-). This makes an exception list of client IPs (unlimited access users). This list should not have overlapping IP ranges.
    • Values: Suitable IP Range
Client Fingerprint
  • Max Allowed Accesses Per Client Fingerprint - Specifies the maximum number of requests to be allowed per client fingerprint to access the web application for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "By Client". If the value is set to zero (0), it exempts the brute force policy validation.
    • Range: 0 - 65535;
    • Default: 0
  • Max Bandwidth Per Client Fingerprint - Specifies the maximum number of bytes to be exchanged between the client and the Barracuda Web Application Firewall for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "By Client". If the value is set to zero (0), it exempts the brute force policy validation.
    • Range: 0-1048576 (in KB)
    • Default:0
  • Max Failed Accesses Per Client Fingerprint - Specifies the maximum number of failed requests (4xx and 5xx status codes) to be allowed per client fingerprint for the time specified in Count Window, after which the requests will be blocked. This field is available only when "Counting Criterion" is set to "By Client". If the value is set to zero (0), it exempts the brute force policy validation.
    • Range: 0 - 65535;
    • Default: 0
  • Exception Fingerprint - Specifies client fingerprints for which no brute force validation is enforced. You can enter a single or multiple client fingerprints separated by a comma without any space. This makes an exception list of client fingerprints (unlimited access users).

Click Save to save the above settings.

Client Fingerprinting Capability

The Barracuda Web Application Firewall uses the Client fingerprinting capability to increase security. The feature collects information about the browser attributes from all the devices that the client uses during login. The client fingerprinting uses the collected information to identify suspicious clients (potential bots) and recognize web scraping attacks more quickly.  

To enable client fingerprinting,

  1. Navigate to Basic > Services >Advanced Configuration and set the Enable Client Fingerprinting to Yes.
  2. Navigate to Advanced > System Configuration >Advanced module and set the Enable Client Fingerprinting to Yes.
Last updated on