В популярном WAF ModSecurity (libModSecurity) обнаружена уязвимость CVE-2024-1019 с уровенем 8.6 (ВЫСОКИЙ) по CVSS 3.1, позволяющая произвести обход защиты. Уязвимость возникает из-за декодирования символов URL-адреса в запросе до определения компонента пути URL-адреса запроса и дополнительного компонента строки запроса. Передавая символ %3F
в URL-адресе, ModSecurity производит декодирование и ошибочно интерпретирует ?
как символ отделения URL-адреса от строки запроса.
Информация представлена в ознакомительных целях, не нарушайте законодательство
Пример обхода:
example.com/admin/id/1%3F+OR+1=1--
Применение техники обхода основано на использовании переменных REQUEST_FILENAME
(относительный URI, исключая строку запроса, например, /admin/index.php
) и REQUEST_BASENAME
(только часть с именем файла, например index.php
) при обработке запроса.
После декодирования символа %3F
значения переменных REQUEST_FILENAME
и REQUEST_BASENAME
будут определены как:
REQUEST_FILENAME: /admin/id/1 REQUEST_BASENAME: 1
Обработка запроса правилами, основанными на обработке значений этих переменных, не позволит выявить признаки атаки. Уязвимости подвержены версии компонента от 3.0.0
до 3.0.11
.
Для устранения уязвимости рекомендуется произвести обновление компонента до актуальной версии.