Серверы Apache подвержены утечке памяти — уязвимости, которой злоумышленник теоретически может воспользоваться и узнать секреты, переданные в ходе сессии. Однако риск такой атаки высок лишь при совместном хостинге и в том случае, если Apache запущен с определенными, редко используемыми настройками.

Подробности новой уязвимости, нареченной Optionsbleed по аналогии с Heartbleed и другими багами слива данных из памяти, в понедельник раскрыл Ханно Бёк (Hanno Böck). В своей блог-записи исследователь отметил, что эксплойт в данном случае можно осуществить отправкой http-запроса OPTIONS, который обычно возвращает заголовок Allow со списком поддерживаемых методов. Как оказалось, из-за ошибки в конфигурации сервера этот ответ может выглядеть, как поврежденные данные, и при этом содержать информацию, оставшуюся в памяти текущего процесса после выполнения других запросов.

Комментируя эту уязвимость для Threatpost, Ианн Илавик (Yann Ylavic) из комитета по управлению Apache HTTP Server Project подчеркнул, что риск в данном случае незначителен, так как использование данной бреши грозит утечкой лишь пары байтов, да и то при определенных условиях. По словам Илавика, на настоящий момент свидетельств раскрытия конфиденциальной информации нет.

Патч для уязвимости в Apache уже выпущен, как и для ряда дистрибутивов Linux. «Исправление уже загружено в наш репозиторий заготовок («upstream») и будет включено в ближайший релиз, — сообщил собеседник Threatpost. — Многие из наших пользователей полагаются на сторонние сборки и техподдержку. Обычно они обращаются к вендорам дистрибутивов  Linux».

Бёк относит обнаруженную им проблему к классу use-after-free («использование освобожденной памяти»). Со слов Илавика, она легко воспроизводится в уязвимых системах. Однако Бёк насчитал лишь 466 проблемных хостов из 1 млн топовых сайтов списка Alexa.

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

Бёк пишет, что с его подачи разработчик Apache Джейкоб Чэмпион (Jacob Champion) попытался разобраться в проблеме и установил, что виной всему директива Limit, позволяющая ограничить доступ к http-методам, разрешив его лишь конкретному пользователю. «Искажение происходит, если через файл .htaccess задать в директиве Limit ограничение для не зарегистрированного повсеместно http-метода, — поясняет Бёк. — Настройка Limit на любой недействительный http-метод через .htaccess влечет ошибку use-after-free при создании заголовка Allow».

По мнению Джеффа Уильямса (Jeff Williams), технического директора и соучредителя Contrast Security, попытка эксплойта данной уязвимости будет слишком заметной, ее легко обнаружить и пресечь. «Похоже, в этом случае сливаются лишь несколько битов данных, поэтому пользы от такой атаки немного, — говорит эксперт. — И потом, проблема актуальна лишь для 400 с небольшим серверов из 1 млн топовых. Это значительно сокращает возможности для атаки. Уязвимости присвоено громкое имя — OptionsBleed, и она интересна, но чисто теоретический. Нам с вами она не опасна. Просто обновите сервер и забудьте».

По свидетельству Илавика, у большинства пользователей установка патча проблем не вызовет: «Пользователи средней и большой величины обычно имеют архитектуру или процедуру для выполнения техобслуживания с сохранением непрерывности рабочих процессов. Малые предприятия, с одним сервером и без балансировки внешней нагрузки, могут сделать короткий, но плановый перерыв на техобслуживание. Исправление также предусматривает запрет на опасные настройки, поэтому некоторым пользователям, возможно, придется привести в соответствие свою конфигурацию (если это вообще потребуется)».

Категории: Уязвимости