В Magento обнаружена уязвимость, которая затрагивает 200000 интернет-магазинов

Эксперты из компании DefenseCode рассказали о серьезной уязвимости в открытой платформе для веб-ресурсов электронной коммерции Magento Community Edition.

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

Уязвимость присутствует во всех версиях Magento Community Edition до 2.1.6 включительно. Эксперты сообщили разработчикам о проблеме еще в ноябре минувшего года. С того момента были выпущены четыре обновления, так и не устранившие уязвимость. Пока что специалисты не фиксировали случаев использования этой проблемы. Как утверждают эксперты, также уязвимость может использоваться в коммерческой версии Magento Enterprise, так как обе платформы базируются на идентичном уязвимом исходном коде.

Источником существования уязвимости является функция Magento Community Edition, которая позволяет администраторам внедрять в описание продукции изображение-preview со ссылкой на видеоролик, размещенный на сайте Vimeo. Если веб-адрес изображения указывает на другой файл, появится сообщение об ошибке, однако приложение все же загрузит объект, чтобы проверить его. Если файл не представляет из себя изображение, то приложение предупредит пользователя о том, что файл имеет неверный формат, однако не удалит его.

Чтобы выполнить произвольный код, хакер должен сначала провести загрузку конфигурационного файла .htaccess, который дает разрешение на запуск PHP, и затем вредоносного PHP-скрипта.

Эту уязвимость нельзя использовать напрямую, поскольку функционал подключения видео требует прохождения процедуры аутентификации. Хакер должен иметь аккаунт на целевом сайте, при этом для взлома необязательно располагать правами администратора.