В популярном языке программирования PHP выявлена серьезная уязвимость

Изображение: (cc) TheDigitalArtist
Информационная безопасность
Информационная безопасность

Уязвимость, позволяющая обойти ограничения, заданные в файле настроек языка, обнаружена в интерпретаторе языка программирования PHP обнаружена группой исследователей безопасности. Сценарий для автоматизации эксплуатации уязвимости (эксплойт) выложен 6 октября на хранилище программных проектов GitHub.

Способ обхода ограничений, заданных в файле php.ini с помощью директивы «disable_functions», работает во всех версиях PHP, начиная с 7.0. В версиях 5.* работа уязвимости также возможно, но требует изменения сценария автоматизации.

Уязвимость позволяет обойти, например, такие ограничения, как запрет на вызов внешних программ, открытие файла и другие. Эксплойт написан на том же языке PHP. Используемая эксплойтом уязвимость известна уже 10 лет. Разработчики языка когда-то посчитали ее несущественной, теперь же ее использовали для серьезного нарушения ограничений безопасности.

Эксплойт был протестирован авторами с версиями PHP 7.0–8.0 на операционных системах Linux Debian, Ubuntu и CentOS, а также Unix FreeBSD в режимах подключения интерпретатора FPM и CLI, а также в формате модуля «php_module» для веб-сервера Apache2.