Ответ вслух Middle Безопасность фронтенда обновлено

Защита на уровне заголовков

Вопрос

Какие заголовки безопасности ты бы поставил фронтенду?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Content-Security-Policy - главный: перечисляет разрешённые источники скриптов, стилей, картинок и запрещает инлайн. Он превращает найденную XSS-дыру из катастрофы в неудобство.

Что должно прозвучать в ответе

  • Content-Security-Policy ограничивает источники скриптов и стилей

  • Strict-Transport-Security принуждает к HTTPS

  • X-Content-Type-Options: nosniff запрещает угадывание типа

  • X-Frame-Options или frame-ancestors защищают от кликджекинга

  • Referrer-Policy ограничивает утечку адресов

  • куки: httpOnly, Secure, SameSite

Что могут спросить следом

  • Как внедрять CSP, не сломав прод
  • Что такое CSP report-only
  • Почему SameSite=Strict иногда ломает вход по ссылке

Разбор

Content-Security-Policy - главный: перечисляет разрешённые источники скриптов, стилей, картинок и запрещает инлайн. Он превращает найденную XSS-дыру из катастрофы в неудобство.

Strict-Transport-Security заставляет браузер ходить только по HTTPS. X-Content-Type-Options: nosniff запрещает угадывать тип содержимого. frame-ancestors в CSP (или устаревший X-Frame-Options) не даёт встроить сайт в чужой iframe - защита от кликджекинга. Referrer-Policy не даёт утекать полным адресам с токенами в параметрах.

И куки: httpOnly (недоступна из JS), Secure (только по HTTPS), SameSite=Lax (защита от CSRF).

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме