HTTP Request Handling Anomalies Lab
Учебный лендинг с интерактивными демо по аномалиям обработки HTTP‑запросов, включая обход маршрутизации первого запроса (first‑request routing bypass) и другие нетривиальные кейсы.
Базовый HTTP‑запрос
Классический пример: внешний клиент обращается к публичному хосту, но где‑то по пути (на прокси или балансировщике) появляются дополнительные заголовки, влияющие на маршрутизацию.
GET /intranet HTTP/1.1
Host: example.com
X-Forwarded-Host: intranet.example
Для чего нужна лаборатория
Лаборатория помогает воспроизводить и исследовать ситуации, когда:
- прокси проверяет только первый запрос в соединении;
- внутренние и внешние хосты смешиваются в одном TLS‑канале;
-
комбинации
HostиX-Forwarded-Hostприводят к неожиданной маршрутизации.
Маршрут одного TLS‑соединения
Один TCP/TLS‑канал может обслуживать несколько HTTP‑запросов с
разными заголовками Host. Если гейтвей доверяет только
первому значению или неправильно обрабатывает форвардинг, запросы
могут попасть на внутренние виртуальные хосты.
первого запроса
/ intranet.example
Лаборатория позволяет пошагово прокрутить такие сценарии и увидеть, как изменится маршрут при разных сочетаниях заголовков.
Интерактивный пример маршрутизации
Ниже — упрощённый конструктор HTTP‑запроса. Меняйте значения
Host и X-Forwarded-Host, чтобы увидеть,
какой запрос уйдёт на бэкенд и как может измениться цель маршрута.
/, /admin,
/intranet.
GET /intranet HTTP/1.1
Host: example.com
# X-Forwarded-Host не установлен
example.com.
Прокси не меняет цель запроса, он идёт на публичный виртуальный хост.