Разработчики PHP выпустили корректирующие релизы PHP 7.3.11, 7.1.33 и 7.2.24, в которых устранена критическая уязвимость (CVE-2019-11043) в расширении PHP-FPM (менеджер процессов FastCGI), позволяющая удалённо выполнить свой код в системе. Для атаки на серверы, использующие для запуска PHP-скриптов PHP-FPM в связке с Nginx, уже публично доступен рабочий эксплоит.
Как проверить сервер на уязвимость?
Для проверки достаточно уточнить используете ли вы для работы PHP-FPM и версию интерпретатора PHP. Если версия PHP ниже, чем 7.3.11, 7.1.33 и 7.2.24, ваш сервер подвержен уязвимости.
Пример уязвимой конфигурации
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass php:9000;
}
Что делать?
Лучший вариант - обновить PHP до последних версий, если у вас Redhat-based дистрибутив, сделать это можно с помощью команды
yum update php
Если вы используете Debian или Ubuntu, команды для обновления будут другими
apt-get update
apt install php
К сожалению, не все разработчики популярных дистрибутивов уже выпустили пакеты с обновлениями.
В качестве обходного решения можно использовать проверку существования запрошенного php-скрипта после строки "fastcgi_split_path_info" в конфигурации nginx, например, такую
try_files $fastcgi_script_name =404;
Конечно же, вы всегда можете обратиться за помощью к нашим администраторам, они проверят подвержен ли ваш сервер уязвимости и по возможности выполнят обновление, либо предложат иное решение проблемы.