Обнаружение уязвимости в модулях Aspro для 1С-Битрикс
Недавние инциденты показали, что сайты, использующие модуль Aspro в CMS 1С-Битрикс, стали мишенью для атак. В основном риску подверглись владельцы ресурсов, которые не обновили Aspro до актуальной версии Next 1.9.9. Злоумышленники использовали уязвимости в скриптах, что позволило им удаленно исполнять произвольные команды на сервере.

Источники уязвимости
Атаки были организованы через следующие файлы:
-
/ajax/reload_basket_fly.php
-
/ajax/show_basket_fly.php
-
/ajax/show_basket_popup.php
-
/bitrix/wizards/aspro/max/site/public/ru/ajax/reload_basket_fly.php
-
/bitrix/wizards/aspro/max/site/public/ru/ajax/show_basket_fly.php
-
/bitrix/wizards/aspro/max/site/public/ru/ajax/show_basket_popup.php
Проблема заключалась в неправильной обработке пользовательских данных с использованием функции unserialize
, что позволяло внедрять вредоносные скрипты через POST-запросы.
Рекомендации по устранению уязвимости
Лучшее решение для защиты сайта — обновить шаблонные решения Aspro до последней версии. Это гарантирует полное устранение уязвимостей и обеспечит стабильную работу всех функций.
Патчер является быстрым и временным решением. Для оперативного исправления можно использовать официальный патчер от разработчиков ASPRO. Этот специальный скрипт автоматически находит и исправляет уязвимости, включая небезопасные реализации функции unserialize
.
Преимущества патчера:
-
Автоматически исправляет уязвимости во всех модулях
-
Разработан создателями платформы для гарантированной совместимости
-
Экономит время на ручное внесение изменений
Рекомендации по использованию:
-
Обязательно сделайте резервную копию сайта
-
Внимательно следуйте инструкции от разработчиков
-
После обновления проверьте работу ключевых функций сайта
Если обновление Aspro невозможно, рекомендуется заменить строку:
$arParams = unserialize(urldecode($_REQUEST["PARAMS"]));
на более безопасную версию:
$arParams = json_decode($_REQUEST["PARAMS"], true);
Дополнительно необходимо проверить следующие файлы:
-
/include/mainpage/comp_catalog_ajax.php
-
/bitrix/wizards/aspro/max/site/public/ru/include/mainpage/comp_catalog_ajax.php
Замените код:
$arGlobalFilter = unserialize(urldecode($_POST["GLOBAL_FILTER"]));
на:
$arGlobalFilter = unserialize(urldecode($_POST["GLOBAL_FILTER"]), ["allowed_classes" => false]);
Особое внимание стоит уделить файлу /bitrix/components/aspro/oneclickbuy.max/script.php.
В строке 797 замените:
$res = CSaleOrderProps::GetList(array(), array('@CODE' => unserialize($_POST["PROPERTIES"]), 'PERSON_TYPE_ID' =>$personType));
на:
$res = CSaleOrderProps::GetList(array(), array('@CODE' => unserialize($_POST["PROPERTIES"], ['allowed_classes' => false]), 'PERSON_TYPE_ID' =>$personType));
Как злоумышленники использовали уязвимость?
Основной целью атак было скрытое использование ресурсов для майнинга криптовалюты. Злоумышленники использовали уязвимости для загрузки вредоносных веб-шеллов, которые затем запускали майнеры и выполняли произвольные команды. Это обеспечивало им доступ к конфиденциальным данным и возможность управления сервером.

Признаки компрометации
Во время расследования были найдены вредоносные файлы, такие как:
-
3.php
-
4.php
Кроме того, были зафиксированы подозрительные IP-адреса, например:
-
185.125.219.93
Хэши этих файлов:
-
07a3fe9875d3a8b7c57874c4cc509929
-
50b7604d856f36983b9bb3066f894f3f
Для поиска этих файлов можно выполнить команду:
find /home/bitrix/www -type f -exec md5sum {} + | grep '^07a3fe9875d3a8b7c57874c4cc509929'
После того как подозрительные файлы будут обнаружены, их нужно удалить.
Также важно проверить папку /ajax/
на наличие PHP-файлов с случайными именами (например, комбинации цифр и букв).
Для проведения комплексной проверки выполните:
grep -rn "eval(base64" /home/bitrix/www
Все файлы, содержащие код eval(base64...)
, следует немедленно удалить.
Рекомендации по обеспечению безопасности
-
Остановите все подозрительные процессы и проверьте службы на сервере.
-
Обновите пароли для доступа к административной панели 1С-Битрикс.
-
Установите последние версии CMS и всех модулей.
-
Замените небезопасный код, используя
json_decode
вместоunserialize
. -
Проведите полный аудит файлов, чтобы убедиться в отсутствии вредоносных скриптов.
Действия разработчиков
Компания Aspro оперативно выпустила исправления для устранения уязвимости и предоставила скрипт для автоматической очистки заражённых файлов. Все владельцы пострадавших сайтов были уведомлены.
Если ваш интернет-магазин был атакован, мы готовы предоставить помощь в следующих областях:
-
Очистка от вредоносных программ.
-
Анализ логов для нахождения источника взлома.
-
Настройка защиты для 1С-Битрикс.
Не откладывайте защиту вашего сайта
Заходи в наш Telegram-канал
Перейти