WAF-защиту Azure, Cloudflare, Google Cloud можно обойти 1207 способами

WAF-защиту Azure, Cloudflare, Google Cloud можно обойти 1207 способами

WAF-защиту Azure, Cloudflare, Google Cloud можно обойти 1207 способами

Команда исследователей из Северо-Восточного университета и Дартмутского колледжа разработала новый метод обхода фильтров WAF, который использует различия в парсинге HTTP-запросов на файрволах и защищаемых веб-серверах.

Традиционные способы обхода WAF полагаются на обфускацию вредоносной полезной нагрузки. Авторы PoC-атаки WAFFLED не стали трогать пейлоад и сосредоточились на невинных элементах контента — заголовках, сегментах тела запроса.

Для манипуляций были выбраны три широко используемых типа содержимого: multipart/form-data, application/xml и application/json.

Экспериментаторы изменяли набор символов для составного контента, значения параметров boundary и namespace, XML-схемы, декларации DOCTYPE, разделы CDATA, форматирование и вложенные структуры в JSON-объектах, стараясь ввести в заблуждение WAF, но так, чтобы атакуемый сервер при этом смог распарсить пробивший фильтры вредоносный запрос без проблем.

Всего в ходе исследования было обнаружено 1207 вариантов обхода WAF, с помощью которого злоумышленник может получить доступ к конфиденциальным данным. Подобные атаки известны как HTTP request smuggling (HRS).

 

Как оказалось, обход по методу WAFFLED составляет угрозу для четырех из пяти испытанных защитных продуктов (AWS WAF, Microsoft Azure WAF, Google Cloud Armor, Cloudflare WAF и ModSecurity, встроенный в nginx).

Тестирование проводилось в комбинации с веб-приложениями на основе популярных фреймворков, таких как Flask, FastAPI, Gin, Express, Spring Boot, Laravel. Проверка в полевых условиях показала: HRS из-за разницы в интерпретации HTTP-запросов актуален для 90% сайтов.

 

Ознакомившись с результатами исследования, Google признала наличие проблемы, заявила, что будет решать ее в приоритетном порядке, и выплатила вознаграждение. В Cloudflare тоже готовят фикс, Microsoft и ModSecurity-сообщество обновили наборы правил.

По мнению университетских исследователей, от таких уязвимостей избавиться не так уж сложно, главное — неукоснительно следовать рекомендациям RFC. В подтверждение своих слов авторы WAFFLED создали опенсорсный инструмент-прокси, который тщательно проверяет HTTP-запросы и приводит их в соответствие текущим стандартам RFC до передачи на WAF.

Тестирование HTTP-Normalizer показало, что он способен блокировать попытки обхода по методу WAFFLED с эффективностью 100%. Накладные расходы при этом ничтожны.

Тем, кто не в состоянии развернуть дополнительный прокси, советуют установить новейшие наборы правил (Azure DRS 2.1, ModSecurity CRS 3.3), по возможности исключить экзотические типы содержимого и ужесточить проверку заголовков Content-Type, Content-Length и Transfer-Encoding на уровне WAF и приложений.

Фильтры AdBlock выдают страну даже при включённом VPN

Исследователи описали новую технику деанонимизации под названием Adbleed, которая ставит под сомнение привычное ощущение безопасности у пользователей VPN. Проблема кроется в блокировщиках рекламы. Такие расширения, как uBlock Origin, Brave или AdBlock Plus, работают на основе списков фильтров.

Есть базовый список EasyList с десятками тысяч правил для международной рекламы, а есть региональные — для Германии, Франции, России, Бразилии, Японии и других стран.

Они блокируют локальные рекламные домены, и многие пользователи включают их вручную или по рекомендации самого расширения, ориентируясь на язык браузера.

 

Adbleed использует довольно изящную идею: он измеряет время, за которое браузер обрабатывает запрос к определённому домену. Если домен заблокирован фильтром, запрос обрывается почти мгновенно — за считаные миллисекунды.

 

Если не заблокирован, браузер пытается установить сетевое соединение, и даже при ошибке это занимает в разы больше времени. Небольшой JavaScript-скрипт может проверить несколько десятков доменов, характерных для конкретного регионального списка, и по скорости отклика понять, активирован он или нет. Всё это происходит на стороне клиента без cookies, без всплывающих разрешений и без каких-то сложных эксплойтов.

В итоге атакующий может выяснить, какие национальные фильтры включены в вашем браузере. А это почти всегда коррелирует со страной проживания или хотя бы с родным языком пользователя.

Если добавить к этому часовой пояс, параметры экрана и другие элементы цифрового отпечатка, анонимность заметно сужается, даже если вы сидите через VPN или прокси.

Самое неприятное в этой истории то, что VPN тут ни при чём: он меняет сетевую «точку выхода», но не конфигурацию браузера. Ваши фильтры остаются прежними, где бы ни находился сервер.

Пользователю остаётся не самый приятный выбор: отключать региональные списки и мириться с дополнительной рекламой, пытаться «зашумить» профиль случайными фильтрами или принимать риск как есть.

RSS: Новости на портале Anti-Malware.ru