Credential stuffing: how it works and how to prevent it
Credential stuffing uses stolen passwords from breaches and infostealers to access SaaS accounts at scale. Learn how to detect and prevent credential stuffing attacks.
Credential stuffing attacks exploit reused passwords across SaaS and cloud apps
Credential stuffing is an automated attack where stolen username-password pairs from data breaches and infostealer malware are sprayed against SaaS applications at scale. The attack exploits password reuse — if an employee used the same credentials on a breached consumer service and a corporate app, the attacker gains access without phishing or social engineering. Because the credentials are valid, the login looks legitimate. Push data shows one in four enterprise logins still use passwords instead of SSO, and two in five of those passwords are reused across multiple services — creating a large, persistent attack surface for credential stuffing.
How credential stuffing works
Credential stuffing relies on one simple idea: people reuse passwords.
Attackers take large datasets of stolen credentials and test them across SaaS applications, looking for accounts where the same username and password combination still works.
- The attacker obtains a database of stolen credentials with email/username and password combinations
- They test those credentials across SaaS applications and login portals
- Some accounts authenticate successfully due to password reuse
- If MFA is missing or can be be bypassed (e.g. through SIM swapping or push bombing / MFA fatigue notification spam) the attacker gains access
- The attacker uses that access extract data, abuse functionality, and/or move laterally to other apps
Stolen credential supply has accelerated beyond large-scale data breaches. Infostealer malware is the primary source of new credentials entering the market, providing passwords, session cookies, and browser data from compromised machines, feeding a continuous stream of fresh compromised credentials into dark web marketplaces. ClickFix is currently the primary delivery vector for infostealers, meaning the credential supply chain starts in the browser.
Why most security tools miss credential stuffing
Credential stuffing doesn't look like an intrusion. It looks like a user logging in.
There are no malicious domains, no suspicious files, and no exploit chain. The credentials are valid, and the authentication flow behaves exactly as expected.
In many cases, these logins happen outside SSO, through direct application login pages. That means the identity provider never sees them, and security teams have limited visibility into how access was granted. Identity providers enforce password policies and MFA on federated applications, but credential stuffing targets the apps outside federation — the shadow SaaS, direct signups, and legacy tools where the IdP has no visibility and no enforcement.
Even when login activity is logged, it can be difficult to distinguish between legitimate and malicious use. The attacker is using real credentials, often from expected locations, and interacting with the application normally. Network-level controls like WAFs and rate limiters can slow automated stuffing against apps you host, but most SaaS applications are third-party — you don't control their login infrastructure.
How do you stop credential stuffing?
You can't stop attackers from spraying stolen credentials at third-party login pages, so defense has to focus on eliminating the conditions that let credential stuffing succeed.
The login infrastructure belongs to the SaaS vendor, not to you. Rate limiting, bot detection, and IP blocking are the vendor's problem — and even vendors who implement them well can't distinguish a stuffing attempt from a legitimate login when the credentials are real. Credential stuffing works when three things are true: the password has been compromised (through a breach or infostealer), the user reused it across services, and the account lacks a second factor. Remove any one of those conditions and the attack fails.
The challenge is that identity providers only enforce password policies and MFA on federated applications. Credential stuffing targets the long tail of apps outside SSO — shadow SaaS, direct signups, legacy tools, and the downstream applications where ghost logins persist. Credential hygiene has to extend to every application employees actually use, not just the ones the IdP manages.
How Push detects and prevents credential stuffing
Push observes how users log in across applications from inside the browser, including direct login flows that bypass SSO. At the point of login, Push checks passwords against breach datasets and infostealer logs — identifying compromised credentials before they become attack vectors. Push's dark web credential monitoring uses behavioral corroboration, surfacing only credentials that are actively in use rather than generating false positives from stale breach data. Plaintext passwords are never transmitted or stored — detection uses locally generated salted SHA256 partial hashes.
Beyond detection, Push enforces password strength and reuse prevention via in-browser guardrails at the moment of login. When a user enters a weak, reused, or breached password, Push surfaces a prompt guiding them to change it — across every application accessed through the browser, not just IdP-managed ones.
Push also drives credential stuffing prevention at a structural level: SSO login guidance redirects users toward federated login when available, and MFA enforcement ensures second-factor coverage extends to the shadow SaaS and direct signups where credential stuffing typically succeeds.
Frequently asked questions
An automated attack where stolen username-password pairs from data breaches are systematically sprayed against other services. Attackers exploit password reuse — if an employee used the same password on a breached consumer site and their corporate SaaS apps, the attacker gains access without phishing, exploits, or social engineering.
The attack is effective because password reuse remains pervasive. Most corporate password policies only govern IdP-managed applications; employees using direct logins to SaaS apps outside SSO face no enforcement. Push detects compromised credentials at the point of login and enforces password strength via in-browser guardrails.
Address the root causes: password reuse, weak passwords, and missing MFA. Credential stuffing works because billions of stolen credentials from breaches and infostealers are tested against login pages at scale — and it succeeds when employees reuse passwords across services or use weak credentials that appear in known breach datasets.
Effective prevention combines several controls:
- Compromised credential detection — identifying passwords that appear in breach datasets or infostealer logs at the point of login, before they become attack vectors.
- Password strength enforcement — blocking weak and reused passwords across all apps, not just IdP-managed ones.
- MFA enforcement — ensuring MFA coverage extends beyond SSO-managed apps to the long tail of shadow SaaS and local accounts where credential stuffing typically succeeds.
- SSO adoption — reducing the number of password-based logins by driving users toward SSO, which eliminates the standalone credential that stuffing attacks target.
The challenge is that most of these controls have traditionally been limited to apps the organization manages through its IdP. Credential stuffing targets the gaps — the shadow SaaS app with a reused password and no MFA.
Push detects compromised, weak, and reused passwords at the point of login across every application accessed through the browser, and provides SSO login guidance and MFA enforcement via in-browser guardrails.
Three distinct techniques that exploit different weaknesses:
- Credential stuffing uses stolen username/password pairs from breaches and infostealer logs, testing them against other services. It succeeds because of password reuse — a credential that worked on one service is tried everywhere else. Each attempt looks like a normal login, making it difficult to distinguish from legitimate traffic.
- Password spraying tries a small number of common or seasonally predictable passwords (Spring2026!, CompanyName1!) against many accounts on a single target. It doesn't require breach data and deliberately stays under account lockout thresholds by attempting few passwords per account. Nation-state groups including Void Blizzard and Iran-nexus actors use spraying routinely against cloud environments.
- Brute force systematically guesses passwords against a specific account — trying every possible combination or working through a wordlist. Largely mitigated by account lockout policies and rate limiting.
To tackle these attacks: detect compromised and weak credentials at the point of login, enforce password strength across all apps (not just IdP-managed ones), and ensure MFA coverage extends to the shadow SaaS and local accounts where these attacks typically succeed. Push provides all three across every application accessed through the browser.
A tool that detects compromised and reused passwords at the point of login across all your applications — not just the ones managed by your IdP. Most credential security tools only cover federated apps, leaving the long tail of shadow SaaS and direct signups unprotected.
Push detects weak, breached, and reused passwords at the point of login for every application accessed through the browser, regardless of whether it's SSO-enabled. It also provides dark web credential monitoring with behavioral corroboration — surfacing only credentials actively in use rather than generating false positives from stale database matches.
MFA significantly reduces success by requiring a second factor beyond the compromised password. But MFA coverage is uneven — IdPs only enforce it on federated apps, and the long tail of shadow SaaS and direct signups typically has no MFA at all. Credential stuffing succeeds against the apps with the weakest controls.
Push bridges this gap by enforcing MFA through in-browser guardrails on apps not managed by the IdP, and by detecting compromised passwords at login so they can be changed regardless of MFA status. Learn about identity hardening.
Firewalls and WAFs can detect and throttle credential stuffing by identifying high request volumes, geographically improbable logins, or known bot signatures. But they only protect applications you host — and most credential stuffing targets third-party SaaS applications where you don't control the WAF or rate limiting. Sophisticated operations also use residential proxies and realistic request patterns that blend with normal login traffic.
Push addresses the root cause rather than the traffic pattern — detecting compromised and reused passwords at the point of login across every application accessed through the browser, so the credential is changed before the attack succeeds.
Check the passwords against breach datasets at the point of login. However, most breach notification services generate false positives by matching email-password pairs from leaked datasets without confirming whether those credentials are still in use.
Push's dark web credential monitoring removes false positives through behavioral corroboration — surfacing only credentials actively in use. Beyond detection, Push enforces password strength via in-browser guardrails at the moment of login.
Push does this using locally generated salted SHA256 partial hashes — plaintext passwords are never transmitted or stored.
Two primary channels: large-scale data breaches (which dump millions of credentials at once) and infostealers (malware that harvests credentials, session cookies, and browser data from individual machines). ClickFix is the primary delivery vector for infostealers — users are tricked into executing a command that downloads infostealer malware, which then harvests everything stored in their browser.
Stolen credentials feed into marketplaces for bulk sale. Beyond credentials, infostealers harvest session cookies that enable session hijacking, creating a compounding attack chain. Push breaks this chain at multiple points — detecting ClickFix delivery, identifying compromised credentials at login, and detecting stolen session replay.
IdPs only enforce policies on federated applications. For logins outside SSO, there's typically no enforcement at all. Combine driving SSO adoption with browser-based password enforcement for apps that remain outside SSO.
Push enforces password policies at the point of login across every application accessed through the browser. It detects reused and breached passwords and surfaces in-browser guardrails prompting users to change them. SSO login guidance guides users toward SSO when available. For apps that can't be federated, Push provides the only enforcement mechanism available. See identity hardening approaches.
Credential stuffing is automated — an attacker takes stolen username-password pairs from data breaches and tests them against other services at scale. Credential phishing is targeted social engineering — tricking a specific user into entering their password on a fake login page. Credential stuffing exploits password reuse; credential phishing exploits user trust.
They also differ in remediation. Against credential stuffing, detect and eliminate reused or breached passwords. Against credential phishing, detect the phishing page before credentials are entered. Push addresses both: compromised credential detection at login and behavioral phishing detection in the browser.
In 2024, attackers used credentials harvested from infostealer infections — some dating back years — to access Snowflake customer accounts. 165 organizations were targeted, with more than 1 billion records stolen from just the publicly named victims. Snowflake lacked platform-level MFA enforcement, and 80% of compromised accounts had prior breach exposure in datasets dating back to 2020.
Prevention requires three things: detecting compromised credentials before they're exploited, enforcing MFA on all accounts (not just IdP-managed ones), and detecting session replay when stolen tokens are used. Push addresses all three — compromised credential detection at login, MFA enforcement via in-browser guardrails, and session marker injection for stolen token detection. Read Push's Snowflake analysis.
Latest resources


