Русскоязычное сообщество MODX Revolution

PHP2Shell: критические уязвимости PHP от 21 октября 2026

Краткая статья для тех, кто, на бронепоезде, как и я, зашёл в том числе и на профильный modx.pro в поисках практических рекомендаций для MODX помимо релизов PHP и сообщений провайдеров, собрал немного инфы и порядок действий.

Что же произошло

21 октября 2026 года были обнаружены, а следом и опубликованы исправления двух критических уязвимостей PHP CVE-2026-109618 и CVE-2026-109619, обе с оценкой 9,2 по CVSS v4.0. В кулуарах в ходу название PHP2Shell, возможное последствие: выполнение кода без авторизации с правами процесса PHP.

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

Парни из PHP относят к группе риска все установки, обслуживающие веб-запросы: PHP-FPM, Apache с mod_php, php-cgi, FrankenPHP и LiteSpeed. Поэтому нужен исправленный PHP.

Какие версии исправлены
Ветка / Релиз с исправлениями
8.2 / 8.2.35
8.3 / 8.3.36
8.4 / 8.4.27
8.5 /8.5.12

PHP 8.1 и старше больше не получают обычных обновлений от проекта PHP. Для этого инцидента команда предоставила минимальные исходные backport-патчи для 7.4, 8.0 и 8.1. Пользователям этих веток нужно уточнить наличие исправленной сборки, либо переходить на поддерживаемую ветку ну и с проверкой совместимости конечно.

У дистрибутивов номер может отличаться от таблицы. Например, для Ubuntu 24.04 исправленный пакет PHP 8.3 указан как 8.3.6-0ubuntu0.24.04.13. Поэтому смотрим полный номер пакета и бюллетень поставщика, а не только 8.3.x
Читать далее →

Проблемы с modx.pro и документацией.

Последние недели сайт периодически отваливался по таймауту, иногда вместе с соседними проектами на том же сервере. Разобрался. Коротко: за сутки к modx.pro приходит 428 тысяч запросов при живой аудитории меньше тысячи человек в неделю. Расскажу, кто их делает и что с этим сделано.

Читать далее →

MiniShop3 1.14.2 - срочный securiy релиз и важное исправление доступов.

Вышел MiniShop3 1.14.2-beta1 — восемь исправлений, из которых шесть про безопасность, а одно вообще не давало работать: в админке магазина не мог ничего сделать никто, кроме первого пользователя сайта. Если у вас магазином занимается не владелец, а отдельный человек — обновляйтесь не раздумывая.

Читать далее →

MiniShop3 1.14.0: доменные события и исходящие вебхуки

В MiniShop3 1.14.0-beta1 появился механизм доменных событий и контракт для подключения исходящих вебхуков. Он позволяет отделить бизнес-логику магазина от логики интеграций и предоставляет разработчикам дополнений отдельную точку расширения.

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

В этой статье рассмотрим, зачем нужен механизм, как он устроен в v1.14.0-beta1 и какие возможности уже реализованы.
Читать далее →

ИИ-чат внутри сайта, который работает с данными самого сайта, через gtsAPI.

ИИ-чат внутри сайта, который работает с данными самого сайта, через gtsAPI.
ИИ-чат внутри сайта на MODX, который работает с данными самого сайта, через gtsAPI. Отвечает на вопросы по таблицам, разбирает приложенные файлы и правит записи — но только с подтверждением и с кнопкой отката. Доступ к данным идёт через gtsAPI, поэтому потолком остаются права того пользователя, от чьего имени открыт чат: ИИ не может больше, чем человек. Для сводных цифр есть второй путь — SELECT к базе отдельным пользователем MySQL с правом только на чтение, он описан ниже.

Читать далее →

[Tickets] Версия 1.14.1-pl — последние комментарии и аннотация

Вышла Tickets 1.14.1-pl — патч к версии 1.14.0 от 12 июля.

Основная работа в этом релизе — над TicketLatest: ускорили выборку последних комментариев, убрали лишнее чтение содержимого тикетов и исправили ошибки SQL при включённом ONLY_FULL_GROUP_BY. Также добавили настройку длины автоматической аннотации, расширили параметры TicketForm и исправили несколько проблем, обнаруженных после предыдущего релиза.
Читать далее →

PageBuilder — визуальный конструктор страниц для MODX 3

PageBuilder — визуальный конструктор страниц для MODX 3


Собирайте страницы из готовых секций, редактируйте контент в удобном интерфейсе MODX и публикуйте изменения без перезаписи стандартного поля content.

PageBuilder превращает страницу MODX в структуру из независимых секций: первый экран, текст, карточки, преимущества, FAQ, отзывы, галерея, формы, товары и другие блоки.

Редактор работает в менеджере MODX, а вывод остаётся под контролем разработчика: каждая секция имеет собственную структуру данных и шаблон Fenom.
Читать далее →

EasyCookies - cookie-баннер, который знает про ваши счётчики

EasyCookies - cookie-баннер, который знает про ваши счётчики


Вот и последняя статья серии, в которой уже были modSizeControl, EasySettings и EasyFavicon. Как и обещал, представляю вашему вниманию компонент для баннера cookie. Причём не того баннера, который просто висит внизу страницы с кнопкой «Понятно», пока Метрика и Analytics уже давно всё записали, а такого, который сам решает, когда счётчикам можно работать.

Редактор профиля с превью баннера

Обычно всё выглядит так: находим скрипт баннера, вставляем в шаблон, пишем «Мы используем cookie», а коды счётчиков остаются там же, где и были. Посетитель жмёт «Отклонить», а Вебвизор в это время уже смотрит, как он это делает. Формально баннер есть, по факту — декорация.

В EasyCookies счётчики живут не в шаблоне, а в профиле баннера. Баннер сам их запускает, когда посетитель разрешил нужную категорию, а при отказе удаляет их cookie. В основе — отличная библиотека CookieConsent Ореста Биды, так что с внешним видом и доступностью всё в порядке.

Читать далее →