Ваша корзина пуста

Критическая уязвимость PrestaShop CVE-2017-9841: выявление и исправление

31/10/2021

Уязвимость зарегистрирована под номером CVE-2017-9841 - является критической и позволяет выполнять произвольный код PHP на сервере через запрос HTTP POST к файлу eval-stdin.php, где в запросе данные начинаются с подстроки <?php. Файл eval-stdin.php поставлялся в ранних версиях PHPUnit и может присутствовать на старых сайтах (со старой PrestaShop и/или старыми модулями), поэтому для них уязвимость остаётся актуальной. Пример расположения такого файла: /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php.

Условия для удаленного выполнения команд на компьютере с уязвимой PrestaShop или модулями:

  1. Наличие файла eval-stdin.php и доступа к нему.
  2. Подходящие условия для успешной атаки, которые зависят от версии PHPUnit (версии файла eval-stdin.php) и конфигурации сервера.

Исправленные версии модулей, в которых известно, что была эта уязвимость:

  1. 1-Click upgrade: v4.10.1 (Разработчик: PrestaShop)
  2. Abandonment Cart Pro: v2.0.10 (Разработчик: PrestaShop)
  3. Faceted Search: v3.4.1 (Разработчик: PrestaShop)
  4. Merchant Expertise: v2.3.2 (Разработчик: PrestaShop)
  5. PrestaShop Checkout: v1.2.9 (Разработчик: PrestaShop)

Как исправить уязвимость:

  1. Если ваш сайт ещё не был подвергнут успешной атаке, то необходимо удалить все файлы eval-stdin.php из поддиректорий сайта и предусмотреть, чтобы этот файл не был снова загружен при обновлении какого-нибудь модуля.
  2. Удалить файл eval-stdin.php не достаточно, если злоумышленник уже загрузил свои скрипты на сайт или внёс исправления в исходные файлы сайта. В этом случае необходимо проверить все файлы сайта - сравнить их с файлами дистртибутива PrestaShop той же версии (туже проверку провести со всеми модулями), а также проверить файлы, которые существуют на вашем сайте, но отсутствуют в дистрибутивах.

Известные уязвимости, включая эту, вам поможет выявить бесплатный модуль «Инструмент для технического обслуживания». В сегодняшнем обновлении он стал использовать библиотечный код инструмента проверки уязвимостей.

Куда обратиться за исправлением проблемы? Вы можете воспользоваться услугой «Час работы программиста» или «Апгрейд PrestaShop до новейшей версии».

Чтобы быть в курсе проблем безопасности PrestaShop, подписывайтесь на новостную рассылку.

Все новости