PHP (PHP: Hypertext Preprocessor) — это открытый серверный язык сценариев, который десятилетиями используется для создания динамических веб-страниц и приложений 1. По оценке компании Wiz, занимающейся кибербезопасностью, на PHP работает 70% сайтов в мире 1. Среди платформ, использующих этот язык, — Wikipedia, интернет-магазины и WordPress, на котором построено множество сайтов 1.

В октябре 2026 года PHP привлёк внимание не только как технология, но и как источник глобальной проблемы в сфере кибербезопасности. Исследователи обнаружили две уязвимости, которые затрагивают версии языка, выпущенные за последнее десятилетие 1. Им присвоены идентификаторы CVE-2026-109618 и CVE-2026-109619, а уровень серьёзности оценён в 9,2 из 10 1. Один из исследователей, Райан Остин из компании Calif, назвал эту уязвимость «самой серьёзной из когда-либо найденных им» 1.

Что такое PHP и где он применяется

PHP — это язык сценариев, встраиваемый в HTML, который выполняется на веб-сервере 2. Его основная задача — упростить разработчикам создание динамически генерируемых веб-страниц 2. PHP также предлагает встроенную интеграцию с различными системами управления базами данных, что делает написание страниц с поддержкой баз данных довольно простым 2. Чаще всего PHP используется как замена CGI-скриптов, а модуль mod_php позволяет веб-серверу Apache понимать и обрабатывать встроенный язык PHP в веб-страницах 2.

Язык развивается: в 2026 году актуальны версии PHP 8.5 (выпущена в ноябре 2025 года) и ожидается PHP 8.6 (ноябрь 2026 года) 3. Поддержка ветки PHP 8.2, согласно данным FreshPorts, прекращается 31 декабря 2026 года 5.

Уязвимость php2shell и реакция мирового сообщества

Обнаруженные уязвимости, получившие неофициальное название php2shell, по данным компаний Wiz и Calif, являются врождёнными для самого языка и затрагивают версии, выпущенные за последние десять лет 1. Исследователи предупредили, что при определённых условиях злоумышленники могут использовать эти ошибки для захвата контроля над уязвимыми веб-серверами и кражи конфиденциальных данных 1.

21 октября 2026 года оповещение об уязвимости нарушило работу сервисов по всему миру — от игровых платформ до правительственных порталов и онлайн-форумов 1. Wikimedia, организация, стоящая за онлайн-энциклопедией Wikipedia, в качестве меры предосторожности отключила ряд своих систем 1. Сайты и страницы также были временно отключены правительством Финляндии, советом Эдинбурга и некоторыми страницами BBC; агентство по кибербезопасности Нидерландов также отключило свой сайт 1. Правительство Великобритании сообщило, что 32 сайта были отключены в качестве меры предосторожности, хотя ни один из них не является крупным публичным сервисом 1. Французская телекоммуникационная компания Orange приостановила доступ к некоторым сервисам по всему миру на время установки исправлений безопасности 1. В Японии, по сообщениям местных СМИ, телекоммуникационный оператор SoftBank Corp временно приостановил рассылку экстренных оповещений о землетрясениях, цунами и других бедствиях 1.

PHP Foundation выпустила патчи для устранения уязвимостей в среду 1. «Всем пользователям PHP настоятельно рекомендуется немедленно обновиться», — говорится в заявлении организации 1. Агентство национальной безопасности США (NSA) рекомендовало всем организациям, использующим PHP, отключать системы, если нет возможности немедленно установить исправления, и отметило, что уязвимость может обеспечить «прямой путь» к эксплуатации базы данных системы 1. Аналогичные предупреждения выпустили ведомства ЕС, Сингапура и Австралии 1. Премьер-министр Японии Санаэ Такаити призвала граждан проверить, работают ли их публичные сайты на PHP 1.

На момент публикации сообщений о успешной эксплуатации уязвимости не поступало 1. Однако, как отметил исследователь Салил Канхере из Университета Нового Южного Уэльса в Сиднее, технические детали уязвимостей становятся общедоступными, поэтому в ближайшие недели вероятны новые попытки их эксплуатации 1.

Эволюция языка: от сценариев к современной типобезопасности

Несмотря на проблемы безопасности, PHP продолжает развиваться как язык программирования. В статье Себастьяна Бергманна, опубликованной на phpunit.expert, анализируется соответствие PHP 2026 года современным представлениям о дизайне языков 3. Автор отмечает, что замыкания в PHP лексически ограничены, причём захват переменных явный: function () use ($x) называет то, что захватывает, а стрелочная функция fn () => $x захватывает автоматически, но по значению 3. Начиная с PHP 8.1, любую функцию или метод можно превратить в замыкание с помощью синтаксиса callable-выражений первого класса 3. PHP 8.5 расширил замыкания до константных выражений и добавил оператор конвейера |> 3. PHP 8.6 завершает картину частичным применением функций: strlen(?) создаёт замыкание с «дырой», что вместе с |> даёт настоящую композицию функций 3.

Объектная система PHP описана как наиболее полная часть языка: перечисления, readonly-свойства, продвижение конструктора, хуки свойств и асимметричная видимость (PHP 8.4), clone with и final продвинутые свойства (PHP 8.5), расширенный атрибут #[\Override] для констант классов (PHP 8.6) 3.

Сопоставление с образцом пока оценивается в «полбалла»: match появился в PHP 8.0 и работает со значениями, но не со структурами 3. Предложение Pattern Matching RFC, находящееся в обсуждении, вводит оператор is для сравнения с образцом, включая типовые шаблоны, объектные шаблоны с привязкой переменных и формы массивов 3. Ожидается, что оно войдёт в PHP 8.7 в 2027 году 3.

Что касается параметрического полиморфизма (дженериков), то в самом языке PHP их нет, и недавнее предложение о поддержке стираемых обобщённых типов было отклонено для PHP 8.6 3. Причина отказа, как поясняет Джина Бэньярд, не в безразличии к дженерикам, а в возражении против стирания типов: все типовые объявления в PHP проверяются во время выполнения, и введение синтаксиса, который молча не проверяется, нарушило бы этот инвариант 3. Тем не менее, по словам автора, каждый нетривиальный код на PHP уже использует дженерики — в виде аннотаций в docblock, которые интерпретируются инструментами статического анализа, такими как PHPStan и Psalm, и проверяются в CI 3.

PHP и архитектура MVC: сравнение с JSP

Исследование, опубликованное в International Journal of Engineering Technology and Management Sciences, сравнивает реализацию архитектуры Model-View-Controller (MVC) на двух языках серверных сценариев — JavaServer Pages (JSP) и PHP 4. Авторы проанализировали более 10 000 открытых проектов, использующих JSP/Java и PHP, чтобы сопоставить, насколько языки подходят для паттерна MVC 4. Выводы показывают, что PHP в сочетании с фреймворком Laravel обеспечивает более быстрое начальное время разработки, тогда как JSP со Spring предоставляет более масштабируемость корпоративного уровня 4. Эти результаты могут помочь разработчикам сделать осознанный выбор между платформами для разработки клиент-серверных приложений на основе MVC 4.

Ограничения и что важно учитывать

Приведённые данные об уязвимости php2shell основаны на сообщениях BBC и могут быть неполными; на момент публикации не было подтверждённых случаев успешной эксплуатации 1. Оценка серьёзности в 9,2 из 10 и охват в 70% сайтов получены от компаний Wiz и Calif, участвовавших в обнаружении уязвимостей, что может вносить определённую предвзятость 1. Информация о версиях PHP и их поддержке взята из источников, которые могут обновляться; например, данные FreshPorts указывают на прекращение поддержки PHP 8.2 в конце 2026 года 5. Статья Себастьяна Бергманна отражает личный взгляд автора и его оценки, а не консенсус сообщества 3. Сравнительное исследование MVC основано на анализе открытых проектов и может не учитывать все аспекты промышленной разработки 4.

Что дальше

Владельцам сайтов и организациям, использующим PHP, следует проверить наличие обновлений и установить патчи, выпущенные PHP Foundation, а при невозможности — рассмотреть временное отключение систем, как рекомендует NSA 1. Разработчикам стоит следить за развитием PHP 8.6 и будущих версий: ожидается частичное применение функций, улучшения в сопоставлении с образцом и, возможно, новые подходы к типизации 3. Исследователям и инженерам предстоит оценить долгосрочные последствия инцидента для архитектуры веб-приложений и практик безопасности.