Нужна помощь после заражения? Если сайт уже взломан или в нём обнаружен вредоносный код, поможет удаление вирусов на 1С-Битрикс с проверкой и восстановлением безопасности.
В начале 2025 года началась новая волна вирусов на CMS 1С-Битрикс, особенно на сайтах, использующих шаблоны Аспро. Самый простой способ избавиться от вирусов — обновить ядро и шаблон, но не все готовы тратить деньги на обновления из-за вирусов, и их можно понять.
В данной статье мы разберем, как справиться с новой волной вирусов на 1С-Битрикс и шаблонах Аспро:
Первое, что нужно сделать, — найти все вирусные файлы и удалить их. Их достаточно легко опознать: они либо лежат в папках с рандомным набором букв и цифр, либо у самого файла название такого вида. Внутри самого файла, как правило, нечитаемый код, начинающийся с “eval(“, “/-qN00@V: `-/error_reporting(0);” или “base64_decode” (это не все варианты).
Скачиваем и устанавливаем модуль bitrix. xscan
Для того чтобы не искать это все вручную, можно воспользоваться инструментом 1С-Битрикс: “Настройки” -> “Проактивная защита” -> “Поиск троянов” -> “Сканирование файлов”. Однако этот вариант подойдет, если вы обновляли ядро 1С-Битрикс после 2023-07-03. Если же у вас версия постарее, предлагаю скачать и установить модуль поиска троянов по ссылке ниже.
Ссылка на модуль bitrix. xscan
Архив распаковать в директорию “/bitrix/modules” после чего в настройках админке появится пункт “bitrix. xscan”
Советую в строке “Начальный путь” указать папку на две директории выше корня сайта, так как сайты могут появляться выше корня сайта.
После того как проверите сайт, удалите подозрительные файлы (поиск троянов также указывает на файлы, которые не являются вирусными, так что будьте осторожны при удалении, и не забудьте сделать бэкап).
Исправление файлов “Аспро”
После чистки можно приступать к латанию дыр в шаблонах Аспро.
Переходим в файлы /ajax/show_basket_popup. php, /ajax/show_basket_fly. php и /ajax/reload_basket_fly. php и меняем:
$arParams = unserialize(urldecode($_REQUEST["PARAMS"]));
на
$arParams = unserialize(urldecode($_REQUEST["PARAMS"]), ["allowed_classes" => false]);
Также похожий код есть в /include/mainpage/comp_catalog_ajax. php, там его тоже меняем.
Удаляем файлы: /ajax/error_log_logic. php, /ajax/js_error. php, /ajax/js_error. txt.
В файлах /form/index. php и /ajax/form. php замените строку:
elseif($form_id == 'TABLES_SIZE'):
на
elseif($form_id == 'TABLES_SIZE' && false):
На этом всё. Бывает, что в корне index. php появляется код, который перезаписывается после удаления. В этом случае нужно перезагрузить сервер. Также нужно проверить наличие вредоносных агентов в “Настройки” -> “Настройки продукта” -> “Агенты”. Они тоже имеют набор рандомных цифр и букв, если таковые есть, то удаляем.
Полезные материалы и услуги по теме
План проверки сайта после заражения
Очистка сайта не заканчивается удалением одного подозрительного файла. Если оставить уязвимый модуль, слабый пароль или скрытый загрузчик, вредоносный код появится снова. Работайте с копией файлов и базы данных, фиксируйте изменения и не удаляйте доказательства до диагностики.
Признаки повторного заражения
- появляются неизвестные PHP-файлы в upload и локальных директориях;
- меняются права доступа или дата изменения большого количества файлов;
- в шаблоне возникают внешние скрипты, скрытые ссылки или редиректы;
- в панели Битрикс появляются незнакомые администраторы;
- сервер отправляет неожиданные запросы или резко растет нагрузка.
Что сделать после очистки
Обновите ядро Битрикс и компоненты, смените пароли панели, SSH, базы данных и почты, проверьте cron-задачи и права файлов. Удалите публичные архивы и диагностические скрипты. После этого проверьте sitemap, robots.txt, 404 и страницы, которые могли быть изменены атакующим.
Для продолжения работ пригодятся удаление вирусов, исправление ошибок и регулярная поддержка.