On Monday 29 September 2025 at 16:28 UTC, a WebSocket connection flood targeted a ticketing customer in Iberia. The attack peaked at 818.1 million requests per second and lasted 147 minutes. Traffic originated from 747 autonomous systems in 38 countries, predominantly compromised cloud VMs.
| Vector | WebSocket connection flood |
| Peak | 818.1 million requests per second |
| Duration | 147 min |
| Time to mitigation | 0.045 s |
| Attack traffic reaching origin | 0.019% |
| Legitimate traffic challenged | 0.15% |
Timeline
The attack was preceded by a breaking political story. Request rates on the targeted routes exceeded their hourly baseline by a factor of 719 within 39 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
- Enable log streaming to your SIEM for faster correlation.
- Lower challenge thresholds on authentication endpoints during high-risk events.
- Enable authenticated origin pulls.
How do you avoid challenging uptime monitors and partners?
Any plans to support per-tenant limits keyed on a JWT claim?
Carpet bombing is nasty. Good to see a clear explanation of it.
Nice to read a vendor blog that admits what went wrong.
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?
How does the proof-of-work challenge behave on older Android devices? Any numbers below Android 10?