On Monday 23 September 2024 at 23:12 UTC, a credential stuffing targeted a B2B SaaS customer in the Middle East. The attack peaked at 329.4 million requests per second and lasted 159 minutes. Traffic originated from 2920 autonomous systems in 84 countries, predominantly residential proxy networks.
| Vector | credential stuffing |
| Peak | 329.4 million requests per second |
| Duration | 159 min |
| Time to mitigation | 0.002 s |
| Attack traffic reaching origin | 0.071% |
| Legitimate traffic challenged | 0.14% |
Timeline
The attack was preceded by no stated motive. Request rates on the targeted routes exceeded their hourly baseline by a factor of 580 within 38 seconds. The risk score of participating clients crossed the challenge threshold automatically and proof-of-work difficulty rose with origin load.
What the customer saw
No customer-visible impact. The on-call engineer was notified and acknowledged the incident from the dashboard.
Recommendations
- Review allow-listed partner ranges quarterly.
- Enable log streaming to your SIEM for faster correlation.
- Lower challenge thresholds on authentication endpoints during high-risk events.
How do you avoid challenging uptime monitors and partners?
This matches what we see in iGaming around big matches.
This matches what we see in iGaming around big matches.
Solid runbook advice. The DNS-at-2am point hit home.
Thanks! Yes — the risk score and its components are included in every log record.
Great write-up. We saw almost the same pattern on our login endpoint last month.
The billing model is what got our finance team on board, honestly.