Разработчики PHP сообщили о двух критических уязвимостях с уровнем опасности 9,2 из 10. Они представляют серьёзную угрозу для сайтов и сервисов, использующих PHP, вне зависимости от используемого хостинг-провайдера.
Официальное раскрытие разработчиками PHP подробностей и выпуск исправлений запланированы на 21 октября, 17:00 по московскому времени.
Виртуальный хостинг и выделенные серверы под нашим администрированием
Безопасность ваших сайтов — наш приоритет. Поэтому мы уже сейчас принимаем превентивные меры, опираясь на доступную информацию об уязвимостях.
В частности:
- Ограничиваем работу механизма upload_progress в PHP.
- Планируем временно ограничить обработку POST-запросов типа multipart/form-data, которые обычно используются для загрузки файлов на сервер.
Эти меры направлены на снижение риска эксплуатации уязвимостей, однако до публикации официальных подробностей мы не можем гарантировать, что они полностью исключают угрозу.
Дополнительно рекомендуем вам:
Проверьте версию PHP, которую используют ваши сайты.
Если у вас используется PHP ниже 8.2, рекомендуем по возможности перейти на PHP 8.2 или новее, предварительно проверив совместимость сайта.
Дело в том, что официальные исправления будут выпущены только для поддерживаемых версий PHP — начиная с 8.2. Пока мы не можем гарантировать возможность обновления более старых версий или назвать сроки появления решения для них.
Наши рекомендации для владельцев облачных серверов
Если вы самостоятельно администрируете облачный сервер (VPS/VDS), рекомендуем дополнительно принять следующие меры безопасности:
- Обновите PHP до версии 8.2 или новее, предварительно убедившись в совместимости ваших сайтов и приложений.
- Временно ограничьте потенциально уязвимые механизмы PHP. Рекомендуем отключить session.upload_progress и по возможности ограничить обработку POST-запросов типа multipart/form-data, используемых для загрузки файлов. Перед применением ограничений учитывайте, что они могут повлиять на работу форм и других функций ваших сайтов.
- Установите официальные исправления безопасности сразу после их выхода. Следите за обновлениями PHP и своевременно применяйте патчи для используемой версии.
Обратите внимание, что перечисленные ограничения являются временными мерами снижения риска и не гарантируют полной защиты от уязвимостей. Полноценное устранение угрозы потребует установки официальных исправлений.
Как эти ограничения могут повлиять на сайты
Временно могут возникать проблемы с загрузкой файлов через сайты, работой отдельных форм и другими функциями, использующими соответствующие механизмы PHP.
Ограничения распространяются на виртуальный хостинг Beget и выделенные серверы под нашим администрированием.
Все ограничения носят временный характер. После выхода официальных исправлений мы в приоритетном порядке обновим поддерживаемые версии PHP и снимем ограничения, когда это станет безопасно.
Временные ограничения доступа к панелям управления облачными базами данных
В качестве дополнительной меры безопасности мы временно закрыли доступ к портам 80 и 443 для облачных баз данных. В связи с этим веб-интерфейсы управления базами данных Adminer (PostgreSQL) и phpMyAdmin (MySQL) будут временно недоступны.
Ограничение носит превентивный характер и будет снято после устранения угрозы безопасности.
Как обновить версию PHP
1. Виртуальный хостинг
- Авторизуйтесь в панели управления Beget.
- Перейдите в раздел «Сайты» → «Управление сайтами».
- Найдите нужный домен и нажмите на значок шестерёнки справа от него.
- В открывшихся настройках выберите версию PHP 8.2 или новее.
- Примените изменения и дождитесь обновления. Обычно это занимает до 10 минут.
- Проверьте работу сайта, включая формы, плагины и основные функции.
Если у вас несколько сайтов, проверьте версию PHP для каждого домена и поддомена отдельно.
Подробная инструкция: Как обновить PHP на виртуальном хостинге Beget.
2. Облачные серверы (VPS/VDS)
На облачных серверах Beget способ обновления PHP зависит от установленного программного обеспечения и панели управления.
Если используется ispmanager:
- Авторизуйтесь в панели управления ispmanager вашего сервера.
- Перейдите в раздел «Сайты».
- Выберите нужный сайт и нажмите «Изменить параметры сайта».
- В настройках PHP выберите версию 8.2 или новее. Если нужная версия отсутствует, предварительно установите её через инструменты управления PHP в ispmanager.
- Сохраните изменения и проверьте работу сайта.
Если используется FASTPANEL:
- Авторизуйтесь в панели FASTPANEL.
- Перейдите в раздел «Настройки» → «Приложения» и установите нужную версию PHP, если она ещё не установлена.
- Откройте карточку нужного сайта и перейдите в его настройки.
- Выберите новую версию PHP и сохраните изменения.
- Проверьте корректность работы сайта.
Если сервер настроен самостоятельно, без панели управления:
Обновление PHP выполняется через операционную систему сервера или используемую систему контейнеризации. Перед обновлением рекомендуем создать резервную копию, проверить совместимость приложения и уточнить порядок обновления для вашей конфигурации.
Обратите внимание: Владельцы проектов на VPS несут самостоятельную ответственность за обновление PHP.
Важно для всех услуг: переход на PHP 8.2 или новее сам по себе не гарантирует устранение уязвимости. Необходимо также установить официальное исправление безопасности после его выхода. Если ваш сайт несовместим с новой версией PHP, рекомендуем обратиться к разработчику сайта или CMS для адаптации.
Что будет дальше
Мы внимательно следим за ситуацией и готовимся к оперативной установке обновлений сразу после их публикации.
Наша первоочередная задача — обеспечить безопасность ваших сайтов и как можно скорее восстановить полноценную работу всех функций.
Подробнее об уязвимости: https://habr.com/ru/news/1097016/
Спасибо за понимание!