Sploitus

Exploit for CVE-2021-41773

kitploit · 2026-08-25

Exploit Code

MARKDOWN18 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-HABIB0X0-CVE-2021-41773
# CVE-2021-41773

CVE-2021-41773 Согласно данным Национальной базы данных уязвимостей (NVD) CVE-2021-41773, Apache HTTP Server 2.4.49 уязвим для атак типа обхода пути и удалённого выполнения кода.

# Обход пути

Уязвимость обхода пути была внесена из-за нового изменения кода, добавленного для нормализации пути, т.е. для URL-путей, чтобы удалять нежелательные или опасные части из имени пути,

но его оказалось недостаточно для обнаружения различных техник кодирования символов обхода пути «dot-dot-slash (../)» Для предотвращения атак обхода пути функция нормализации, которая отвечает за разрешение URL-кодированных значений из запрошенного URI, обрабатывала значения Unicode по одному за раз. Поэтому, когда вторая точка кодируется как %2e, логика не распознаёт %2e как точку и не декодирует её; это превращает символы ../ в .%2e/ и обходит проверку.

Помимо обхода проверки пути, для того чтобы сервер Apache HTTP был уязвим, конфигурация HTTP-сервера должна либо содержать директиву directory для всей файловой системы сервера как Require all granted, либо директива directory должна полностью отсутствовать в файле конфигурации. Таким образом, обход проверки dot-dot как .%2e в сочетании с неправильно настроенной директивой directory позволяет атакующему читать произвольные файлы, например passwd, из файловой системы уязвимого сервера.

# Удалённое выполнение кода

Хотя CVE-2021-41773 изначально был задокументирован как уязвимость обхода пути и раскрытия файлов, дополнительные исследования показали, что эту уязвимость можно дополнительно использовать для удалённого выполнения кода, когда на сервере Apache HTTP включён модуль mod_cgi; это позволяет атакующему использовать уязвимость обхода пути и вызывать любой двоичный файл в системе с помощью HTTP POST-запросов.

# По умолчанию модуль mod_cgi