On Wednesday 21 January 2026 at 06:50 UTC, a credential stuffing targeted a municipal services customer in the Middle East. The attack peaked at 425.6 million requests per second and lasted 23 minutes. Traffic originated from 1403 autonomous systems in 103 countries, predominantly a rented booter service.
| Vector | credential stuffing |
| Peak | 425.6 million requests per second |
| Duration | 23 min |
| Time to mitigation | 0.761 s |
| Attack traffic reaching origin | 0.045% |
| Legitimate traffic challenged | 0.49% |
Timeline
The attack was preceded by a ransom note demanding payment in Monero. Request rates on the targeted routes exceeded their hourly baseline by a factor of 421 within 6 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
A brief increase in p99 latency of 190 ms during the first minute, then normal service.
Recommendations
- Keep origin IPs out of public DNS history.
- Add a dedicated rate limit for the targeted route.
- Review allow-listed partner ranges quarterly.
How does the proof-of-work challenge behave on older Android devices? Any numbers below Android 10?
Nice to read a vendor blog that admits what went wrong.
Clear and practical, thanks.
Solid runbook advice. The DNS-at-2am point hit home.
Good question. We will cover that in a follow-up post.
Nice to read a vendor blog that admits what went wrong.
We had the exact false-positive issue with CGNAT carriers. The weighting change makes sense.
Great to hear, thanks for sharing your experience.
How does the proof-of-work challenge behave on older Android devices? Any numbers below Android 10?
Could you share the dataset behind the percentages?
How does the proof-of-work challenge behave on older Android devices? Any numbers below Android 10?