Special HTTP headers
Списки слів та Інструменти
Заголовки для зміни місцезнаходження
Переписати IP-джерело:
X-Originating-IP: 127.0.0.1
X-Forwarded-For: 127.0.0.1
X-Forwarded: 127.0.0.1
Forwarded-For: 127.0.0.1
X-Forwarded-Host: 127.0.0.1
X-Remote-IP: 127.0.0.1
X-Remote-Addr: 127.0.0.1
X-ProxyUser-Ip: 127.0.0.1
X-Original-URL: 127.0.0.1
Client-IP: 127.0.0.1
X-Client-IP: 127.0.0.1
X-Host: 127.0.0.1
True-Client-IP: 127.0.0.1
Cluster-Client-IP: 127.0.0.1
Via: 1.0 fred, 1.1 127.0.0.1
Connection: close, X-Forwarded-For
(Перевірте заголовки hop-by-hop)
Переписати місцезнаходження:
X-Original-URL: /admin/console
X-Rewrite-URL: /admin/console
Заголовки hop-by-hop
Заголовок hop-by-hop - це заголовок, який призначений для обробки та споживання проксі, який в даний момент обробляє запит, на відміну від заголовка end-to-end.
Connection: close, X-Forwarded-For
HTTP-запит на викрадення
Content-Length: 30
Transfer-Encoding: chunked
Заголовки кешування
Заголовки кешування сервера:
X-Cache
в відповіді може мати значенняmiss
, коли запит не був кешований, та значенняhit
, коли він кешованийСхожа поведінка в заголовку
Cf-Cache-Status
Cache-Control
вказує, чи кешується ресурс і коли ресурс буде кешований знову:Cache-Control: public, max-age=1800
Vary
часто використовується в відповіді для вказівки додаткових заголовків, які розглядаються як частина ключа кешування, навіть якщо вони зазвичай не є ключовими.Age
визначає час у секундах, протягом якого об'єкт перебував у кеші проксі.Server-Timing: cdn-cache; desc=HIT
також вказує, що ресурс був кешований
Заголовки локального кешування:
Clear-Site-Data
: Заголовок, що вказує кеш, який слід видалити:Clear-Site-Data: "cache", "cookies"
Expires
: Містить дату/час, коли відповідь повинна закінчитися:Expires: Wed, 21 Oct 2015 07:28:00 GMT
Pragma: no-cache
те саме, що іCache-Control: no-cache
Warning
: Загальний HTTP-заголовокWarning
містить інформацію про можливі проблеми зі статусом повідомлення. У відповіді може з'явитися більше одного заголовкаWarning
.Warning: 110 anderson/1.3.37 "Response is stale"
Умовні
Запити з використанням цих заголовків:
If-Modified-Since
таIf-Unmodified-Since
будуть відповідати даними лише у випадку, якщо заголовок відповідіLast-Modified
містить інший час.Умовні запити з використанням
If-Match
таIf-None-Match
використовують значення Etag, тому веб-сервер надсилатиме вміст відповіді, якщо дані (Etag) змінилися.Etag
береться з HTTP-відповіді.Значення Etag зазвичай обчислюється на основі вмісту відповіді. Наприклад,
ETag: W/"37-eL2g8DEyqntYlaLp5XLInBWsjWI"
вказує, щоEtag
- це Sha1 з 37 байтів.
Запити діапазону
Accept-Ranges
: Вказує, чи сервер підтримує запити діапазону, і в якому одиниці може бути виражений діапазон.Accept-Ranges: <range-unit>
Range
: Вказує частину документа, яку сервер повинен повернути.If-Range
: Створює умовний запит діапазону, який виконується лише у випадку відповідності вказаного etag або дати віддаленому ресурсу. Використовується для запобігання завантаженню двох діапазонів з несумісної версії ресурсу.Content-Range
: Вказує, де в повному повідомленні тіла належить часткове повідомлення.
Інформація про тіло повідомлення
Content-Length
: Розмір ресурсу, у десятковому числі байтів.Content-Type
: Вказує медіа-тип ресурсуContent-Encoding
: Використовується для вказівки алгоритму стиснення.Content-Language
: Описує мову(и) для аудиторії, щоб користувач міг розрізняти відповідно до власної вибраної мови користувача.Content-Location
: Вказує альтернативне місце для повернених даних.
З точки зору пентесту ця інформація зазвичай "некорисна", але якщо ресурс захищений 401 або 403 і ви знайдете якийсь спосіб отримати цю інформацію, це може бути цікаво.
Наприклад, комбінація Range
та Etag
в запиті HEAD може витікати вміст сторінки через запити HEAD:
Запит з заголовком
Range: bytes=20-20
та відповіддю, що міститьETag: W/"1-eoGvPlkaxxP4HqHv6T3PNhV9g3Y"
, витікає, що SHA1 байта 20 -ETag: eoGvPlkaxxP4HqHv6T3PNhV9g3Y
Інформація про сервер
Server: Apache/2.4.1 (Unix)
X-Powered-By: PHP/5.3.3
Контроль
Allow
: Цей заголовок використовується для вказівки HTTP-методів, які може обробляти ресурс. Наприклад, його може бути вказано якAllow: GET, POST, HEAD
, що вказує на те, що ресурс підтримує ці методи.Expect
: Використовується клієнтом для передачі очікувань, які сервер повинен виконати для успішної обробки запиту. Один з типових випадків використання - це заголовокExpect: 100-continue
, який сигналізує, що клієнт має намір надіслати великий обсяг даних. Клієнт очікує відповіді100 (Continue)
перед продовженням передачі. Цей механізм допомагає оптимізувати використання мережі, чекаючи на підтвердження від сервера.
Завантаження
Заголовок
Content-Disposition
в HTTP-відповідях вказує, чи файл повинен бути відображений вбудовано (на веб-сторінці) або розглядатися як вкладення (завантажуватися). Наприклад:
Це означає, що файл під назвою "filename.jpg" призначений для завантаження та збереження.
Захисні заголовки
Політика безпеки контенту (CSP)
pageContent Security Policy (CSP) BypassДовірені типи
За допомогою виконання Довірених типів через CSP, додатки можуть бути захищені від атак DOM XSS. Довірені типи забезпечують, що лише спеціально створені об'єкти, які відповідають встановленим політикам безпеки, можуть бути використані в небезпечних викликах веб-API, тим самим захищаючи код JavaScript за замовчуванням.
X-Content-Type-Options
Цей заголовок запобігає перевірці типу MIME, практиці, яка може призвести до вразливостей XSS. Він забезпечує, що браузери дотримуються типів MIME, вказаних сервером.
X-Frame-Options
Для боротьби зі зловмисним вбудовуванням, цей заголовок обмежує способи вбудовування документів в теги <frame>
, <iframe>
, <embed>
, або <object>
, рекомендуючи всім документам явно вказувати їх дозволи на вбудовування.
Cross-Origin Resource Policy (CORP) та Cross-Origin Resource Sharing (CORS)
CORP є важливим для вказання, які ресурси можуть бути завантажені веб-сайтами, пом'якшуючи витоки між сайтами. CORS, з іншого боку, дозволяє більш гнучкий механізм спільного використання ресурсів між джерелами, послаблюючи політику однакового походження за певних умов.
Політика вбудовування з іншого походження (COEP) та Політика відкривача з іншого походження (COOP)
COEP та COOP є важливими для ввімкнення ізоляції між походженнями, що значно зменшує ризик атак подібних до Spectre. Вони контролюють завантаження ресурсів з іншого походження та взаємодію з вікнами з іншого походження відповідно.
HTTP Strict Transport Security (HSTS)
Наостанок, HSTS - це функція безпеки, яка змушує браузери спілкуватися лише з серверами через безпечне з'єднання HTTPS, тим самим підвищуючи конфіденційність та безпеку.
Посилання
Last updated