В baserCMS 5.2.3 найдена связка из двух уязвимостей — CVE-2026-21861 и CVE-2026-30877, обе с оценкой CVSS 9.1 (CRITICAL). Значение POST-параметра без фильтрации попадает в exec().
Представьте: админ нажимает «Обновить ядро», а браузер отправляет запрос, где путь к PHP-бинарнику подставляется прямо в shell-команду. Ни escapeshellarg(), ни allowlist, ни regex. Спецсимволы ;, |, && и $() проходят без фильтрации — подставляем php;id и получаем выполнение произвольных команд.
🔹 Scope: Changed — атака выходит за пределы приложения на уровень ОС
🔹 Чтение DB-credentials, SSH-ключей и API-токенов, запись шелла в webroot, reverse shell и pivot к внутренним сетям
🔹 CSRF не спасёт: у атакующего с легитимной admin-сессией токен валиден, а endpoint доступен через curl
CISA уже подтвердила концептуальный PoC. Если используете baserCMS — немедленно обновляйтесь до 5.2.3: оба CVE закрыты одним релизом.
Цепочка эксплуатации, правила детекта для WAF, SoC и SIEM, разбор CVSS-вектора — в статье: https://codeby.net/threads/cve-2026-21861-basercms-uyazvimost-os-command-injection-cherez-funktsiyu-obnovleniya-yadra.94977/