Новая атака на кеш Nginx позволяет красть данные и ломать сайты

Новая атака на кеш Nginx позволяет красть данные и ломать сайты

Новая атака на кеш Nginx позволяет красть данные и ломать сайты

Исследователь YesWeHack Алекс Брумен описал вектор кибератаки Cache Key Injection. В случае её эксплуатации последствия для потенциальной жертвы опасные: обход контроля доступа, раскрытие закрытых страниц, отказ в обслуживании и при определённых условиях.

Как объясняет исследователь YesWeHack, проблема возникает не в Nginx по умолчанию, а в конфигурациях, где администраторы просто склеивают несколько значений переменной длины без разделителей. Например:

$scheme$host$request_uri$http_accept

Разных запроса два, а итоговая строка может получиться одна. Так, запрос к /h с заголовком Accept: ome*/* создаёт тот же ключ, что и обычное обращение к /home с Accept: */*.

Если атакующий успеет первым положить в кеш ответ 404, пользователи вместо главной страницы будут получать ошибку до очистки записи. Получается CPDoS — отказ в обслуживании с доставкой прямо из кеша.

 

Ещё веселее становится с закрытыми разделами. В лабораторном примере страница /admin была доступна только с localhost, но злоумышленник мог обратиться к /ad и перенести оставшуюся часть имени в соседний компонент ключа. Nginx видел разрешённый путь, однако доставал из кеша содержимое админ-панели.

При совпадении нескольких условий техника позволяет столкнуть HTTP- и HTTPS-запросы и записать в кеш страницу со ссылкой на атакующий JavaScript, превратив ошибку конфигурации в stored XSS. Даже Cloudflare не всегда спасёт: заголовок Authorization может провести запрос мимо его кеша прямо к уязвимому кешу Nginx.

 

Защита выглядит до смешного просто: не склеивать значения вслепую. Между элементами ключа нужны разделители или структурное кодирование, например:

$scheme|$host|$request_uri|$http_accept

Также следует проверять Host, перенаправлять HTTP на HTTPS и не кешировать аутентифицированные запросы.

Подпишитесь на новости

Windows 11 научилась стирать данные перед переустановкой

Microsoft прокачала облачное восстановление Windows 11: теперь Cloud rebuild умеет не только переустанавливать систему, но и предварительно зачищать накопители. Опция пригодится тем, кто собирается продать, вернуть работодателю или отправить компьютер на переработку и не хочет дарить новому владельцу бонус в виде старых документов и фотографий.

Cloud rebuild загружает из Windows Update чистый образ операционной системы и необходимые драйверы.

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

В экспериментальной сборке Windows 11 Insider Preview 26340.9502 появились два режима: «Удалить файлы» (Remove files) и Удалить и зачистить (Remove & sanitize files). Первый удаляет файлы и переустанавливает ОС, но теоретически оставляет шанс восстановить часть данных, пока они не перезаписаны.

 

Второй вариант действует жёстче: Windows обращается к накопителю и запускает поддерживаемую им процедуру безопасного удаления. После этого восстановить информацию должно стать значительно сложнее.

Правда, Microsoft предусмотрительно не обещает магии и формулирует результат именно как гораздо более трудное восстановлени», а не полную невозможность.

Есть и подвох. Эффективность очистки зависит от конкретного SSD или другого накопителя: он должен поддерживать нужную команду и правильно её выполнять. Windows может запросить удаление и получить отчёт об успехе, но лично проверить каждый стёртый бит система не способна.

Microsoft представила обновлённый Cloud rebuild в экспериментальном канале Windows Insider. Там же появилась возможность удалённо запускать восстановление через Recovery CSP — полезная штука для корпоративных администраторов.

Пока обычным пользователям новая зачистка недоступна. Если тестирование пройдёт без сюрпризов, функция позднее может добраться до стабильных версий Windows 11.

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