Недавно стало известно, что обнаружил новый вектор атаки на http-сервер Apache, который остался без исправлений в обновлении 2.4.50 и разрешает доступ к файлам из областей за пределами корневого каталога сайта.
Кроме того, исследователи нашли способ, при наличии определенных конфигураций нестандартный, не только читать системные файлы, но и запускать удаленно ваш код на сервере.
CVE-2021-41773 на Apache HTTP Server 2.4.50 было недостаточно. Злоумышленник может использовать атаку обхода пути для сопоставления URL-адресов с файлами вне каталогов, настроенных с помощью директив, аналогичных псевдонимам. Если файлы вне этих каталогов не защищены обычными настройками по умолчанию «требовать все отклонено», эти запросы могут быть успешными. Если для этих патчей с псевдонимами также включены сценарии CGI, это может позволить удаленное выполнение кода. Эта проблема затрагивает только Apache 2.4.49 и Apache 2.4.50, но не более ранние версии.
В сущности, новая проблема (уже указана как CVE-2021-42013) она полностью похожа на исходную уязвимость (CVE-2021-41773) в 2.4.49, единственная разница в другой кодировке символов.
И это, в частности, в версии 2.4.50 возможность использования последовательности "% 2e" была заблокирована закодировать точку, но дае потеряли возможность двойного кодирования: При указании последовательности «%% 32% 65» сервер декодируется в «% 2e», а затем в «.», То есть символы «../» для перехода в предыдущий каталог могут быть закодированы как «. %% 32% 65 / ».
Обе CVE на самом деле представляют собой почти одну и ту же уязвимость обхода пути (второе - неполное исправление для первого). Обход пути работает только с отображенным URI (например, через директивы Apache «Alias» или «ScriptAlias»). Одного DocumentRoot недостаточно
Что касается эксплуатации уязвимости через выполнение кода, это возможно, если включен mod_cgi и используется базовый путь, в котором разрешено выполнение сценариев CGI (например, если включена директива ScriptAlias или в директиве Options указан флаг ExecCGI).
Упоминается, что предварительным условием для успешной атаки также является явное предоставление в конфигурации Apache доступа к каталогам с исполняемыми файлами, например / bin, или доступ к корню FS "/". Поскольку такой доступ обычно не предоставляется, атака с использованием кода малоэффективна для реальных систем.
Эксплойт RCE для Apache 2.4.49 (CVE-2021-41773) и 2.4.50 (CVE-2021-42013):
корень @ CT406: ~ # curl 'http://192.168.0.191/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.% % 32% 65 / bin / sh '–data' echo Content-Type: text / plain; выбросил; идти '
uid = 1 (демон) gid = 1 (демон) группы = 1 (демон)- ☠ Роман Медина-Хейгл Эрнандес (@roman_soft) 7 октября 2021
Al mismo tiempo, атака на получение содержимого файла произвольные системные коды и исходные тексты веб-скриптов, доступны для чтения пользователем под которым запущен http-сервер, по-прежнему актуален. Для проведения такой атаки просто создайте каталог на сайте, настроенный с помощью директив «Alias» или «ScriptAlias» (DocumentRoot недостаточно), например, «cgi-bin».
В дополнение к этому он упоминает, что проблема в основном затрагивает постоянно обновляемые дистрибутивы (Rolling Releases), такие как Fedora, Arch Linux и Gentoo, а также порты FreeBSD.
В то время как дистрибутивы Linux, основанные на стабильных ветвях серверных дистрибутивов, таких как Debian, RHEL, Ubuntu и SUSE, не уязвимы. Проблема не возникает, если доступ к каталогам явно запрещен с помощью параметра «требовать все запрещено».
Также стоит отметить, что 6-7 октября Cloudflare зафиксировал более 300 XNUMX попыток эксплуатации уязвимости. CVE-2021-41773 в день. В большинстве случаев в результате автоматических атак они запрашивают содержимое «/cgi-bin/.%2e/.git/config», «/cgi-bin/.%2e/app/etc/local.xml. "," /Cgi-bin/.% 2e / app / etc / env.php "и" /cgi-bin/.%2e/%2e%2e/%2e%2e/etc/passwd ".
Проблема проявляется только в версиях 2.4.49 и 2.4.50, предыдущие версии уязвимости не затрагиваются. Для исправления нового варианта уязвимости был быстро сформирован выпуск Apache httpd 2.4.51.
В конце концов Если вам интересно узнать об этом больше, вы можете проверить детали По следующей ссылке.