Pull to refresh

Comments 11

X-UA-Compatible: IE=edge
Эти эвристики не всегда работали корректно
Ох уж счастливые люди, живущие в своем уютном мирке одного браузера (да еще и не IE). В суровой реальности эти эвристики до сих пор работают не корректно, проще IE в голову гвоздь забить заголовком, чем разбираться что ему там на этот раз не нравится что он решил рендерить страницу в IE5.
P3P в большинстве ситуаций не нужен, да. Но! В США многие работники ну очень большой страховой компании используют корпоративный ноутбук со строгими правилами безопасности, и, как бы взаимоисключающе это не звучало, ИЕ11. Так что если у вас несколько сервисов на разных поддоменах в IFRAME и схожая целевая группа пользователей, не стоит сходу выпиливать этот заголовок — без него может и не взлететь.
Утверждение о том, что X-Frame-Options устарел, и что его можно заменить на Content-Security-Policy: frame-ancestors 'self', явно преувеличено, т.к. если посмотреть на то, кто же поддерживает атрибут frame-ancestors, то станет понятно, что замены для X-Frame-Options на данный момент просто нет. Для сравнения, X-Frame-Options работать будет почти на любом «чайнике»
Эта статья.
Запрос:
Host: habr.com
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Encoding: gzip, deflate
Referer: https://habr.com/feed/page2/
Cookie: ...
Cache-Control: no-cache
Connection: Keep-Alive


Ответ:
Server: QRATOR
Date: Thu, 31 May 2018 14:37:49 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Keep-Alive: timeout=15
Vary: Accept-Encoding
X-Powered-By: PHP/5.6.36-1+ubuntu16.04.1+deb.sury.org+1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
X-Frame-Options: SAMEORIGIN
P3P: CP="CAO DSP COR CURa ADMa DEVa PSAa PSDa IVAi IVDi CONi OUR OTRi IND PHY ONL UNI FIN COM NAV INT DEM STA"
X-Content-Type-Options: nosniff
Content-Encoding: gzip
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
Public-Key-Pins: pin-sha256="jWWta3ma1DSx8lFr6uv04x6sSRmK5X4Z0ivIL7+qKLM="; pin-sha256="klO23nT2ehFDXCfx3eHTDRESMz3asj1muO+4aIdjiuY="; pin-sha256="kUh5F9diW5KlrhQ+nEKTIVFWVZuNbVqkKtm+KOGPXCE="; max-age=15552000


Как видим, претензии адекватны.

Как только ощутите мощь сквозной телеметрии приложения, не станете отмахиваться от отладочных заголовков. Включать их условно — да, можно, но вы 1. Не встречали багов, не воспроизводимых локально? 2. Не хотите владеть полной картиной? Цена этому — пара заголовков? Не понять.

Ну скажем вот это избыточная информация, зачем светить ее наружу:


X-Powered-By: PHP/5.6.36-1+ubuntu16.04.1+deb.sury.org+1


Ну а Server: QRATOR — наверное чтобы сразу отпугнуть желающих устроить ддос

Не знаю тот ли тут случай, но есть такой подход:

1. Указываем заведомо уязвимый софт, который не совпадает с реальностью.
2. Мониторим попытки эксплуатации известных уязвимостей.
3. Либо просто баним, либо пишем более сложный сценарий.

Тем самым усложняем жизнь взломщикам, которые не понимают что происходит и снова и снова напарываются на бан, даже не приближаясь к цели. Конечно, должны быть и другие средства защиты от типичных сканов, да и крутой профессионал со временем разберется что к чему, но и ему нервы попортит, если он не очень мотивирован, то может и бросить это гиблое дело.

Вспоминается статья, где в заголовки добавляли информацию — куда позвонить/написать, чтобы устроиться к ним на работу)

Не ожидал, что в 2018 году придётся упоминать заголовок Pragma...

Предполагаю, что одна из причин, по которой он в топе — это отправка этого заголовка по умолчанию в PHP при старте сессии (Pragma: no-cache).
http://php.net/manual/ru/function.session-cache-limiter.php

А я ещё вдобавок использую хедер
X-Clacks-Overhead "GNU Terry Pratchett"
Sign up to leave a comment.

Articles