Главный редактор

PHP-апокалипсис: как две критические ошибки в веб-технологиях чуть не парализовали интернет.

В среду разработанная несколько десятилетий назад веб-технология с открытым исходным кодом под названием PHP едва не обрушила интернет из-за двух уязвимостей, которые годами оставались незамеченными, пока исследователи недавно не нашли способ их использовать.

PHP-апокалипсис: как две критические ошибки в веб-технологиях чуть не парализовали интернет.

Эти уязвимости получили название PHP2Shell и официально обозначены как CVE-2026-109618 и CVE-2026-109619 . Проще говоря, эти уязвимости позволяют любому, кто знает, как их использовать, взломать онлайн-систему, работающую на PHP, например, веб-сайт или сервер, доступный из интернета, без необходимости ввода пароля для доступа или изменения данных.

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

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

Благодаря многонедельным закулисным переговорам и тщательной координации действий в отрасли, миру пока в целом удавалось избегать массовых атак в интернете. Начиная со среды, правительства начали призывать граждан и компании, владеющие веб-сайтами, принять меры для снижения рисков для своих систем. Широкий спектр отраслей закрыл свои веб-сайты и отключил сервисы для обновления своих систем. Банки, розничные торговцы, игровые сайты, интернет-магазины, больницы и некоторые государственные учреждения отключили свои серверы, чтобы предотвратить атаки.

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

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

Что случилось?

Специалисты по безопасности из Калифорнийского университета обнаружили две ошибки в PHP, языке программирования, широко используемом во всем мире для создания веб-сайтов и веб-приложений как в интернете, так и локально в корпоративных сетях, таких как интрасети и внутренние сайты.

PHP — это язык с открытым исходным кодом, то есть он бесплатен и доступен для использования любым пользователем практически по любой причине. Благодаря этому он стал одним из самых популярных и широко используемых языков веб-программирования в современном интернете.

Эти две уязвимости были впервые обнаружены в 2024 году, но тогда они не считались эксплуатируемыми и не были исправлены. Недавно исследователи в области безопасности нашли способ их использовать, что побудило их уведомить разработчиков программного обеспечения о необходимости их исправления. 

Власти Калифорнии уведомили PHP Foundation, которая начала процесс исправления ошибок и скоординированного раскрытия информации. Фонд сделал это, предоставив информацию и исправления о проблемах безопасности под строгим эмбарго — по сути, сохраняя конфиденциальность до определенного срока — чтобы дать крупным компаниям возможность опередить события и установить исправления.

Почему эти ошибки вызывают такую ​​серьезную обеспокоенность?

PHP2Shell — это довольно серьёзная уязвимость, поскольку её можно использовать удалённо через интернет, без необходимости переходить по ссылкам или открывать файлы. Это называется удалённым выполнением кода , и это один из наиболее опасных типов уязвимостей, поскольку он может предоставить хакеру в любой точке мира фактически полный контроль над заражённой и незащищённой системой.

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

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

Почему пострадало 70% веб-сайтов?

Эти ошибки особенно опасны, потому что PHP — чрезвычайно популярное программное обеспечение, отчасти потому, что оно бесплатное и относительно простое в использовании, а также потому, что существует уже несколько десятилетий. Около 70% веб-пространства, доступного пользователям, основано на PHP, хотя его использование постепенно сокращается с годами в пользу более новых и безопасных языков программирования.

Учитывая его популярность, некоторые из самых известных в мире веб-сайтов работают на веб-программном обеспечении, использующем PHP, например, WordPress , а также Drupal, Joomla и MediaWiki, на котором работает гигантская онлайн-энциклопедия Wikipedia.

PHP — лишь одна из многих устаревших, но функциональных технологий, переживших волны интернета и поколения, которые теперь настолько распространены, что сродни клею, скрепляющему большую часть интернета. Зачастую эти инструменты разрабатываются разработчиками открытого исходного кода, которые не получают за свою работу вознаграждения и, следовательно, не могут позволить себе независимые проверки безопасности — но при этом на них по-прежнему широко полагаются компании, не вносящие финансового вклада в эти проекты.

Использовался ли искусственный интеллект для обнаружения ошибок?

Специалистам по безопасности из Калифорнийского университета приписывают обнаружение этих ошибок в начале этого года в рамках аудита безопасности кода PHP. Калифорнийский университет участвовал в инициативе Hack the Planet, организованной компанией OpenAI, занимающейся разработкой моделей искусственного интеллекта, и гигантом облачной безопасности Wiz, которые впоследствии подтвердили работоспособность эксплойтов, созданных Калифорнийским университетом.

В статье Calif (с комиксами — отлично, посмотрите ) исследователи объяснили, что ИИ использовался для помощи в эксплуатации уязвимости, но основная часть работы основывалась на знаниях, которыми исследователи уже обладали, а именно на том, что они хорошо знали кодовую базу PHP и историю эксплуатации уязвимостей.

«Ни одна модель не способна просто так выявить „все ошибки“ с помощью простых подсказок. По крайней мере, пока», — написал Калиф.

Почему уязвимости были использованы злоумышленниками ещё до их раскрытия?

Несмотря на попытки скрыть подробности об ошибках до среды, похоже, что до выпуска патчей имела место некоторая эксплуатация PHP2Shell.

Компания Amazon, обладающая огромными возможностями для отслеживания онлайн-угроз благодаря своим размерам и масштабам, сообщила в своем блоге , что обнаружила эксплуатацию уязвимости PHP2Shell примерно за неделю до выхода патчей для PHP, предполагая, что кто-то где-то знал, как использовать эти уязвимости, еще до того, как их подробности стали широко доступны. Amazon заявила, что неясно, как хакер узнал об уязвимостях, но призвала специалистов по защите от киберугроз искать признаки эксплуатации уже с 17 октября.

Существует несколько теорий относительно того, что произошло. После исправления ошибки детали исправления могут сразу стать очевидными, особенно если код — как в случае с PHP — является открытым исходным кодом, что делает его общедоступным и поддающимся проверке. Эксплуатация таких ошибок может быть непростой задачей, но знание того, где находится ошибка и как она была исправлена, позволяет злоумышленникам понять, на что следует нацелиться и как разрабатывать эксплойты.

Вполне возможно, что во время эмбарго произошла утечка информации или сбой в коммуникации. Сообщество разработчиков открытого программного обеспечения огромно, и контроль над информацией таким образом основан на добросовестности. 

Также возможно, что хакеры обнаружили уязвимости заранее, либо самостоятельно, либо в результате шпионажа.

Фонд PHP обвинил одну компанию в том, что она выпустила патчи за несколько часов до окончания периода эмбарго, что могло дать некоторым злоумышленникам преимущество, если бы они получили информацию о патче раньше других. Но это не объясняет активность, зафиксированную Amazon в течение недели.

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

Однако, по данным Trail of Bits , к вечеру пятницы появились работающие эксплойты .

Значительная часть интернета отключалась, но затем возобновляет работу. Удалось ли нам избежать худшего?

Пока еще рано делать выводы, но обнадеживает тот факт, что признаков массовой эксплуатации пока нет, — однако мы еще не вышли из опасной зоны.

Мэтью Принс, генеральный директор компании Cloudflare, гиганта в области сетевой безопасности и мониторинга, которая также располагает телеметрическими данными для значительной части интернета, заявил на этой неделе , что после обнаружения уязвимостей наблюдается экспоненциальный рост числа попыток их использования. Это дает некоторое представление о том, как быстро злоумышленники стремятся использовать эти недостатки в своих целях.

PHP используется не только на веб-серверах, но и в инструментах разработчика, пакетах командной строки и терминала, а также в других программных компонентах, применяемых маршрутизаторами, устройствами хранения данных и корпоративными устройствами безопасности, такими как межсетевые экраны и VPN. 

В будущем следует ожидать эксплуатации уязвимости PHP2Shell, поскольку небольшие ИТ-команды и разработчики-одиночки могут медленнее обновлять программное обеспечение. Также наступит период, когда различным компаниям, которые используют PHP в своих продуктах и ​​программном обеспечении, также потребуется обновление.

По мере обновления всё большего количества устройств и систем поверхность атаки со временем будет уменьшаться. Однако последствия этих уязвимостей могут ощущаться ещё долгие годы, особенно в устаревших системах, для которых нет возможности обновления.

Повторится ли это снова?

Это был один из тех редких случаев остановки интернета, которые я наблюдал за время своей работы в качестве репортера по вопросам безопасности. В 2016 году масштабный ботнет завалил интернет-реестр Dyn мусорным трафиком, что привело к остановке работы многих ведущих веб-сервисов. В 2017 году Северная Корея использовала просочившиеся в сеть инструменты для взлома, предоставленные правительством США, чтобы заразить систему здравоохранения Великобритании программой-вымогателем. А в 2024 году неисправное обновление CrowdStrike вызвало масштабный глобальный сбой, в результате которого большинство компьютеров под управлением Windows по всему миру одновременно вышли из строя.

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

PHP, как и другие языки программирования и технологии веб-разработки прошлых десятилетий, являются «небезопасными с точки зрения памяти», что означает, что их можно атаковать с помощью целого класса уязвимостей, которые могут привести к утечке или раскрытию конфиденциальных данных из памяти программного обеспечения. Агентство национальной безопасности утверждает, что около 75% всех активно используемых уязвимостей связаны с недостатками памяти, то есть хакеры используют их очень часто.

Это способствовало переходу к использованию языков, безопасных с точки зрения использования памяти, таких как Python, Rust и Swift, которые нельзя использовать в тех же целях, что и уязвимости, связанные с памятью. Таким образом, эти языки в целом защищены от широкого спектра уязвимостей, которые всё ещё встречаются в их предшественниках.

Но это по-прежнему означает, что целая часть интернета работает на множестве технологий, таких как PHP, медиа- и видеокодеки, библиотеки сжатия и другое программное обеспечение, разработанное десятилетия назад, — и их поломка будет иметь колоссальные последствия для остальной части сети.

avatar
Главный редактор

0 комментариев