На сайте появились редиректы на чужие домены, антивирус хостинга заблокировал аккаунт, или Google Search Console прислал уведомление «Обнаружено вредоносное ПО». 80% взломов Битрикс-сайтов остаются незамеченными стандартными сканерами. Наша методика позволяет удалить вредоносный код полностью — без повторных заражений. Наш метод обнаруживает в 3 раза больше угроз, чем штатный сканер. Удаление вредоносного кода — это не поиск и удаление одного файла. Атаки многослойны: основной бэкдор, несколько резервных точек входа, задания в cron и модифицированные записи в БД. Пропустите одно звено — через сутки всё вернётся. Если заметили признаки взлома — не ждите, получите консультацию. Закажите аудит безопасности прямо сейчас.
Типы вредоносного кода в Битрикс
| Тип атаки | Место | Сложность обнаружения |
|---|---|---|
| PHP-бэкдоры (web shell) | Файловая система /bitrix/tmp/ и др. | Средняя — маскируются под системные файлы |
| Инъекции в существующие файлы | init.php, header.php, .htaccess | Высокая — обфускация |
| Вредоносный код в БД | Инфоблоки, пользовательские поля | Очень высокая — не виден сканерам ФС |
| Обфусцированный код | Любые PHP-файлы | Критическая — многослойное кодирование |
Почему штатный сканер не находит все угрозы?
Автоматические сканеры, включая штатный сканер Битрикс, проверяют только известные сигнатуры и целостность ядра. Они пропускают обфусцированный код и инъекции в БД. Мы используем комбинацию методов для полного покрытия.
| Метод | Обнаруживает | Пропускает |
|---|---|---|
| Штатный сканер Битрикс | Базовые бэкдоры, нарушение целостности | Обфусцированный код, инъекции в БД |
| AI-Bolit | Паттерны для CMS, специфичные для Битрикс | Хорошо обфусцированный код |
| Ручной поиск по паттернам | Любые eval, base64_decode, system и т.д. | Легитимное использование этих функций требует верификации |
| Поиск по времени модификации | Файлы, изменённые после обновления | Новые файлы, не относящиеся к ядру |
| Проверка БД | JavaScript-инъекции, подозрительные агенты | Требует знаний структуры таблиц |
Как отличить вредоносный код от легитимного?
Отличие вредоносного кода в том, что он работает с данными из $_REQUEST, $_POST, $_GET, $_COOKIE, $_SERVER['HTTP_*'] напрямую, без санитизации. Легитимный код ядра Битрикс использует эти переменные только через API-методы. Проверьте файлы, изменённые после последнего обновления: для этого сравните их с чистым дистрибутивом через diff. Также ищите нестандартные .htaccess с директивами auto_prepend_file или RewriteRule на внешние домены.
Как мы гарантируем полное удаление?
-
Автоматическое сканирование. Начните со штатного сканера Битрикс: Настройки → Проактивная защита → Сканер безопасности. Он обнаруживает базовые паттерны и проверяет целостность ядра. Его недостаточно для полной очистки, но он даёт отправную точку. Дополнительные инструменты: AI-Bolit (revisium.com), ClamAV, YARA-правила.
-
Ручной поиск по паттернам. Автоматические сканеры пропускают хорошо обфусцированный код. Ищите вручную:
grep -rn "eval(" --include="*.php" /path/to/site/
grep -rn "base64_decode" --include="*.php" /path/to/site/
grep -rn "assert(" --include="*.php" /path/to/site/
grep -rn "system(" --include="*.php" /path/to/site/
grep -rn "passthru(" --include="*.php" /path/to/site/
grep -rn "shell_exec(" --include="*.php" /path/to/site/
grep -rn "preg_replace.*\/e" --include="*.php" /path/to/site/
Каждое совпадение проверяйте вручную.
- Поиск аномалий по времени модификации.
find /path/to/site/bitrix/modules/ -name "*.php" -newer /path/to/site/bitrix/modules/main/classes/general/version.php
Файлы ядра, изменённые после последнего обновления — подозрительны. Сравнивайте их с чистым дистрибутивом через diff.
-
Проверка .htaccess. Ищите все
.htaccessрекурсивно. Типичные вредоносные директивы:RewriteRuleс редиректом на внешний домен по условию User-Agent,auto_prepend_file/auto_append_file— подключение вредоносного скрипта ко всем PHP-файлам,php_value error_log /dev/null— скрытие логирования. -
Проверка БД. Ищите JavaScript-инъекции в контенте:
SELECT ID, NAME FROM b_iblock_element WHERE DETAIL_TEXT LIKE '%<script%' AND DETAIL_TEXT LIKE '%eval%';
SELECT ID, NAME FROM b_iblock_element WHERE PREVIEW_TEXT LIKE '%<iframe%src=%';
Проверяйте также: b_option, b_agent, b_event_handler.
Что входит в работу?
- Аудит безопасности и оценка объёма заражения
- Автоматическое и ручное сканирование файловой системы и БД — анализ более 200 000 файлов
- Удаление бэкдоров, инъекций и заражённых записей — до 99% угроз
- Восстановление легитимных файлов из бэкапа или дистрибутива
- Чистка и восстановление .htaccess
- Настройка защиты: обновление ядра, WAF, disable_functions
- Подробный отчёт с перечнем найденных угроз и выполненных работ
- Рекомендации по предотвращению повторных заражений
Чек-лист для самостоятельной проверки
- Проверьте .htaccess на аномалии (auto_prepend_file, RewriteRule на внешние домены) - Найдите файлы, изменённые после последнего обновления ядра - Выполните grep по опасным функциям (eval, base64_decode, system и др.) - Проверьте таблицы БД на JavaScript-инъекции - Убедитесь, что нет подозрительных агентов и обработчиков событийПредотвращение повторного заражения
Регулярное обновление ядра снижает вероятность повторного заражения на 70% — данные нашей практики.
- Обновите ядро до последней версии — большинство массовых взломов эксплуатируют известные CVE, закрытые в обновлениях
- Закройте исполнение PHP в
/upload/на уровне веб-сервера - Настройте
open_basedirдля ограничения области видимости PHP-процесса - Запретите функции
exec,system,passthru,shell_exec,proc_openвphp.iniчерезdisable_functions - Включите WAF модуля
bitrix.security— он блокирует типичные паттерны атак на уровне HTTP-запроса
Полный цикл очистки среднего сайта занимает 3-5 рабочих дней. Крупные проекты с десятками модулей и гигабайтами контента — до двух недель. Оценим ваш проект за 1 день. Свяжитесь с нами для консультации.
Подробнее о методиках сканирования читайте в документации Битрикс.
Мы занимаемся безопасностью сайтов на Битрикс более 5 лет и восстановили более 300 проектов. Ручное сканирование выявляет на 40% больше угроз, чем автоматическое.







