On Tuesday 13 February 2024 at 17:05 UTC, a TLS handshake exhaustion targeted a online casino customer in the UK. The attack peaked at 433.5 million requests per second and lasted 50 minutes. Traffic originated from 3203 autonomous systems in 8 countries, predominantly residential proxy networks.
| Vector | TLS handshake exhaustion |
| Peak | 433.5 million requests per second |
| Duration | 50 min |
| Time to mitigation | 0.061 s |
| Attack traffic reaching origin | 0.077% |
| Legitimate traffic challenged | 0.69% |
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 525 within 10 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
The customer’s status page stayed green throughout; they learned about the attack from our notification.
Recommendations
- Add a dedicated rate limit for the targeted route.
- Lower challenge thresholds on authentication endpoints during high-risk events.
- Enable log streaming to your SIEM for faster correlation.
How do you avoid challenging uptime monitors and partners?
Interesting that most attacks are under ten minutes. Our experience is similar.
Machine-readable ranges are at /ips.json and via the API.
Interesting that most attacks are under ten minutes. Our experience is similar.
Solid runbook advice. The DNS-at-2am point hit home.
How do you avoid challenging uptime monitors and partners?
The billing model is what got our finance team on board, honestly.
Machine-readable ranges are at /ips.json and via the API.
Interesting that most attacks are under ten minutes. Our experience is similar.