PHP оказался подвержен критически опасной уязвимости

PHP оказался подвержен критически опасной уязвимости

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

Атака, связанная с выполнением кода, угрожает лишь тем PHP-сайтам, которые используют режим работы CGI (Common Gateway Interface), говорит Дариан Энтони Патрик, консультант по безопасности компании Criticode. Те же сайты, что используют PHP в режиме FastCGI не затронуты проблемой. Сейчас практически невозможно сказать, сколько именно сайтов оказались под ударом, так как они для проведения успешной атаки должны обладать еще несколькими критериями, в частности, иметь открытыми некоторые порты.

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

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

После взлома на многих из них размещаются ссылки на вредоносное ПО, а также ссылки на хакерские ресурсы в США и Китае для проведения Drive-By атак. Также известно, что в популярном наборе Metasploit для сканирования на уязвимости новая атака уже описана, что позволяет атаковать целевой сервер буквально одним нажатием кнопки.

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

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

Баги в ядре Linux скрываются в среднем 2 года, а иногда и 20 лет

История с первой CVE для Rust-кода в ядре Linux, которая недавно привела к падениям системы, выглядела почти как повод для оптимизма. В тот же день для кода на C зарегистрировали ещё 159 CVE — контраст показательный. Но новое исследование напоминает: проблема не только в языках программирования.

Гораздо тревожнее первой Linux-дыры в коде на Rust тот факт, что многие ошибки в ядре Linux могут годами, а иногда и десятилетиями оставаться незамеченными.

Исследовательница Дженни Гуанни Ку из компании Pebblebed проанализировала 125 183 бага за почти 20 лет развития ядра Linux — и результаты оказались, мягко говоря, неожиданными.

 

По данным исследования, средний баг в ядре Linux обнаруживают через 2,1 года после его появления. Но это ещё не предел. Самый «долгоиграющий» дефект — переполнение буфера в сетевом коде — прожил в ядре 20,7 года, прежде чем на него обратили внимание.

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

Исследование опирается на тег Fixes:, который используется в разработке ядра Linux. Когда разработчик исправляет ошибку, он указывает коммит, в котором баг был добавлен. Дженни написала инструмент, который прошёлся по git-истории ядра с 2005 года, сопоставил такие пары коммитов и вычислил, сколько времени баг оставался незамеченным.

В датасет вошли данные до версии Linux 6.19-rc3, охватывающие период с апреля 2005 по январь 2026 года. Всего — почти 120 тысяч уникальных исправлений от более чем 9 тысяч разработчиков.

Оказалось, что скорость обнаружения ошибок сильно зависит от подсистемы ядра:

  • CAN-драйверы — в среднем 4,2 года до обнаружения бага;
  • SCTP-стек — около 4 лет;
  • GPU-код — 1,4 года;
  • BPF — всего 1,1 года.

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

Отдельная проблема — неполные фиксы. Исследование показывает, что нередко разработчики закрывают проблему лишь частично. Например, в 2024 году был выпущен патч для проверки полей в netfilter, но уже через год исследователь нашёл способ его обойти.

Такие ситуации особенно опасны: создаётся ощущение, что проблема решена, хотя на самом деле она просто сменила форму.

RSS: Новости на портале Anti-Malware.ru