Безопаcность сайтов (защита от взломов)

13.02.2025

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

Уязвимости в модулях нашей разработки были обнаружены и устранены нами в середине 2023 года.

Ниже указаны модули и их версии, в которых имеются уязвимости.

1) Импорт из Excel - версии от 2.4.7 до 2.8.9
2) Экспорт в Excel - версии от 0.8.2 до 1.2.2
3) Экспорт/Импорт товаров в Excel - версии от 2.4.7 до 2.8.9
4) Импорт из XML и YML - версии от 0.6.8 до 1.1.6
5) Массовая обработка элементов инфоблока - версии от 0.5.9 до 0.7.7
6) Многофункциональный экспорт/импорт в Excel - версии от 0.2.2 до 0.4.8

По всем этим модулям были выпущены обновления в июне-июле 2023 года, в которых данная уязвимость отсутствует.

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

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

  1. Обновление модуля до последней версии (если есть такая возможность).
  2. Если конкретный модуль не используется на сайте, то можно его просто удалить.
  3. Вы можете написать нам обращение на адрес техподдержки app@esolutions.su и предоставить доступ к административной части вашего сайта. Мы поможем устранить все имеющиеся уязвимости в наших модуля.
  4. Для автоматического устранения уязвимостей у нас по данной ссылке https://disk.yandex.ru/d/5SvCJOzeAQ0yhg доступен патчер. Его можно загрузить в корень сайта и запустить. Пачтер должен автоматически внести изменения в уязвимые файлы модули и после это он сам удалится.
  5. Можно вручную внести изменения в уязвимые файлы нашего модуля. Ниже мы даём подробную инструкцию, как это можно сделать.

Инструкция по самостоятельному устранению уязвимостей.

Для решения данного вопроса достаточно добавить в самое начало уязвимых файлов модулей такой php-код

<?if(isset($_REQUEST['path']) && strlen($_REQUEST['path']) > 0)
{
	header((stristr(php_sapi_name(), 'cgi') !== false ? 'Status: ' : $_SERVER['SERVER_PROTOCOL'].' ').'403 Forbidden');
	die();
}
?>

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

1) Импорт из Excel
Файл: /bitrix/modules/kda.importexcel/admin/iblock_import_excel_cron_settings.php

2) Экспорт в Excel
Файл: /bitrix/modules/kda.exportexcel/admin/iblock_export_excel_cron_settings.php

3) Экспорт/Импорт товаров в Excel
Файлы: /bitrix/modules/esol.importexportexcel/admin/iblock_import_excel_cron_settings.php
и
/bitrix/modules/esol.importexportexcel/admin/iblock_export_excel_cron_settings.php

4) Импорт из XML и YML
Файл: /bitrix/modules/esol.importxml/admin/import_xml_cron_settings.php

5) Массовая обработка элементов инфоблока
Файл: /bitrix/modules/esol.massedit/admin/profile.php

6) Многофункциональный экспорт/импорт в Excel
Файл: /bitrix/modules/esol.allimportexport/admin/cron_settings.php


Патчер по этой ссылке https://disk.yandex.ru/d/5SvCJOzeAQ0yhg вносит такие же изменения в эти файлы модулей.

Ниже показан пример файла, в который уже внесены такие изменения.




Рекомендации, если Ваш сайт уже был взломан

Обратите внимание, что широко распространены случаи повторного взлома сайта.

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

Всё это в дальнейшем злоумышленники могут использовать для повторных взломов.

Чтобы избежать повторного взлома, необходимо сделать следующее.

  1. Почистить сайт от вредоносных файлов. Для этого можно использовать инструменты для Поиска троянов на странице "Рабочий стол - Настройки - Проактивная защита - Поиск троянов - Сканирование файлов". Данный инструмент неплохо справляется с поиском заражённых файлов и позволяет их обезвредить.
  2. Также необходимо проверить файлы .htaccess. При взломе зачастую меняются стандартные файлы .htaccess и загружается множество новых файлов в папки /upload/ и /bitrix/.
    Для решения этой задачи можно использовать инструменты на странице "Рабочий стол - Настройки - Проактивная защита - Поиск троянов - Проверка .htaccess".
    Там есть кнопка "Удалить всё и установить минимальный набор", которая позволяет устранить уязвимости, вызванные подменой файлов .htaccess при взломе.
  3. Проверить настройки крона. Сделать это можно командой "crontab -l" на сервере.
  4. Проверить подозрительные процессы на сервере. Либо можно просто перезагрузить сервер и обычно при этом вредоносные процессы больше не появляются.
    Если у Вас виртуальный хостинг, то этот пункт можно пропустить, т.к. в данном случае хостер сам должен контролировать такие процессы на сервере.
  5. Проверить учётные данные администраторов сайта. При взломе могут быть изменены пароли и email-адреса администраторов.

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

Поэтому есть вариант окатить сайт из бекапа на момент до заражения сайта и после этого устранить все возможные уязвимости в файлах наших модулей.

При восстановлении сайта из бекапа также нужно будет проверить настройки крона и подозрительные процессы на сервере.

Также возможен вариант отката состояния самого сервера. Этот вариант является самым надёжным, т.к. исключает любые возможные последствия от предыдущего взлома сайта.