Password Spraying on VPNs: How to Detect and Stop It

Find the pattern in your VPN authentication logs, protect exposed accounts, and block known sources before they reach the login service.

Start a 14-day free trial Or test 200 entries first: free, no signup
5.4M+
IPv4 Addresses Blocked
6 hours
Checked for New Attackers
By Phil Chiu · Last updated: October 21, 2026
What is password spraying?

Password spraying is a brute-force technique that tests one password, or a short list of common passwords, against many accounts. It spreads failures across usernames to avoid account lockouts. On a VPN, detect it by correlating authentication failures across sources, users and time, then protect accounts with MFA and access controls.

Free test: download the 200-entry sample. No signup.

Password Spraying vs Brute Force vs Credential Stuffing

MITRE classifies password spraying and credential stuffing as separate brute-force sub-techniques.

Attack What the attacker has Typical pattern Why it can evade simple limits
Password spraying One or a few common password guesses The same guesses across many usernames Few failures are recorded against each account
Brute force (password guessing) A target username Many password guesses against that account Usually it does not: per-account lockout sees the repeated failures
Credential stuffing Username-and-password pairs from an unrelated breach Each stolen pair is tested on another service Each account may receive only a small number of tests
Low and slow matters. MITRE notes that attackers may deliberately throttle password spraying to avoid alert thresholds. Do not limit detection to short bursts.

Why VPN Password Spraying Targets Remote Access Portals

A VPN portal is an externally reachable authentication service. A correct username and password may provide a route into protected resources, which makes exposed remote-access authentication valuable to attackers.

Cisco documents password-spray attacks against ASA and FTD remote-access VPN services. It warns that even unsuccessful attempts can consume firewall resources and prevent valid users from connecting. Palo Alto Networks publishes specific GlobalProtect brute-force signatures and recommends MFA, geographic restrictions, IP blocking and EDL-based policy controls.

The same defensive question applies to GlobalProtect, FortiGate SSL VPN, Cisco Secure Client remote access and SonicWall SSL VPN: which sources are trying which accounts, and did any authentication succeed?

For the broader attack model, see VPN brute force attacks explained.

How to Detect Password Spraying on a VPN

Correlate by source, username, result and time. A single counter rarely shows the whole campaign.

Detection checklist

  • One source IP tries many usernames with repeated or similar timing.
  • One username receives failures from many IP addresses or unusual locations. Microsoft lists this as a password spray indicator.
  • Many failures reference nonexistent or unauthorized usernames.
  • Attempts remain below the account or source threshold but repeat across the lockout window.
  • A targeted account later records a successful login, new session or unexpected MFA activity.

These are investigation signals, not proof by themselves. NAT can place legitimate users behind one public address. Distributed attackers can also split attempts across many addresses.

VPN platform Where to look Log and signature IDs
Palo Alto GlobalProtect Monitor > Logs > GlobalProtect for connection records. Authentication events remain in Monitor > Logs > System. Use Threat logs when the relevant Vulnerability Protection signatures inspect the traffic. Threat ID 40017 aggregates GlobalProtect authentication requests. Threat ID 40169 tracks failed portal or gateway logons through child signature 96010.
FortiGate SSL VPN FortiOS 7.2 and 7.4: Log & Report > System Events > VPN Events. Earlier 6.2 and 7.0 releases place VPN Events under Log & Report > Events. SSL VPN login failure log ID 0101039426, description SSL VPN login fail, action ssl-login-fail. Fortinet notes that FortiClient failures can appear with tunnel type ssl-web.
Cisco ASA / FTD remote access VPN Search syslog at informational level 6. Usernames are hidden in these messages by default; Cisco notes that no logging hide username shows them, and that they are then stored in your logs. Cisco also recommends checking show aaa-server for unusual increases in authentication requests and rejects. 113015 for rejected local-database authentication, 113005 for authentication rejected by an external AAA server and 716039 for rejected WebVPN authentication.
SonicWall SSL VPN: SonicWall does not publish one failed-login event ID that applies to every SonicOS firewall and SMA appliance, so we do not list one here. Use the event reference for your SonicOS version, then filter the firewall log by source IP and username in the same way as the platforms above.

How to Stop Password Spraying

Apply the free account and portal controls first. Then reduce known hostile traffic at the firewall.

1. Require MFA on every externally facing account

MITRE recommends MFA for externally facing services. MFA means a guessed password alone should not be enough to authenticate. Investigate unexpected prompts and enrollment changes as part of the same incident.

2. Remove unused access and narrow the eligible user set

Disable unused accounts and remove VPN access from users who do not need it. Change vendor-default credentials and do not leave authentication enabled on default VPN profiles. Cisco specifically recommends disabling AAA authentication in DefaultWEBVPNGroup and DefaultRAGroup when its newer VPN threat-detection feature is unavailable.

3. Configure lockout and login-attempt controls carefully

Lockout controls slow repeated guessing, but aggressive values let an attacker deny service to valid users. Review VPN account lockout prevention before lowering thresholds.

4. Restrict who can reach the portal

Where business requirements permit, allow only expected source networks or regions. Palo Alto Networks and Fortinet both document geographic or source restrictions for their VPN services. Treat location as a filter, not proof of identity.

5. Prefer certificate-backed authentication where practical

Client certificates add possession of a managed credential to the login process. Palo Alto Networks and Fortinet document client-certificate authentication for their remote-access VPN products. Plan certificate enrollment, renewal and revocation before enforcing it.

6. Block known sources before authentication

ThreatListPro blocks known sources using a plain-text feed: one IPv4 address or CIDR per line, with individual addresses written as /32. The customer URL format is https://api.threatlistpro.com/v1/YOUR_API_KEY/blocklist.txt. Configure an hourly refresh, or the vendor's nearest option.

Make sure the deny rule covers traffic addressed to the VPN service on the firewall itself. For FortiGate SSL VPN, Fortinet documents a local-in policy, or a VIP and loopback with a firewall policy, for this. The FortiGate and GlobalProtect guides show the exact rule.

The feed covers 5.4M+ IPv4 addresses, is built from real attacks on live production Palo Alto GlobalProtect VPN portals in the US, and is checked for new attackers every 6 hours. Monthly service is $9.99 with a 14-day free trial and no card needed. Yearly service is $100, Enterprise is $49.99/month, and paid plans have a 14-day money-back guarantee.

Under Attack Right Now? First 15 Minutes

01

Confirm the attack

Open the VPN authentication logs and confirm the source IPs, targeted usernames, failure reasons and time range.

02

Look for successful logins

Check whether any targeted account logged in successfully during or after the failures, including from another IP address.

03

Contain affected accounts

Disable confirmed compromised accounts, reset their credentials and revoke active sessions or tokens in the connected identity system.

04

Close MFA gaps

Require MFA for every exposed VPN account and investigate unexpected MFA prompts or changes.

05

Block the busiest sources

Temporarily block the highest-volume source IPs, then add a known-source block list after checking it against trusted user networks.

06

Preserve the evidence

Export the relevant VPN, firewall and identity logs, record the time zone and retain them for investigation.

What a Block List Can't Do

For more on rotating infrastructure, see residential proxy VPN attacks. You can also check an address with the IP lookup tool.

Which Fix Stops What

Control Guessed password alone Repeated local failures Known hostile source New or rotating source
MFA Reduces account-access risk Attempts can still reach authentication Still reaches the portal Still reaches the portal
Account or source lockout Not by itself Acts after the configured threshold Only after local failures Only after local failures
Source or geographic restriction Not by itself Only outside the allowed scope Only outside the allowed scope Only outside the allowed scope
Client certificate Adds a managed credential Depends on the authentication flow Still reaches the certificate service Still reaches the certificate service
ThreatListPro block list Not an account control Listed IPs are blocked before login Blocks listed IPv4 sources Does not block an unlisted source yet

Password Spraying FAQs

What is password spraying?

Password spraying is a brute-force technique that tries one password, or a short list of common passwords, against many accounts. Spreading the attempts across accounts helps the attacker avoid per-account lockout thresholds.

How do I detect password spraying on a VPN?

Group failed VPN authentications by source IP, username and time. Look for one source trying many usernames, one username receiving failures from many sources, failures for nonexistent users, and attempts deliberately spaced across the lockout window. Then check whether any targeted account later logged in successfully.

What is the difference between password spraying and brute force?

Traditional password guessing commonly tries many passwords against one account. Password spraying reverses the pattern by trying one password, or a small set, against many accounts. Both are brute-force techniques, but spraying is designed to reduce repeated failures against each account.

What is the difference between password spraying and credential stuffing?

Password spraying uses common password guesses across many accounts. Credential stuffing uses username-and-password pairs obtained from an earlier breach and tests whether people reused those credentials on another service.

Does MFA stop password spraying?

MFA greatly reduces the chance that a guessed password alone results in access, so it should be enabled on every externally facing VPN account. It does not remove the login endpoint or prevent every failed attempt, account lockout or denial-of-service condition.

Can an IP block list stop VPN password spraying?

An IP block list blocks known sources before they reach the VPN login service, as long as the deny rule covers traffic addressed to the VPN service on the firewall itself (on FortiGate SSL VPN, a local-in policy). It does not stop a new IP's first attempt, IPv6 traffic, or every rotating residential proxy. Use it with MFA, restricted access, sensible lockout controls and monitoring.

Sources

Block Known VPN Password-Spray Sources

Use one plain-text feed URL in your firewall. 5.4M+ IPv4 addresses, checked for new attackers every 6 hours. Monthly service is $9.99 with a 14-day free trial and no card needed.

Start a 14-day free trial Or test 200 entries first: free, no signup

Works With All Major Firewalls

ThreatListPro provides a standard IP blocklist feed compatible with firewalls that support external lists.

Palo Alto FortiGate pfSense OPNsense SonicWall Cisco ASA Sophos XG UniFi

Related Resources

Continue with the platform guide or incident pattern that matches what you found.

VPN Brute Force Attacks Explained Stop VPN Account Lockouts Residential Proxy VPN Attacks FortiGate SSL VPN Failed Login Attempts GlobalProtect Brute Force Protection FortiGate VPN Protection Cisco Remote Access VPN Protection SonicWall VPN Protection Check an IP Address