HTTP-метод OPTIONS может привести к утечке памяти Apache-сервера

HTTP-метод OPTIONS может привести к утечке памяти Apache-сервера

HTTP-метод OPTIONS может привести к утечке памяти Apache-сервера

Эксперт обнаружил ошибку при обработки HTTP-метода OPTIONS в Apache, она получила имя Optionsbleed. Такого рода уязвимости могут способствовать тому, что произвольные фрагменты памяти попадут в руки злоумышленников.

Исследователь определил уязвимый продукт с помощью HTTP-метода OPTIONS, отправляя его серверам. Серверы отвечали поврежденными заголовками, отображающими параметры конфигурации Apache. Затем, поскольку сам эксперт не мог воспроизвести похожую проблему на своих серверах Apache, он связался с их командой безопасности.

К счастью, разработчик Apache Джейкоб Чемпион (Jacob Champion) вник в суть проблемы и объяснил, что происходит. Оказалось, что Apache поддерживает директиву конфигурации Limit, которая позволяет ограничить доступ к определенным HTTP-методам конкретному пользователю. В том случае, если вы устанавливаете директиву Limit в файле .htaccess для HTTP-метода, который не зарегистрирован глобально на сервере, тогда происходит ошибка.

После этих объяснений эксперт смог сам воспроизвести уязвимость.

В сущности, Optionsbleed представляет собой ошибку, которая вызывает формирование поврежденного заголовка Allow в ответ на запросы HTTP OPTIONS. Это может привести к утечке части произвольной памяти из серверного процесса, который может содержать важные данные.

Ошибка появляется, если веб-мастер пытается использовать директиву Limit с недопустимым методом HTTP.

Пример .htaccess:

<Limit abcxyz>

</ Limit>

Если вы используете веб-сервер Apache, вам следует его обновить. Большинство дистрибутивов должны к настоящему времени иметь обновленные пакеты, содержащие патч. Кроме того, исправление можно найти здесь (для Apache 2.2 здесь).

К сожалению, команда безопасности Apache не назвала точные сроки выпуска испарвлений.

Контроллер памяти AMD научили обходить аппаратную изоляцию

Исследователь Кристофер Домас опубликовал PoC-проект skitter-creek-bath-salts, демонстрирующий обход аппаратной защиты памяти на процессорах AMD Family 16h. Техника манипулирует настройками контроллера DRAM и позволяет обращаться к областям, которые должны быть недоступны даже операционной системе, ядру и коду с привилегиями ring 0.

Обычно программные и аппаратные механизмы контролируют доступ по физическим адресам.

Но последнюю точку в маршруте ставит контроллер памяти: он переводит адрес в конкретные координаты DRAM — канал, ранг, банк, строку и столбец.

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

 

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

Для поиска адресов-двойников проект использует линейную алгебру и SMT-решатель Z3. Инструменты восстанавливают связь между обычным и изменённым отображением памяти, после чего вычисляют алиас для защищённой области.

Исследователь продемонстрировал потенциальный доступ к памяти AMD Platform Security Processor, включая данные fTPM, защищённой области System Management Mode, состояниям процессора C6 и хранилищу микрокода. Последний сценарий допускает не только извлечение копии патча, но и её возможное изменение перед восстановлением состояния ядра.

PoC проверяли только на AMD Family 16h. Данных об аналогичной уязвимости в новых AMD, Intel, ARM или RISC-V нет.

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