TG Telegram Group & Channel
Пентестинг. Этичный хакинг. | United States America (US)
Create: Update:

🔍 HTTP Request Smuggling - скрытый враг в веб-приложениях

Всем привет! Сегодня хочу рассказать об одной из самых коварных уязвимостей в веб-безопасности - HTTP Request Smuggling (HRS). Это не самая популярная тема, но именно из-за своей скрытности и сложности она очень интересна и опасна.

Что это вообще такое?
HTTP Request Smuggling - это техника атаки, при которой злоумышленник «смешивает» (smuggle) несколько HTTP-запросов так, что они интерпретируются по-разному разными компонентами инфраструктуры: например, фронтенд-прокси и бэкенд-сервером. Из-за этого часть запроса может быть скрыта или неправильно обработана.

Почему это страшно?
Обход аутентификации и авторизации.
Если фронтенд-прокси считает, что запрос закончен, а бэкенд видит в потоке еще один скрытый запрос, злоумышленник может получить доступ к ресурсам, к которым не должен.
Кража сессий и управление ими.
Можно «подменить» куки или заголовки для другого пользователя.
Кэш-пойминг (Cache Poisoning).
Злоумышленник может отправить запрос так, чтобы кеш на прокси или CDN сохранил неправильный контент, выдавая его другим пользователям.

Как это работает?
HTTP/1.1 спецификация позволяет использовать два способа определить конец запроса:

Заголовок Content-Length - указывает точный размер тела запроса.
Заголовок Transfer-Encoding: chunked - тело разбито на чанки.
Если прокси и сервер используют разные методы определения конца запроса (например, прокси смотрит на Content-Length, а сервер - на Transfer-Encoding), они могут по-разному интерпретировать границы запросов.

Пример:

Злоумышленник отправляет один длинный запрос, где часть выглядит как второй отдельный запрос, но прокси считает, что запрос закончился раньше, а сервер обрабатывает остаток как новый запрос с другим содержимым.

Где искать уязвимость?
Между фронтенд-прокси (Nginx, Cloudflare, AWS ALB) и бэкендом.
В приложениях, которые принимают запросы через несколько серверов или балансировщиков.
Особенно если используются разные веб-серверы, или старые версии ПО.

Защита
Используйте современные, актуальные версии серверного ПО.
Следите, чтобы фронтенд и бэкенд согласовывали правила обработки заголовков.
Включайте и настраивайте WAF с поддержкой обнаружения HRS.
Анализируйте логи на аномалии в HTTP-запросах.
Проводите регулярные тесты безопасности с учетом HTTP Request Smuggling.

Итог
HTTP Request Smuggling - не самый очевидный, но очень мощный в руках пентестера инструмент. Его сложно обнаружить, но последствия могут быть катастрофическими.

Если вы еще не сталкивались с этой темой, настоятельно рекомендую изучить! Это как маленький, но злобный тролль в веб-инфраструктуре.

Слышали когда-то про HTTP Request Smuggling? 🙂

🔍 HTTP Request Smuggling - скрытый враг в веб-приложениях

Всем привет! Сегодня хочу рассказать об одной из самых коварных уязвимостей в веб-безопасности - HTTP Request Smuggling (HRS). Это не самая популярная тема, но именно из-за своей скрытности и сложности она очень интересна и опасна.

Что это вообще такое?
HTTP Request Smuggling - это техника атаки, при которой злоумышленник «смешивает» (smuggle) несколько HTTP-запросов так, что они интерпретируются по-разному разными компонентами инфраструктуры: например, фронтенд-прокси и бэкенд-сервером. Из-за этого часть запроса может быть скрыта или неправильно обработана.

Почему это страшно?
Обход аутентификации и авторизации.
Если фронтенд-прокси считает, что запрос закончен, а бэкенд видит в потоке еще один скрытый запрос, злоумышленник может получить доступ к ресурсам, к которым не должен.
Кража сессий и управление ими.
Можно «подменить» куки или заголовки для другого пользователя.
Кэш-пойминг (Cache Poisoning).
Злоумышленник может отправить запрос так, чтобы кеш на прокси или CDN сохранил неправильный контент, выдавая его другим пользователям.

Как это работает?
HTTP/1.1 спецификация позволяет использовать два способа определить конец запроса:

Заголовок Content-Length - указывает точный размер тела запроса.
Заголовок Transfer-Encoding: chunked - тело разбито на чанки.
Если прокси и сервер используют разные методы определения конца запроса (например, прокси смотрит на Content-Length, а сервер - на Transfer-Encoding), они могут по-разному интерпретировать границы запросов.

Пример:

Злоумышленник отправляет один длинный запрос, где часть выглядит как второй отдельный запрос, но прокси считает, что запрос закончился раньше, а сервер обрабатывает остаток как новый запрос с другим содержимым.

Где искать уязвимость?
Между фронтенд-прокси (Nginx, Cloudflare, AWS ALB) и бэкендом.
В приложениях, которые принимают запросы через несколько серверов или балансировщиков.
Особенно если используются разные веб-серверы, или старые версии ПО.

Защита
Используйте современные, актуальные версии серверного ПО.
Следите, чтобы фронтенд и бэкенд согласовывали правила обработки заголовков.
Включайте и настраивайте WAF с поддержкой обнаружения HRS.
Анализируйте логи на аномалии в HTTP-запросах.
Проводите регулярные тесты безопасности с учетом HTTP Request Smuggling.

Итог
HTTP Request Smuggling - не самый очевидный, но очень мощный в руках пентестера инструмент. Его сложно обнаружить, но последствия могут быть катастрофическими.

Если вы еще не сталкивались с этой темой, настоятельно рекомендую изучить! Это как маленький, но злобный тролль в веб-инфраструктуре.

Слышали когда-то про HTTP Request Smuggling? 🙂
11🔥2


>>Click here to continue<<

Пентестинг. Этичный хакинг.




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)