PassFront
  1. PassFront
  2. База знаний
  3. DOM и браузер

Какие методы защиты от веб-уязвимостей важны на практике и чем они отличаются?

DOM и браузер

Методы защиты от веб-уязвимостей: экранирование/санитизация (XSS), CSP, `SameSite`/CSRF-токены (CSRF), безопасное хранение токенов, HTTPS, security-заголовки, валидация. Различаются тем, от какой угрозы защищают.

Методы и от чего защищают

Экранирование и санитизация вывода

Против XSS: textContent вместо innerHTML, автоэкранирование React/Vue, DOMPurify для HTML.

Content-Security-Policy (CSP)

Против XSS и инъекций: ограничивает источники скриптов/ресурсов, блокирует внедрённые скрипты.

SameSite cookie + CSRF-токены

Против CSRF: cookie не шлётся кросс-сайт (SameSite), непредсказуемый токен в запросе.

Безопасное хранение токенов

Против кражи токенов: HttpOnly cookie / память, не localStorage.

HTTPS / HSTS

Против MITM: шифрование трафика, принудительный HTTPS.

X-Frame-Options / frame-ancestors

Против clickjacking: запрет встраивания в iframe.

Валидация на сервере

Против инъекций и некорректных данных: параметризованные запросы, проверка ввода.

Аудит зависимостей

Против уязвимых пакетов: npm audit, обновления.

Различия

Каждый метод — против конкретной угрозы:

  • Ввод → экранирование, CSP, валидация.
  • Межсайтовые → SameSite, X-Frame-Options.
  • Хранение → HttpOnly.
  • Транспорт → HTTPS.

Принцип

Defense in depth — несколько слоёв. Ориентир — OWASP Top 10.

Коротко для собеседования

Методы защиты: экранирование/санитизация + CSP (XSS), SameSite/CSRF-токены (CSRF), безопасное хранение токенов — HttpOnly/память (кража), HTTPS/HSTS (MITM), X-Frame-Options (clickjacking), валидация на сервере (инъекции), аудит зависимостей. Каждый — против конкретной угрозы; вместе дают defense in depth (OWASP Top 10).

Другие вопросы раздела