Информация об атаке

Tag
CVE-2017-9841
Date
2024-10-22
Client IP
117.186.238.82
Client GEO
china 
Vendor
PHPUnit 
Product
PHPUnit < 4.8.28 and 5.x < 5.6.3 
RAW request
GET /V2/vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php HTTP/1.0
User-Agent: Custom-AsyncHttpClient
Host: ████████████
Content-Type: text/plain
Content-Length: 33
X-Forwarded-For: ██████████████
Accept: */*
Upgrade-Insecure-Requests: 1
Connection: close

<?php echo(md5("Hello PHPUnit"));
Description

CVE-2017-9841 - это критическая уязвимость в PHPUnit, широко используемом фреймворке для тестирования PHP, которая позволяет удаленным злоумышленникам выполнять произвольный PHP-код на уязвимых веб-сайтах. Уязвимость обнаружена в файле Util/PHP/eval-stdin.php версий PHPUnit до 4.8.28 и 5.x до 5.6.3. Злоумышленники могут эксплуатировать эту уязвимость, отправляя данные HTTP POST, начинающиеся с подстроки "<?php", которые затем выполняются сервером. Это может привести к полному удаленному выполнению кода, позволяя злоумышленникам взять под контроль затронутый сервер.

Эта уязвимость активно эксплуатируется, особенно для атак на сайты Drupal. Злоумышленники могут использовать эту уязвимость для установки вредоносного ПО, дефейса веб-сайтов, кражи конфиденциальной информации и выполнения других вредоносных действий. Критическая природа этой уязвимости подчеркивается ее высоким баллом CVSS 9.8, что указывает на серьезное потенциальное воздействие на конфиденциальность, целостность и доступность затронутых систем.

Уязвимость была впервые исправлена в ноябре 2016 года, с исправленными версиями 4.8.28 и 5.6.3. Однако многие системы остаются уязвимыми из-за устаревшего программного обеспечения или остатков уязвимого кода на серверах. Например, наличие файла eval-stdin.php, ссылающегося на обертку php://input вместо обертки php://stdin, указывает на уязвимую систему.

Различные организации в области кибербезопасности, включая OVHcloud, Tenable и FortiGuard Labs, предоставили рекомендации и инструменты для обнаружения и смягчения этой уязвимости. Эксплойты для CVE-2017-9841 были опубликованы на таких платформах, как Exploit Database и GitHub, что облегчает злоумышленникам атаку на незащищенные системы. Поэтому крайне важно, чтобы организации проверяли свои системы и применяли необходимые патчи для снижения риска, связанного с этой уязвимостью.

Mitigations
  1. Обновите PHPUnit: Убедитесь, что вы используете версию PHPUnit 4.8.28 или более позднюю, или 5.6.3 или более позднюю. Это основной шаг для смягчения уязвимости.
  2. Удалите уязвимые файлы: Проверьте ваш сервер на наличие файла eval-stdin.php. Если он существует и ссылается на обертку php://input, немедленно удалите его.
  3. Блокируйте доступ к уязвимым путям: Настройте ваш веб-сервер для блокировки доступа к папке /vendor или любым другим путям, которые могут раскрывать файлы PHPUnit в интернет.
  4. Используйте инструменты безопасности: Используйте инструменты безопасности и плагины, предоставляемые компаниями в области кибербезопасности, такими как Tenable, для сканирования и выявления уязвимых экземпляров PHPUnit в вашей инфраструктуре.
  5. Мониторинг и аудит: Регулярно мониторьте ваши системы на предмет признаков эксплуатации и проводите аудит вашего кода, чтобы убедиться, что не осталось остатков уязвимого кода.
  6. Обучение и тренировки: Обучите ваши команды разработчиков и ИТ-специалистов рискам, связанным с этой уязвимостью, и важности своевременного обновления программного обеспечения.