DDoS-защита и WAF для iGaming-платформ
1) Риск-профиль iGaming: чем мы отличаемся от обычной e-commerce
Всплески трафика по расписанию: турниры, релизы провайдера, стримы; легко маскируют L7-флуды.
Денежные потоки: логины/депозиты/выводы — цель для credential stuffing, carding, L7-флудов по платежным endpoint’ам.
Реал-тайм: лайв-игры (WebSocket/WebRTC), котировки для беттинга; чувствительны к p95>150–250 мс.
Гео/лицензии: geofencing; злоумышленники используют прокси/ротацию ASN для обхода.
KPI защиты: аптайм ≥99.95%, p95 задержки ≤ 200 мс web / ≤ 120 мс API, FPR WAF < 0.3% на критичных флоу (логин, депозит), MTTD < 1 мин, MTTR ≤ 15 мин до полной стабилизации.
2) Многоуровневая DDoS-оборона (L3–L7)
Уровень сети (L3/L4):- Anycast CDN/Edge + scrubbing-центры: рассеивание объемных атак (UDP/ICMP, SYN/ACK flood).
- BGP-анонс через провайдера анти-DDoS: blackhole/RTBH как крайняя мера, лучше — чистка на периметре.
- Rate-limit на коннекты, SYN-cookies, отсечка нестандартных MSS/флагов.
- CDN-кэш и прото-валидация (HTTP/2/3): отбрасывать аномальные заголовки, неполные запросы (Slowloris), странные ALPN.
- Request-budget на IP/ASN/ключ сессии; токен-bucket (leaky bucket) на критичные методы.
- Dynamic upstream shedding: периметр “роняет” неважные руты (медиа, heavy-reports), оставляя auth/payments.
3) WAF как мозг L7-защиты
Базовые профили:- OWASP Top-10 (SQLi/XSS/XXE/RCE), протокол-анализ (ленты заголовков, метод/контент-тайп), анти-evasions.
- Позитивная модель для API: строгие схемы (JSON-Schema/OpenAPI), whitelisting методов и полей.
- Логин/регистрация: лимиты по IP/устройству/подсети; JS-челлендж (невидимый) вместо капчи на первых попытках.
- Платёжные формы: проверка реферера, подписи вебхуков (HMAC с ротацией), «холодные» отклики на частые ошибки AVS/CVV.
- Промо-эндпоинты: защита от кэш-бастинга, частоты запросов к бонусам/фрипинам, idempotency-ключи.
- Режим shadow → simulate → block с метриками FPR/TPR.
- Сегментация правил по рынкам (KYC-жёсткость, локальные провайдеры оплаты), по трафику (web/app/API).
4) Боты: от credential stuffing до бонус-абьюза
Сигналы:- Ротация IP/ASN, headless-браузеры, стабильные межкликовые интервалы, отсутствие WebGL/фонтов, ciphersuites «обезличены».
- Поведение: многократные логины, попытки подбора 2FA, высокие частоты проверок промо/джекпота, последовательности по словарю емейлов/номеров.
- JS/бихевиоральный челлендж (невидимые проверки) → капча только на эскалации.
- Слои защиты учётки: пароль + риск-базированная 2FA, прогрессивные задержки на повторы, device-bind.
- Bot-management провайдера/модуля: модели на уровне edge, метки «вероятно бот».
- Credential stuffing: have-I-been-pwned-подобные проверки паролей, запрет утёкших комбинаций.
5) Защита API и real-time каналов
API-WAF с позитивной моделью: JSON-Schema, лимит глубины/размера, запрет лишних полей, canonicalization.
mTLS и подписи запросов (timestamp+nonce, окно ≤ 300 с) для партнёрских интеграций.
WebSocket/WebRTC (лайв-казино, ставки в реальном времени): аутентификация токеном короткого TTL, перезапрос при 401, ограничение частоты сообщений, отсечка «пустых» пингов.
GraphQL (если есть): запрет introspection в проде, лимиты на сложность/глубину запроса.
6) Edge/СDN-архитектура и кэш
Anycast PoP ближе к игроку, кэш статик/медиа; API bypass cache с нормализацией URI и заголовков.
Кэш-ключи: не включать параметры-мусор; защита от кэш-бастинга (hash-allowlist).
Слои: Edge-WAF → Origin-WAF → App-GW. На каждом — собственные лимиты и канареечные правила.
7) Гео, ASN и комплаенс
Geo-фильтры (страны вне лицензии) на edge; мягкий ответ 403 с нейтральной страницей.
ASN-листы: хостинги/VPN как “желтый список” с усиленными челленджами; белые списки платёжных провайдеров и студий лайв-игр.
Legal-hold: корректные страницы блокировок (без утечек тех-деталей), логика исключений для аудиторов/регулятора.
8) Наблюдаемость и раннее обнаружение
SLO-набор: p95/p99 latency, error-rate, saturation edge/origin, share челленджей/блоков, success-ratio логина/депозита.
Сигнатуры атак: всплеск однотипных методов, рост 401/403/429, «плоская» география, повторяющиеся user-agent.
Синтетика: постоянные пробы логина/депозита/ставки с разных регионов.
Threat-intel: подписки на ботовые подсети/индикаторы, авто-апдейты списков.
9) Инцидент-менеджмент: от первой минуты до пост-мортема
Runbook (сокр.):1. Детект (алерт по SLO/анализ сигнатур) → объявить SEV-уровень.
2. Идентификация слоя: сеть (L3/L4) или приложение (L7).
3. Митигировать: включить усиленные профили WAF, поднять rate-limits, включить JS-челлендж, временно закрыть тяжелые руты/экспорты.
4. Согласовать бизнес-исключения: VIP/партнёры/платёжки по allow-list.
5. Коммуникация: статус-страница, шаблоны сообщений саппорту (без лишней технички).
6. Деэскалация и ретро: снять “жесткие” правила, зафиксировать паттерны, обновить плейбуки.
10) Тестирование защиты и «боевые учения»
Purple-team сессии: имитация L7-флудов (HTTP/2 rapid reset, header abuse, cache-busting), медленных атак (Slowloris/POST).
Нагрузочные тесты: пики промо/стримов (x5–x10 baseline), профили «коротких взрывов» (burst 30–90 с).
Chaos-drills: отказ PoP/регионов CDN, изъятие одного канала WebSocket, истечение сертификата edge.
Canary-правила: выкатывать новые сигнатуры на 5–10% трафика.
11) Производительность и UX при включенной защите
Дифференцируйте трение: невидимый JS-челлендж для всех; капча/step-up — только при рисковых сигналах.
Session-пины: закрепляйте риск-оценку на сессию, чтобы не «дергать» честного игрока повторно.
Кэшируйте нечувствительные проверки (AS reputation, гео) на TTL 10–30 мин.
12) Интеграция WAF с антифродом/риском
Шина событий: метки WAF/бот-менеджера → фичи антифрода (скоринг логина/платежа).
Решения в обе стороны: риск-движок может просить WAF поднять барьер на конкретные IP/ASN/устройства и наоборот.
Единый кабинет кейсов: трассировка «почему заблокирован игрок» (для саппорта и регулятора).
13) Специальные зоны: лайв-казино и беттинг-фиды
WebRTC/RTMP: защита TURN/STUN (rate-limit alloc/bind), токены на 30–60 с, гео-ограничение.
Фиды коэффициентов: read-only endpoints с жёсткими лимитами и кэшом на edge; подписанные запросы для партнёров.
Поставщики контента: выделенные каналы/ASN allow-list, мониторинг jitter/packet-loss.
14) Примеры правил/политик (упрощённо)
WAF позитивная модель для POST /api/payments/deposit
Метод: `POST`, `Content-Type: application/json`
JSON-Schema: `amount:number 1..10000`, `currency:[EUR,USD,...]`, `payment_method:[card,crypto]`
Лимиты: `≤ 5 req / 60s` на IP и `≤ 3 req / 60s` на аккаунт
Действия: > лимитов → 429 + токен-челлендж; schema-fail → 400 и метка “schema_violation”
Bot-policy логина
5 неуспешных логинов за 5 мин → невидимый челлендж
10 неуспешных → капча + прогрессивная задержка
ASN=хостинг + новый девайс → сразу JS-челлендж
Edge-rate-limit для /promo/claim
10 запросов/IP/мин; 2/мин на аккаунт; кэширование ответа 30 с на edge.
15) Чек-лист внедрения
- Anycast CDN + L3/L4 scrubbing, BGP-protect.
- WAF c OWASP-профилем + позитивные схемы для API.
- Bot-management: невидимые челленджи, эскалация до капчи.
- Гео/ASN-политики, allow-list платёжек/провайдеров лайв-игр.
- WebSocket/WebRTC защита: токены TTL, лимиты сообщений.
- Мониторинг SLO, синтетика по ключевым флоу.
- Runbook инцидентов, шаблоны коммуникаций, ретро-процедура.
- Регулярные учения: L7-флуды, cache-busting, отказ PoP.
- Интеграция событий WAF ↔ антифрод/риск-движок.
Резюме
Эффективная защита iGaming-платформы — это слоёный пирог: Anycast+scrubbing на сети, умный WAF с позитивной моделью на приложении, бот-менеджмент для учёток/промо/платежей и строгая дисциплина SLO/инцидент-менеджмента. Настраивайте правила под реальные игровые флоу, эскалируйте трение только при риске, тренируйте команду на «боевых» сценариях — и вы сохраните аптайм, скорость и конверсию даже под серьёзной атакой.
