В последнее время ко мне массово обращаются клиенты с жалобой на взлом сайтов на Битрикс. Действительно, в старых версиях CMS Битрикс присутствует критическая уязвимость, позволяющая из-за недостаточной фильтрации данных, удалённо залить вредоносный код на сервер.
Об уязвимости стало известно ещё в середине 2022 года, тогда была первая волна массовых взломов. Сейчас же наблюдается вторая волна — страдают практически все сайты с неактуальной версией Битрикс.
Разработчики уязвимость признали, однако судя по всему уязвим не только модуль vote. Так как взламывают и те сайты, где его никогда не было. Единственное решение, которое они предложили — это обновление Битрикс до последней версии.
Как определить, что ваш сайт уже взломали
В админке Битрикса загляните в Агенты. Если видите там что-то подобное, значит 100%, что ваш сат подвергся взлому.
Однако, как показала практика, «левый» агент бывает не всегда.
Посмотрите файлы сайта. Обычно прямо в корне могут появиться файлы с рандомными буквенно-циферными именами. Очень часто такой файл находится в папке /bitrix/admin/.
В нескольких случаях в каждой папке сайта на CMS Битрикс был создан файл .htaccess. На одном из сайтов я насчитал их 15000 штук 🙂
Могут быть модифицированы .php и .js файлы сайта, в них дописан вредоносный код.
В нескольких случаях вредоносный код был дописан в index.php сайта, причём если удалить его оттуда, или даже удалить полностью сам файл, он тут же автоматически появлялся снова.
Во всех случаях на сайтах были найдены десятки вредоносных .php файлов в абсолютно рандомных папках, с рандомными именами, кодом и датой модификации.
Как почистить сайт от вредоносного кода и устранить последствия взлома
Если контент на вашем сайте редко обновляется, известна дата взлома и у вас есть заведомо чистая резервная копия — самый простой способ, это удалить все файлы и базу сайта, и далее восстановить их из резервной копии. Нужно делать именно так, а не восстанавливать бэкап поверх существующих файлов, так как при распаковке поверх, вредоносные файлы никуда не денутся.
Если же бэкапа нет, или контент сайта постоянно обновляется, то нужно:
- Удалить Агент в админке, если он есть.
- Найти и удалить все вредоносные файлы, а также восстановить те, которые были модифицированы.
Здесь я не могу дать общего совета как искать, так как каждый раз случай уникален. Пользуйтесь командой find, ищите по дате модификации, правам, пробуйте искать .php файлы в тех папках, где их вообще не должно быть. Используйте антивирусы типа ImunifyAV, и т.д. Однако все способы нужно обязательно комбинировать. Например, тот же антивирус обычно не находит и половины вредоносных файлов.
ВАЖНО! Восстанавливать сайт из резервной копии можно лишь в том случае, если вам достоверно известна дата первоначального взлома, и вы на 100% уверены, что имеющаяся резервная копия абсолютно чиста. Тоже самое касается и обновлений — обновлять систему нужно только после того, как будет удалён весь вредоносный код. В противном случае взломы продолжатся, но при этом вы в несколько раз усложните себе, или специалисту, работу по поиску вредоносных файлов.
Если вам нужна помощь с полной проверкой вашего сайта на Битрикс под ключ, с удалением всего вредоносного кода, можно обратиться ко мне, по любым удобным контактам.
Стоимость услуги составит 100 BYN (≈3000 RUB или $35 USD).
Как закрыть уязвимость и предотвратить взлом сайтов на Битрикс в дальнейшем
Правильный способ только один — это обновить Битрикс до последней, актуальной версии. Другого способа разработчики не предоставили. И да, для этого потребуется активная лицензия.
Существует и временное решение, запретить POST запросы к тем файлам сайта, через которые и происходит взлом. Этот список был вычислен при исследовании логов запросов к пострадавшим сайтам. Однако повторюсь — решение временное, оно не даёт 100% гарантии, и к тому же «ломает» часть функционала админки сайта.
Использовать его следует только тогда, когда прямо сейчас обновиться нет возможности. Для этого в файлы:
- /bitrix/tools/upload.php
- /bitrix/tools/mail_entry.php
- /bitrix/modules/main/include/virtual_file_system.php
- /bitrix/components/bitrix/sender.mail.editor/ajax.php
- /bitrix/tools/vote/uf.php
- /bitrix/tools/html_editor_action.php
- /bitrix/admin/site_checker.php
(у вас могут присутствовать не все из них) в начало, перед required добавьте следующий код код:
if ($_SERVER['REQUEST_METHOD'] === 'POST') { header("Status: 404 Not Found"); die(); }
После обновления Битрикс, этот код из файлов нужно будет удалить.
UPD 26.05.2023 — массовый взлом от лица IT ARMY of Ukraine.
Сегодня снова было взломано огромное количество сайтов, на Битрикс. Была заменена главная страница сайтов, вместо неё можно было наблюдать следующее:
Также при этом полностью были удалены папки bitrix и upload. Взломаны были сайты на абсолютно разных версиях битрикс, даже на актуальный.
Однако анализ логов показал, что взлом был осуществлён через бэкдоры, оставленные ранее. То есть, например, хотя битрикс и был обновлён до новой версии, однако перед этим не были найдены все бэкдоры, оставленные на сайте. Через них и произошёл взлом.
В данном конкретном случае единственная возможность восстановить сайт — это восстановить его из резервной копии. А затем, обязательно найти бэкдоры, которые были заранее размещены на нём. В противном случае сайт будет взломан повторно.
Если вам необходима помощь, вы по прежнему можете обратиться за ней ко мне по любым контактам с этой страницы.
Нужна профессиональная удалённая помощь с сервером, сайтом, компьютером или ноутбуком?
Свяжитесь со мной любым удобным для вас способом, и получите её быстро и не дорого.
Обсудить задачуПомогла статья? Поблагодари автора!
Остались вопросы, или есть что добавить? Добро пожаловать в комментарии.
Угостить автора чашечкой кофе