request-smuggling
Тестирование HTTP request smuggling и десинхронизации. Применяется, когда фронтенд-прокси, CDN или балансировщики расходятся с origin в фрейминге сообщений (Content-Length vs Transfer-Encoding), при трансляции HTTP/2→HTTP/1 или исследовании client-side desync через browser fetch pipelines.
Что делает навык
Skill предоставляет экспертные техники атак на десинхронизацию HTTP-запросов (HTTP Request Smuggling), выявляя расхождения в интерпретации границ сообщений между фронтенд-прокси, CDN и origin-сервером. Он решает задачу обнаружения уязвимостей, связанных с несогласованностью фрейминга (Content-Length vs Transfer-Encoding) и трансляции протоколов, а не просто инъекции заголовков.
Когда применять
- Когда есть подозрение, что CDN или reverse-proxy и origin-сервер по-разному определяют конец запроса.
- При аномальном склеивании запросов во время понижения версии протокола с HTTP/2 на HTTP/1.
- Для исследования client-side desync через конвейерные запросы браузера (browser fetch pipelines).
- При использовании Apache HttpClient <= 4.5.9, где требуется обход стандартных механизмов через инъекцию специфичных символов.
Как работает
- Определить тип десинхронизации, например, CL.TE, где фронтенд доверяет Content-Length, а бэкенд — Transfer-Encoding: chunked.
- Сформировать запрос с очень коротким значением Content-Length, чтобы фронтенд принял его как конец сообщения, в то время как бэкенд продолжит парсинг chunked-данных.
- Использовать техники обфускации TE.TE и понижения HTTP/2 до HTTP/1 для запутывания границ сообщений.
- Применять инструментальный фаззинг для автоматизированного поиска расхождений в фрейминге.
- При использовании уязвимых библиотек (Apache HttpClient <= 4.5.9) внедрять специфичные символы (U+760D U+760A) для принудительного разделения запроса на уровне CRLF.
Примеры запросов агенту
Что понадобится
- Знание сырого фрейминга HTTP/1.1 и топологий reverse-proxy.
- Доступ к инструментам для фаззинга и манипуляции сырыми HTTP-запросами.
- Среда с Apache HttpClient <= 4.5.9 (для специфичных атак ghost-bits-cast).
Описание составлено по SKILL.md навыка, сверено 07.10.2026.
Как подключить
SKILL.md к навыкам ассистентаНавык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.