Уязвимость php-fpm

Разработчики 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;

Конечно же, вы всегда можете обратиться за помощью к нашим администраторам, они проверят подвержен ли ваш сервер уязвимости и по возможности выполнят обновление, либо предложат иное решение проблемы.


28 октября 2019

Вас может заинтересовать