On Saturday 28 February 2026 at 20:55 UTC, a cache-busting query flood targeted a electronics retail customer in the Nordics. The attack peaked at 623.0 million requests per second and lasted 141 minutes. Traffic originated from 3629 autonomous systems in 40 countries, predominantly hijacked home routers.
| Vector | cache-busting query flood |
| Peak | 623.0 million requests per second |
| Duration | 141 min |
| Time to mitigation | 0.577 s |
| Attack traffic reaching origin | 0.046% |
| Legitimate traffic challenged | 0.42% |
Timeline
The attack was preceded by a publicly announced sales event. Request rates on the targeted routes exceeded their hourly baseline by a factor of 426 within 26 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
Checkout conversion was unchanged compared with the same hour of the previous week.
Recommendations
- Add a dedicated rate limit for the targeted route.
- Enable log streaming to your SIEM for faster correlation.
- Keep origin IPs out of public DNS history.
Thanks — sharing this with our on-call team.
Any plans to support per-tenant limits keyed on a JWT claim?
We moved from a scrubbing provider to always-on last year; time to mitigation went from minutes to basically nothing.
Is the risk score exposed in the logs so we can build our own dashboards on it?
Any plans to support per-tenant limits keyed on a JWT claim?
Thanks — sharing this with our on-call team.
We moved from a scrubbing provider to always-on last year; time to mitigation went from minutes to basically nothing.
We moved from a scrubbing provider to always-on last year; time to mitigation went from minutes to basically nothing.