Шестого октября 2026 года команда SPIP выпустила ядро 4.4.27 и обновления двух плагинов. Crayons получил версию 3.5.0, Simple logs - 2.3.0. Поводом стали несколько уязвимостей, часть которых открывает путь к выполнению произвольного кода на сервере. Проходить аутентификацию для этого не нужно. Затронуты все версии ядра старее 4.4.27 и прежние выпуски обоих расширений. Сами разработчики называют найденные проблемы критическими.
Детали уязвимостей
SPIP - свободная система управления сайтом, которую выбирают госучреждения, университеты, редакции и некоммерческие организации. Во франкоязычном сегменте интернета на неё приходится заметная доля ресурсов публичного сектора. Поэтому уязвимости в платформе быстро выходят за рамки одного проекта. Многие площадки на SPIP обслуживают небольшие команды без выделенного специалиста по безопасности. Обновления там ставят редко, а между выходом исправления и его установкой проходят недели.
Отдельный повод для беспокойства - встроенный экран безопасности. Это механизм, который фильтрует подозрительные запросы и автоматически блокирует часть типовых атак. Разработчики указывают, что найденные бреши он не закрывает. Администратор, уверенный в обратном, может месяцами не ставить обновления и считать площадку защищённой. Здесь такая уверенность стоит дорого: речь идёт о выполнении кода, а не о мелких сбоях.
Плагин Crayons, отвечающий за правку страниц прямо из интерфейса, принёс сразу три проблемы. Одна связана с внедрением SQL-кода: посторонний запрос меняет логику обращения к базе. Другая допускает загрузку вредоносных документов без входа в систему. Третья разрешает менять поля в базе бесконтрольно, включая те, что в обычном режиме недоступны для редактирования. Слабые пароли удаётся восстановить, служебные признаки выдают пользователей, а свои права злоумышленник повышает до административных. Затем он достаёт секреты сайта и запускает собственный код на сервере.
Не меньше досталось простому плагину журналирования Simple logs. Он позволял читать и удалять любой файл установки. Из-за этого злоумышленник может переустановить площадку и создать учётную запись вебмастера, то есть администратора с полными правами. Тем же путём уходят конфигурационные файлы с доступами к базе и криптографическими ключами. Итог совпадает с предыдущим случаем: чужой код исполняется на сервере.
Само ядро тоже требовало вмешательства. В версии 4.4.27 закрыты выполнение кода до прохождения аутентификации, повышение привилегий, межсайтовый скриптинг, внедрение SQLite, анонимная загрузка HTML-файлов и восстановление секрета сайта. Секретом называют служебное значение, на котором держится подпись внутренних данных и часть механизмов сессий. Если оно утекает, проверки подлинности перестают что-либо значить. Злоумышленник может подделывать запросы от имени доверенных компонентов.
Расширения для SPIP пишут сторонние разработчики, чаще всего на общественных началах. Качество кода и скорость реакции на сообщения об ошибках у них различаются. Официальный выпуск ядра проходит внутреннюю проверку, а небольшой плагин способен годами не получать правок. Показательно, что проблемы обнаружились сразу в двух расширениях, а ядру потребовалось отдельное обновление.
Набор уязвимостей упрощает работу атакующего. Ни одна из описанных проблем не требует учётной записи или подготовительных шагов. Цель атакуется напрямую через веб-интерфейс. Типичный сценарий выглядит так. Злоумышленник загружает скрипт удалённого управления и закрепляется на сервере. Затем читает настройки и при необходимости подключается к базе данных. По отдельности каждая брешь уже даёт доступ, вместе они складываются в полный контроль над площадкой.
Для владельца сайта последствия не сводятся к технической поломке. Через такие уязвимости уходят учётные данные редакторов и подписчиков, а сам ресурс превращается в площадку для размещения постороннего содержимого. Бюджетным и образовательным организациям это грозит ещё и разбирательством с регулятором, если среди утекших сведений есть персональные данные. Установка исправления редко занимает больше часа, а разбор последствий растягивается на недели.
Обновление закрывает вопрос целиком. Ядро поднимают до 4.4.27, Crayons - до 3.5.0, Simple logs - до 2.3.0. Установить их можно через spip_loader версии 8.0.5, загрузчик обновлений публикуется на get.spip.net. Свежие версии плагинов разработчики называют обязательным дополнением к ядру, а не заменой ему. Версию 4.4.26 пропустили из-за мелкой ошибки, найденной в последний момент, поэтому такого номера не существует. Обновлённое ядро работает с PHP версий от 7.4 до 8.5.
После установки стоит навести порядок. Пароли администраторов меняют, список учётных записей проверяют, активные сессии сбрасывают. Часть уязвимостей связана с восстановлением служебных значений и слабых паролей, поэтому старые учётные данные разумно считать скомпрометированными. Полезно просмотреть журналы на предмет обращений к плагинам Crayons и Simple logs и убедиться, что в папках загрузок нет незнакомых документов. О находках сообщили исследователи 0xkidz, gaspard, Doston и Thomas Sanzey.
Плагины остаются самым слабым местом подобных платформ. Ядро обновляют по привычке, а расширения живут на сайте годами и внимания не получают. Здесь два плагина из общей экосистемы дали полный обход аутентификации и доступ к файлам. Регулярная инвентаризация расширений и проверка их версий значат для безопасности не меньше, чем своевременное обновление самого движка.
Ссылки
- https://blog.spip.net/Mise-a-jour-critique-de-securite-sortie-de-SPIP-4-4-27.html
- https://blog.spip.net/Mises-a-jour-de-securite-critique-plugins-Crayons-et-Simplog.html