Sobes.tech
Back to questions
Middle
2

Какие уязвимости знаешь и как с ними борешься?

Companies where asked
Лантан

Answer from AI

sobes.tech AI

Основные уязвимости во фронтенде и способы борьбы с ними:

  • XSS (Cross-Site Scripting) — внедрение вредоносного скрипта.

    • Использовать экранирование и санитайзинг пользовательского ввода.
    • Применять Content Security Policy (CSP).
    • Использовать безопасные методы вставки данных в DOM (например, textContent вместо innerHTML).
  • CSRF (Cross-Site Request Forgery) — подделка запросов от имени пользователя.

    • Использовать CSRF-токены в формах и запросах.
    • Проверять заголовки Origin и Referer.
  • Clickjacking — обман пользователя через iframe.

    • Устанавливать заголовок X-Frame-Options.
  • Уязвимости в аутентификации и авторизации

    • Хранить токены безопасно (например, HttpOnly cookie).
    • Использовать современные методы аутентификации (OAuth, JWT с проверкой).
  • Уязвимости, связанные с загрузкой ресурсов

    • Проверять и ограничивать источники контента.

Пример защиты от XSS в React:

function SafeComponent({ userInput }) {
  return <div>{userInput}</div>; // React автоматически экранирует
}

Если нужно вставить HTML, использовать библиотеки для санитайзинга, например DOMPurify.