Исследователи безопасности из Sansec раскрыли критическую уязвимость, получившую название "PolyShell", в REST API платформ Magento и Adobe Commerce. Эта уязвимость позволяет неавторизованным злоумышленникам загружать произвольные исполняемые файлы на уязвимые серверы, открывая путь к удаленному выполнению кода (RCE) и полному захвату учетных записей. Эта уязвимость, которая находится в механизме загрузки файлов для пользовательских опций товара, затрагивает все версии Magento Open Source и Adobe Commerce вплоть до предрелизной версии 2.4.9-alpha2 включительно. Хотя в настоящее время нет доказательств активной эксплуатации, серьезность ошибки требует немедленного внимания администраторов популярной платформы электронной коммерции.
Техническая причина уязвимости PolyShell заключается в том, как REST API Magento обрабатывает опции товара типа 'file'. Когда товар настроен на прием загрузки файлов в качестве пользовательской опции, API обрабатывает встроенный объект `file_info`, содержащий данные файла в кодировке base64, тип MIME и имя файла. Затем система записывает этот файл в предсказуемое место на сервере: `pub/media/custom_options/quote/`. Критический провал заключается в том, что этот механизм выполняет недостаточную проверку, позволяя злоумышленникам маскировать вредоносные скрипты — такие как PHP-веб-шеллы — под безобидные файлы изображений, манипулируя типом MIME. Воздействие двойное: если сервер настроен на выполнение PHP-файлов из этого каталога загрузки, это напрямую приводит к RCE. В качестве альтернативы, если загруженный файл содержит вредоносный JavaScript, это может способствовать атакам с использованием хранимого межсайтового скриптинга (XSS), позволяя перехватывать сессии и захватывать учетные записи, когда администратор просматривает файл.
Adobe устранила уязвимость в предрелизной ветке для версии 2.4.9 в рамках бюллетеня безопасности APSB25-94. Однако остается значительная проблема: для текущих производственных версий (2.4.8 и более ранних) нет изолированного патча безопасности. Sansec отмечает, что хотя Adobe предоставляет пример конфигурации веб-сервера — например, правила блокировки выполнения в каталоге загрузки, — который может снизить риск, подавляющее большинство интернет-магазинов полагаются на пользовательские конфигурации от своих хостинг-провайдеров, которые могут не применять эти ограничения. Компания подчеркивает, что простое блокирование веб-доступа к каталогу загрузки не предотвращает сами загрузки; без специализированного правила межсетевого экрана веб-приложений (WAF) злоумышленники все равно могут размещать вредоносные полезные нагрузки на сервере.
В свете угрозы PolyShell Sansec рекомендует администраторам магазинов немедленно принять защитные меры. Основная мера — внедрить строгую серверную проверку для всех загрузок файлов, отклоняя любые файлы с исполняемыми расширениями или несоответствующими типами MIME. Администраторам также следует пересмотреть и усилить конфигурацию своего веб-сервера, чтобы явно запретить выполнение скриптов (таких как .php, .phtml) из каталога `pub/media/custom_options/` и его подкаталогов. Это предупреждение появляется на фоне отдельной активной кампании, задокументированной Netcraft, в рамках которой злоумышленники с конца февраля 2026 года взламывают и дефейсят тысячи сайтов Magento, загружая текстовые файлы в веб-каталоги. Этот контекст подчеркивает постоянное таргетирование экосистемы Magento и критическую необходимость надежной гигиены безопасности, включая своевременное применение официальных патчей, когда они становятся доступны.



