Безопасность и правоWindsurf Blog→ оригинал

Cognition выпустила плагин для агентов против дыр в PHP и Node.js с CVSS 9.2

Cognition, создатель Devin, выпустила open-source плагин Vulnerability Fixes для закрытия критических дыр в PHP и Node.js, раскрытых 21 октября 2026 года. Пара уязвимостей PHP2Shell (CVSS v4 9,2) даёт неаутентифицированное удалённое выполнение кода в любом веб-окружении PHP. Агент находит затронутые репозитории, спрашивает разрешение, патчит до проверенной версии, прогоняет тесты до и после и открывает по одному PR на репозиторий. По словам Cognition, дыры уже эксплуатируют автоматически. • Node.js: 10 CVE, четыре с рейтингом High, включая запись за границы буфера в декодере Brotli • Работает также в Claude Code, Codex, Cursor, Copilot и Gemini CLI через npx skills

AI-обработка оригинала Windsurf Blog; редакция Hamidun News
Cognition выпустила плагин для агентов против дыр в PHP и Node.js с CVSS 9.2
Источник: Windsurf Blog. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникWindsurf Blog ↗
Главный редактор
Node.js10 CVE, четыре с рейтингом High, включая запись за границы буфера в декодере Brotli
Ключевой факт #2Работает также в Claude Code, Codex, Cursor, Copilot и Gemini CLI через npx skills
PHPисправления в 8.2.35, 8.3.36, 8.4.27 и 8.5.12; для 7.4, 8.0 и 8.1 опубликованы только бэкпорты в исходниках

21 октября 2026 года вышли срочные обновления безопасности для PHP и Node.js, и обе истории про удалённое выполнение кода. В PHP закрыта пара уязвимостей PHP2Shell (CVE-2026-109618 и CVE-2026-109619) с оценкой CVSS v4 9,2, для которой не нужна аутентификация. В Node.js исправлены 10 CVE, четыре из них с рейтингом High. Cognition, компания за агентом Devin, утверждает, что дыры уже эксплуатируются автоматически, и выложила в открытый доступ плагин, который превращает кодинг-агента в исполнителя всего процесса патчинга.

Что именно сломано

PHP2Shell состоит из двух багов. Первый, CVE-2026-109618, это повреждение памяти после нехватки оперативной памяти. Второй, CVE-2026-109619, это устаревшее глобальное состояние, которое один запрос оставляет следующему. Под удар попадает любая веб-конфигурация PHP: PHP-FPM, php-cgi, FrankenPHP, LiteSpeed и Apache mod_php, у которого риск самый высокий.

В Node.js главная проблема, CVE-2026-111497: запись за пределы буфера в декодере Brotli, которая может привести к выполнению кода. Первыми стоит закрывать сервисы, смотрящие в интернет и распаковывающие Brotli: HTTP-клиенты, серверы и прокси. Ещё три High-уязвимости (CVE-2026-105482, CVE-2026-105483, CVE-2026-106069) связаны с TLS и проверкой имён хостов. Они опасны для сервисов, которые ходят на адреса, заданные пользователем.

  • PHP: исправления в 8.2.35, 8.3.36, 8.4.27 и 8.5.12; для 7.4, 8.0 и 8.1 опубликованы только бэкпорты в исходниках
  • Node.js: 22.23.4, 24.22.1 и 26.12.1
  • Node.js 20 и старше снят с поддержки, патчей не будет, а уязвимость остаётся; нужен переход на 22+
  • Релиз Node.js обновляет OpenSSL, c-ares, Undici, SQLite и хранилище CA: корневой сертификат eMudhra из него убран

Почему «просто обновить» не работает

PHP и Node.js прячутся в образах контейнеров, пакетах ОС, CI-пайплайнах, Helm-значениях, Terraform и Lambda-рантаймах, причём в десятках репозиториев. Каждое развёртывание надо найти, обновить, проверить и выкатить.

Есть ловушки. Debian и Ubuntu бэкпортируют исправления без смены версии апстрима: в Ubuntu 24.04 исправленный пакет называется 8.3.6-0ubuntu0.24.04.13, и `php -v` по-прежнему покажет 8.3.6. Проверять надо security-бюллетень вендора или changelog пакета. Образы, закреплённые по digest, требуют нового digest, а плавающие теги вроде php:8.3-fpm нужно пересобрать с новым базовым образом. Правка require.php или config.platform.php в Composer ничего не лечит: эти настройки не выбирают рантайм в продакшене.

Если обновиться сразу нельзя, PHP предлагает временные меры. Среди них session.upload_progress.enabled=0 с перезапуском всех воркеров и ограничение размера тела запроса и числа частей multipart на прокси. RLIMIT_AS и RLIMIT_DATA использовать нельзя: они сами запускают уязвимый путь кода.

Как работает плагин

Плагин Vulnerability Fixes собран из того процесса, которым Cognition чинила собственную инфраструктуру. Сначала агент делает инвентаризацию только на чтение: Dockerfile, базовые образы, пакеты, сборки из исходников, setup-php, setup-node, .nvmrc, Terraform, Packer, Ansible, Chef и Puppet. Затем он показывает таблицу и ждёт, какие репозитории вы разрешите трогать. Всё, что рискованнее смены патч-версии (minor- или major-апгрейд, смена базовой ОС, вероятные правки кода), он отмечает заранее.

Дальше агент сверяет теги, digest, версии пакетов и контрольные суммы с официальными реестрами, гоняет тесты на текущей версии как базовую линию, повторяет их в новом продакшен-образе и сравнивает рантаймы: расширения, ini-настройки, версии OpenSSL и ICU. На выходе один PR на репозиторий с версиями до и после, результатами тестов, меткой риска и планом выката и отката.

Плагин есть в Devin Marketplace, а также в виде стандартных Agent Skills для Claude Code, Codex, Cursor, Factory Droid, GitHub Copilot, Gemini CLI и OpenCode: `npx skills add CognitionAI/devin-vuln-fixes`. Скиллы выполняются с полными правами вашего агента, поэтому Cognition просит прочитать их перед запуском. Для сборки и тестов нужны git, shell, Docker и доступ к вашему реестру образов.

С чего начать сегодня

Cognition советует в первую очередь отключить публичные PHP-приложения, пока идёт патчинг: эксплуатация автоматизирована. Затем:

  • проверить версии по бюллетеню дистрибутива, а не по `php -v`
  • пересобрать образы с плавающими тегами и заменить digest у закреплённых
  • вынести Node 20 и старше в план миграции на 22+
  • рискованные PR выкатывать сначала на staging или canary
  • после merge передеплоить каждый сервис: исправление действует только в новой сборке

Агент проверит лишь то, что покрыто тестами, так что для слабо протестированных приложений PR прямо рекомендует staging. Управляемые рантаймы чинит провайдер, а вендорские аппаратные решения и Electron-приложения с вшитым PHP или Node агент только помечает для обновления от вендора.

В Cognition считают, что такие истории станут нормой: скорость поиска уязвимостей растёт, а атакующие автоматизируют цепочки эксплуатации с помощью ИИ. Компания рекомендует постоянно сканировать внешнюю поверхность атаки, переносить внутренние приложения за VPN или ZTNA, переходить на свежие рантаймы и контейнеры и отказаться от 30-дневных циклов патчинга. Директор по безопасности Алекс Стамос проведёт вебинар 26 октября в 10:30 по тихоокеанскому времени.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: что именно сломано?

PHP2Shell состоит из двух багов. Первый, CVE-2026-109618, это повреждение памяти после нехватки оперативной памяти. Второй, CVE-2026-109619, это устаревшее глобальное состояние, которое один запрос оставляет следующему. Под удар попадает любая веб-конфигурация PHP: PHP-FPM, php-cgi, FrankenPHP, LiteSpeed и Apache mod_php, у которого риск самый высокий. В Node.js главная проблема, CVE-2026-111497: запись за пределы буфера в декодере Brotli, которая может привести к выполнению кода. Первыми стоит закрывать сервисы, смотрящие в интернет и распаковывающие Brotli: HTTP-клиенты,

Что известно по теме: почему «просто обновить» не работает?

PHP и Node.js прячутся в образах контейнеров, пакетах ОС, CI-пайплайнах, Helm-значениях, Terraform и Lambda-рантаймах, причём в десятках репозиториев. Каждое развёртывание надо найти, обновить, проверить и выкатить. Есть ловушки. Debian и Ubuntu бэкпортируют исправления без смены версии апстрима: в Ubuntu 24.04 исправленный пакет называется 8.3.6-0ubuntu0.24.04.13, и `php -v` по-прежнему покажет 8.3.6. Проверять надо security-бюллетень вендора или changelog пакета. Образы, закреплённые по digest, требуют нового digest, а плавающие теги вроде php:8.3-fpm нужно пересобрать с

Что известно по теме: как работает плагин?

Плагин Vulnerability Fixes собран из того процесса, которым Cognition чинила собственную инфраструктуру. Сначала агент делает инвентаризацию только на чтение: Dockerfile, базовые образы, пакеты, сборки из исходников, setup-php, setup-node, .nvmrc, Terraform, Packer, Ansible, Chef и Puppet. Затем он показывает таблицу и ждёт, какие репозитории вы разрешите трогать. Всё, что рискованнее смены патч-версии (minor- или major-апгрейд, смена базовой ОС, вероятные правки кода), он отмечает заранее. Дальше агент сверяет теги, digest, версии пакетов и контрольные суммы с официальными

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Автономные AI-агенты

Делегируйте ресёрч, код и рутину автономному AI-агенту

Интеллектуальная агентная среда NomadNet Agent (agent.nomadnet.ai) выполняет многошаговые задачи: глубокий веб-ресёрч, анализ данных, написание кода и автоматизацию браузера.

Запустить NomadNet Agent →Платформа NomadNet AI
Что вы думаете?
Загружаем комментарии…