On Monday 14 March 2022 at 23:47 UTC, a HTTP/2 rapid reset targeted a gaming community customer in the Nordics. The attack peaked at 213.4 million requests per second and lasted 21 minutes. Traffic originated from 2859 autonomous systems in 93 countries, predominantly misconfigured open reflectors.
| Vector | HTTP/2 rapid reset |
| Peak | 213.4 million requests per second |
| Duration | 21 min |
| Time to mitigation | 0.585 s |
| Attack traffic reaching origin | 0.083% |
| Legitimate traffic challenged | 0.31% |
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 614 within 27 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 68 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.
- Enable authenticated origin pulls.
Solid runbook advice. The DNS-at-2am point hit home.
Thanks! Yes — the risk score and its components are included in every log record.
We had the exact false-positive issue with CGNAT carriers. The weighting change makes sense.