TGViewer
Библиотека девопса | DevOps, SRE, Sysadmin Библиотека девопса | DevOps, SRE, Sysadmin @devopsslib · 10.4K subscribers
Post #3965 1.44K
🔒 Как закрыть базовые дыры: CORS и Security Headers

Заголовки безопасности и CORS — дешёвая страховка: 15 минут работ, минус XSS, кликджекинг и утечки. Ни магии, ни «серой» криптографии — только дисциплина.

1. Строгие заголовки безопасности — базовый минимум

Идея: запретить всё, разрешить необходимое. Это резко сужает поверхность атаки.

• CSP — главный щит от XSS. Старт: запрет скриптов извне и инлайна.

• HSTS — принудительный HTTPS. Не включайте preload, пока не уверены во всех поддоменах.

• X-Content-Type-Options: nosniff — браузер не «угадывает» типы.

• Referrer-Policy: strict-origin-when-cross-origin — не светим полный URL.

• Permissions-Policy — режем ненужные API.

• frame-ancestors (в CSP) — современная альтернатива X-Frame-Options.

Рекомендованный набор:
Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; object-src 'none'; base-uri 'self'; frame-ancestors 'none'
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
Referrer-Policy: strict-origin-when-cross-origin
Permissions-Policy: geolocation=(), camera=(), microphone=()


2. CORS без «*»

Принцип: доверяем только своим фронтам. Никаких универсальных разрешений.

• Access-Control-Allow-Origin — точный домен (https://proglib.io/), не *.

• Allow-Credentials: true — только при точном Origin (иначе браузер заблокирует).

• Allow-Methods / Allow-Headers — перечислите реально используемые.

• Max-Age — кэш preflight (например, 600 сек).

• Vary: Origin — правильное кеширование на прокси.

Шаблон ответа сервера:
Access-Control-Allow-Origin: https://app.example.com
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET,POST,PUT,DELETE
Access-Control-Allow-Headers: Content-Type, Authorization
Access-Control-Max-Age: 600
Vary: Origin


Этот минимум даёт мгновенный прирост безопасности без рефакторинга.

🐸Библиотека devops'a

#буст
  • 👍 3
  • 🔥 1
More from @devopsslib
  1. Sep 29, 2026Для тех, кто работает с Kubernetes и облачной инфраструктурой, в октябре намечается отличн…
  2. Sep 25, 2026🤖 ИИ-агенту теперь можно поставить задачу прямо в GitLab — и не расписывать каждый следую…
  3. Sep 15, 2026😭 Как не потратить недельный лимит AI-кодинга за три дня? Разберём на вебинаре, как трати…
  4. Sep 15, 2026👩‍💻 Bash-скрипт для мониторинга сервисов Полноценный мониторинг вроде Zabbix или Prometh…
  5. Sep 13, 2026🌸 Вселенная намекает: пора уже начать этот курс С 14 сентября цены в Proglib Academy выра…
  6. Sep 13, 2026🤪 Если бы можно было задать один вопрос про AI в разработке — что бы вы спросили? Как выб…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →