- PVSM.RU - https://www.pvsm.ru -

Серьезная уязвимость прокси-сервера Squid позволяет «отравить кэш»

Серьезная уязвимость прокси-сервера Squid позволяет «отравить кэш» - 1 [1]

Цзянь-Цзюнь Чэнь (Jianjun Chen) — аспирант китайского Университета Цинхуа — обнаружил опасную уязвимость [2] в популярном прокси-сервере Squid. Как ему удалось выяснить, система не соответствует стандарту RFC 7230, а также некорректно работает при парсинге и обработке заголовка Host в HTTP-запросах. В результате злоумышленник может сформировать зловредный пакет и с помощью него осуществить атаку cache poisoning.

В чем проблема

Исследователю удалось осуществить атаку «отравления кэша» Squid-3.5.12 для любых незашифрованных HTTP-запросов. Чтобы провести такую атаку, злоумышленник должен иметь возможность посылать запросы через прокси-сервер к своему сайту (скажем, attack.com). При таком сценарии сначала устанавливается TCP-соединение с веб-сервером сайта attack.com — поскольку Squid работает в режиме прозрачного прокси, он перехватывает и передает эти запросы дальше. На следующем шаге атакующий инициирует HTTP-запрос:

GET http://victim.com/ HTTP/1.1
Host: attack.com 

Кэширующий модуль использует для ключа адрес узла из строки запроса (victim.com), однако модуль верификации использует для проверки связи между узлом и IP-адресом заголовок Host (attack.com). Это и делает атаку возможной.

Исследователь также опубликовал демонстрационное видео [3].

Подобную атаку можно провести удаленно, например с помощью Flash-рекламы. Поскольку Squid используют в качестве прозрачного прокси многие интернет-провайдеры, эксплуатация обнаруженной уязвимости может привести к серьезным последствиям.

Изначально разработчики Squid посчитали, что обнаруженная уязвимость повторяет ошибку, описанную в CVE-2009-0801. Однако китайский исследователь доказал, что новая атака не связана со старой уязвимостью. В случае CVE-2009-0801 злоумышленник мог осуществить атаку SOP bypass: эта ошибка была связана с некорректной обработкой IP-адреса узла назначения. Проблема была исправлена начиная с версии Squid 3.3. Новая же уязвимость заключается в несогласованной работе модуля проверки маршрутов и модуля кэширования Squid 3.5.

Как защититься

В настоящий момент уязвимость устранена, однако CVE до сих пор нет, как и официального патча в виде отдельной версии Squid. Исправление включено пока только в daily-сборки для версий 4 [4] и 3.5 [5].

Эксперты Positive Technologies рекомендуют включить опцию host_verify_strict [6], по умолчанию выключенную, а также использовать правило Suricata IDS для обнаружения попыток эксплуатации:

Автор: Positive Technologies

Источник [11]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/120107

Ссылки в тексте:

[1] Image: https://habrahabr.ru/company/pt/blog/283028/

[2] опасную уязвимость: http://bugs.squid-cache.org/show_bug.cgi?id=4501

[3] демонстрационное видео: https://drive.google.com/file/d/0ByM36MBckzBaQUFES0VYRlZydUE/view

[4] 4: http://www.squid-cache.org/Versions/v4/changesets/squid-4-14659.patch

[5] 3.5: http://www.squid-cache.org/Versions/v3/3.5/changesets/squid-3.5-14039.patch

[6] host_verify_strict: http://www.squid-cache.org/Doc/config/host_verify_strict/

[7] #Squid: https://twitter.com/hashtag/Squid?src=hash

[8] https://t.co/D3hSUmaqnv: https://t.co/D3hSUmaqnv

[9] #squoison: https://twitter.com/hashtag/squoison?src=hash

[10] 5 мая 2016 г.: https://twitter.com/AttackDetection/status/728237422643949569

[11] Источник: https://habrahabr.ru/post/283028/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best