Уязвимость нулевого дня в Magento и Adobe Commerce устанавливает бэкдоры в магазины без аутентификации
🔥 Уязвимость нулевого дня в Magento и Adobe Commerce устанавливает бэкдоры в магазины без аутентификации
В ночь на 5 сентября Sansec зафиксировала эксплуатацию уязвимости нулевого дня в Magento Open Source и Adobe Commerce, по данным hackernews. Уязвимость, названная StyleSmuggler, позволяет удалённо выполнять код без входа в систему и устанавливает постоянный бэкдор. Затронуты все версии вплоть до 2.4.9. Adobe на 6 сентября не выпустила ни CVE, ни патча, ни обходного решения. Первый пострадавший использовал 2.4.6-p15 с июльскими и августовскими обновлениями — последней версии. Патчи не спасли.
Атака двухэтапная. Сначала отравляется файл, который Magento пишет сам: var/report/ или var/log/system.log. Затем через стандартное письмо «Payment Transaction Failed Reminder» код выполняется при обработке, даже если доставка не удалась. Вредоносный модуль маскируется под ядерный поток [kworker/u:8:0], лежит в ~/.local/share/.gvfsd/gvfsd-user и перезапускается кроном каждые пять минут. Disrex подтвердила: на одном магазине вредоносный модуль не устанавливал исходящих соединений, держал 28 подключений к Redis и читал сессии. На другом — 1728 одинаковых строк в cron.
Средства обнаружения не сработали. eComscan Sansec на пропатченном магазине с Shield ничего не нашёл: сканер смотрел в корневой каталог сайта, а вредоносный модуль был уровнем выше, в домашнем каталоге. Disrex насчитала 26 IP-адресов источников: два хостинг-провайдера и резидентные прокси с 2–6 запросами. Индикаторы меняются: сначала X_TRACE_, потом X-TRACE- с шестнадцатеричным кодированием. Блокировка одного IP-адреса из бюллетеня Sansec остановила бы меньше четверти трафика. Нужны средства обнаружения на уровне хоста.
Пока нет патча. Sansec советует отключить GraphQL, но магазины без пользовательского интерфейса и PWA-магазины без него не работают. Disrex опубликовала правила, но они проверяют только строку запроса, пропуская POST и тело JSON. Временные меры: disable_functions для proc_open и noexec на /tmp, /var/tmp, /dev/shm. Это ограничивает текущую кампанию, а не закрывает уязвимость.
Мой вывод: уязвимость нулевого дня в электронной коммерции превращает управление обновлениями в иллюзию. Я бы смотрел не на версии, а на процессы с подозрительными именами, крон-задачи и файлы в домашних каталогах. Поставщик молчит, а в магазины уже устанавливают бэкдоры.
#Magento #AdobeCommerce #ZeroDay #RCE #Backdoor
Такие разборы выходят в канале каждый день — коротко и со ссылкой на первоисточник.