CVE-2026-72710 в Debian: RCE в SPIP, уязвимые версии и защита

CVE: CVE-2026-72710
Продукт: Debian
Дата публикации: 11.09.2026
Критичность: CRITICAL
CVSS: 9.3 (4.0)
EPSS: 0,59%; процентиль 46,55%
CISA KEV: нет подтверждения в каталоге CISA KEV

Краткое описание​


Уязвимость CVE-2026-72710 позволяет атакующему с валидным nonce внедрить вредоносные записи в очередь задач SPIP, что приводит к удаленному выполнению произвольного PHP-кода. В Debian проблема устранена в версиях 4.4.18+dfsg-1 и выше для всех поддерживаемых релизов. Статья описывает механику атаки, затронутые версии пакетов и способы проверки исправления.

Основные характеристики​


Риск представляет собой удаленное выполнение кода (RCE) через инъекцию в очередь фоновых задач CMS SPIP. Атакующий не требует прав администратора, но должен обладать валидным nonce для действия editer_objet.

  • Тип ошибки: CWE-915 (Uncontrolled Map Deserialization). Система десериализует данные без проверки допустимости содержимого.
  • CVSS 4.0: 9.3 (CRITICAL). Вектор: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X. Высокая оценка отражает сетевой доступ, низкую сложность и полное нарушение конфиденциальности, целостности и доступности.
  • Условия атаки: Требуется валидный nonce. Аутентификация не требуется (PR:N), но наличие nonce ограничивает круг потенциальных атакующих до тех, кто может получить или подделать этот токен.
  • Эксплуатация: Подтверждена публичным техническим описанием. В каталоге CISA KEV CVE-2026-72710 не числится.
  • EPSS: 0,59% (процентиль 46,55%). Вероятность эксплуатации в ближайшие 30 дней оценивается как низкая, но не нулевая.

Какие продукты и версии затронуты​


В Debian уязвимость затрагивает пакет spip во всех поддерживаемых и нестабильных ветках до применения исправлений.

  • forky (testing): Исправлено в версии 4.4.18+dfsg-1. В репозитории forky доступна версия 4.4.23+dfsg-1.
  • sid (unstable): Исправлено в версии 4.4.18+dfsg-1. В репозитории sid доступна версия 4.4.23+dfsg-1.
  • trixie (stable): Исправлено в версии 4.4.19+dfsg-0+deb13u1. В репозитории trixie доступна версия 4.4.21+dfsg-0+deb13u1, в trixie-security4.4.23+dfsg-0+deb13u1.

Все перечисленные релизы имеют статус resolved. Официальный трекер Debian подтверждает устранение уязвимости в указанных версиях.

Причина уязвимости​


Причина уязвимости кроется в обработке параметра arg в действии editer_objet. Система разрешает имена SQL-таблиц на основе пользовательского ввода, не применяя белый список допустимых редактируемых колонок.

Это позволяет атакующему указать arg=job/0, что приводит к записи данных в таблицу spip_jobs. Поля fonction и args в этой записи контролируются атакующим. Когда фоновая очередь задач (cron) обрабатывает эту запись, система выполняет десериализацию и вызов указанных PHP-функций без проверки их безопасности.

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

Как работает атака​


Атака начинается с получения валидного nonce для действия editer_objet. Атакующий отправляет запрос с параметром arg=job/0 и специально сформированными значениями полей fonction и args.

Эти значения сохраняются в таблице spip_jobs как новая запись задачи. Механизм cron в SPIP периодически опрашивает эту таблицу. При обработке записи система извлекает значения fonction и args, десериализует их и вызывает соответствующую PHP-функцию.

Поскольку атакующий контролирует имя функции и аргументы, он может вызвать произвольный код, доступный в окружении PHP. Это приводит к удаленному выполнению кода (RCE) на сервере.

Условия успешной эксплуатации​


Для успешной эксплуатации уязвимости необходимо выполнить следующие условия:

  • Наличие валидного nonce для действия editer_objet. Без него запрос будет отклонен системой безопасности SPIP.
  • Доступ к серверу, где установлена уязвимая версия SPIP (до 4.4.18).
  • Функционирование фоновой очереди задач (cron), которая обрабатывает записи из таблицы spip_jobs. Если cron отключен, внедренный код не будет выполнен.
  • Отсутствие дополнительных механизмов защиты, блокирующих десериализацию произвольных функций или ограничивающих доступ к таблице spip_jobs.

Возможный сценарий атаки​


Атакующий получает валидный nonce, например, через XSS или утечку сессии. Он формирует HTTP-запрос к уязвимому действию editer_objet с параметром arg=job/0.

В теле запроса он указывает fonction как имя вредоносной PHP-функции (например, system или exec) и args как аргументы для этой функции (например, команду для создания веб-шелла). Запрос проходит проверку nonce и записывает данные в spip_jobs.

Через некоторое время cron-задача SPIP считывает эту запись, десериализует данные и вызывает указанную функцию. В результате на сервере выполняется произвольная команда, и атакующий получает контроль над системой.

Есть ли публичный эксплойт​


Публичное техническое описание уязвимости доступно в блоге исследователя. Документация SPIP подтверждает выпуск критического обновления 4.4.18. В каталоге CISA KEV CVE-2026-72710 не числится, что означает отсутствие подтвержденных случаев массового использования в реальных атаках на момент публикации данных.

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

Признаки эксплуатации​


Специфичные IOC для CVE-2026-72710 не опубликованы в доступных источниках. Для обнаружения атаки рекомендуется использовать общие неспецифичные точки контроля:

  • Аномальные записи в таблице spip_jobs с подозрительными значениями в полях fonction и args.
  • Необычная активность в PHP-процессах, вызывающих внешние команды или создающих файлы в директориях веб-сервера.
  • Запросы к действию editer_objet с параметром arg=job/0 в веб-журналах.
  • Новые файлы с расширением .php в каталогах, где их не должно быть.

Как обнаружить атаку​


Для обнаружения атаки следует анализировать логи веб-сервера и базы данных. В веб-журналах ищите запросы к editer_objet с параметром arg=job/0.

В базе данных SPIP проверяйте таблицу spip_jobs на наличие записей с подозрительными значениями в полях fonction и args. Особое внимание уделяйте записям, созданным в короткие промежутки времени или с аномальным содержимым.

Мониторинг процессов PHP на выполнение внешних команд (например, system, exec, shell_exec) также поможет выявить активность, связанную с эксплуатацией уязвимости.

Как проверить свою версию​


Для проверки версии установленного пакета spip в Debian используйте следующие команды:

Bash:
cat /etc/debian_version
cat /etc/os-release
apt-cache policy spip
dpkg-query -W -f='${Package} ${Version}\n' spip

Замените <имя-пакета> на spip в командах apt-cache policy и dpkg-query. Сравните полученную версию с исправленными версиями из раздела «Какие продукты и версии затронуты». Если версия ниже 4.4.18+dfsg-1 (для forky/sid) или 4.4.19+dfsg-0+deb13u1 (для trixie), система уязвима.

Исправление​


Единственный надежный способ устранения уязвимости — обновление пакета spip до исправленной версии.

  • Для forky и sid: обновите пакет до версии 4.4.18+dfsg-1 или выше. В репозиториях доступны версии 4.4.23+dfsg-1.
  • Для trixie: обновите пакет до версии 4.4.19+dfsg-0+deb13u1 или выше. В репозитории trixie-security доступна версия 4.4.23+dfsg-0+deb13u1.

Выполните обновление через стандартные средства Debian:

Bash:
apt update
apt upgrade spip

После обновления перезапустите веб-сервер и фоновые задачи SPIP для применения изменений.

Временные меры защиты​


Пока обновление не установлено, можно применить временные меры:

  • Ограничьте доступ к действию editer_objet на уровне веб-сервера (например, через правила в nginx или Apache), блокируя запросы с параметром arg=job/0.
  • Отключите фоновую очередь задач (cron) SPIP, если это допустимо для бизнес-процессов. Это предотвратит выполнение внедренного кода.
  • Усильте мониторинг таблицы spip_jobs и удаляйте подозрительные записи вручную.
  • Ограничьте доступ к базе данных SPIP, если это возможно, чтобы предотвратить прямую запись в spip_jobs.

Как проверить устранение уязвимости​


После обновления пакета spip выполните следующие шаги для проверки исправления:

  1. Проверьте версию пакета:

    Bash:
    dpkg-query -W -f='${Package} ${Version}\n' spip

    Убедитесь, что версия соответствует или превышает исправленную версию для вашего релиза Debian.
  2. Проверьте, что в таблице spip_jobs нет записей с подозрительными значениями в полях fonction и args.
  3. Проведите тестовый запрос к действию editer_objet с параметром arg=job/0 и убедитесь, что система отклоняет его или не позволяет внедрить вредоносные данные.
  4. Проверьте логи веб-сервера и PHP на наличие ошибок, связанных с десериализацией или выполнением кода.

Вывод​


CVE-2026-72710 представляет серьезную угрозу для систем, использующих SPIP до версии 4.4.18. Уязвимость позволяет атакующему с валидным nonce выполнить произвольный PHP-код через инъекцию в очередь фоновых задач.

В Debian проблема устранена в актуальных версиях пакета spip для всех поддерживаемых релизов. Администраторам следует незамедлительно обновить пакет и проверить систему на признаки эксплуатации.

Официальные источники​


  1. NVD — CVE-2026-72710
  2. Debian Security Tracker — CVE-2026-72710
  3. FIRST EPSS — CVE-2026-72710

История обновлений статьи​


  • 14.09.2026 — Опубликована первая версия материала.
 
Назад
Верх Низ