Сорок символов на входе уронили сеть Cloudflare на 27 минут
2 июля 2019 года процессор ушёл под 100% на каждом пограничном сервере Cloudflare, принимавшем HTTP и HTTPS. Сайты по миру лежали 27 минут из-за одной регулярки.
Схема известная: вложенные квантификаторы на одном классе символов, структурно вроде (a+)+b. Движку с бэктрекингом подсовывают строку, которая почти совпала, и он перебирает все способы разложить её между плюсами: на 20 символах это полмиллиона попыток, а сорока хватает, чтобы забить ядро.
В разборе есть таблица откатов по длине входа.
#безопасность
Post #14798
8.11K

- 🔥 12
- ❤ 3
- 👍 3
- 👏 3
- 🤔 3
- 🎉 2
- 😁 1
- 🙏 1
- 👌 1
- 😴 1
- 🤝 1