On Monday 11 July 2022 at 03:27 UTC, a credential stuffing targeted a tax authority portal customer in the Nordics. The attack peaked at 497.5 million requests per second and lasted 32 minutes. Traffic originated from 1651 autonomous systems in 14 countries, predominantly a Mirai-derived IoT botnet.
| Vector | credential stuffing |
| Peak | 497.5 million requests per second |
| Duration | 32 min |
| Time to mitigation | 0.905 s |
| Attack traffic reaching origin | 0.000% |
| Legitimate traffic challenged | 0.39% |
Timeline
The attack was preceded by a competitor’s product launch. Request rates on the targeted routes exceeded their hourly baseline by a factor of 341 within 24 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
- Lower challenge thresholds on authentication endpoints during high-risk events.
- Enable log streaming to your SIEM for faster correlation.
- Keep origin IPs out of public DNS history.
This matches what we see in iGaming around big matches.
Thanks — sharing this with our on-call team.
Carpet bombing is nasty. Good to see a clear explanation of it.
Would love a follow-up on how you handle HTTP/3 fingerprinting.
Verified good bots and allow-listed partners bypass challenges entirely.
Any plans to support per-tenant limits keyed on a JWT claim?
The point about origin IPs leaking through certificate transparency logs is underrated.
Great write-up. We saw almost the same pattern on our login endpoint last month.