XSS: типы атак и Content Security Policy
Cross-Site Scripting — внедрение JavaScript-кода в страницы жертвы. Позволяет украсть cookies, session tokens, выполнить действия от имени пользователя.
Три типа XSS
Reflected: payload в URL, срабатывает при переходе. Stored: сохранён в БД (комментарии, ники), опасен для многих пользователей. DOM-based: манипуляция клиентским JS без участия сервера. Все три критичны в контексте игровых платформ.
Векторы
Чат в live-играх: . Профиль игрока: bio, никнейм. Отзывы, поддержка. Реферальные ссылки. Любой user-generated content.
Защита
Output encoding: HTML-escape всех user data. Framework-level защита: React/Vue экранируют по умолчанию, но dangerouslySetInnerHTML опасен. HTTPOnly cookies: недоступны из JS. SameSite=Strict.
Content Security Policy
CSP header: default-src 'self'; script-src 'self' 'nonce-{random}'. Отключение inline JS. Whitelist доменов для внешних ресурсов. Report-only режим для отладки. Report-URI для сбора нарушений. CSP Level 3 с nonces — основной инструмент mitigation в 2025 г.