Гид по технологиям

Как проверить Linux на вирусы и руткиты

• 7 min read • Безопасность • Обновлено 30 Nov 2025
Как проверить Linux на вирусы и руткиты
Как проверить Linux на вирусы и руткиты

TL;DR

Если вы подозреваете заражение Linux — проверьте систему тремя бесплатными инструментами: ClamAV для обнаружения вредоносных программ, chkrootkit и rkhunter для поиска руткитов. Обновите базы сигнатур, запустите сканирование с правами root, внимательно проверьте каждый срабатывающий пункт и при подтверждённом заражении сделайте резервную копию данных и переустановку системы.

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

Scan Linux For Viruses

Изображение: человек за компьютером, выполняющий проверку Linux на наличие вредоносного ПО и руткитов.

Введение

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

Ключевые инструменты, которые мы рассмотрим:

  • ClamAV — классический антивирус со свежими сигнатурами.
  • chkrootkit — быстрое сканирование на известные руткиты.
  • rkhunter — расширенная проверка целостности и конфигураций.

Основная идея сканирования

Определение: руткит — вредоносный набор утилит, целью которого является скрыть присутствие злоумышленника и сохранить доступ с правами root.

Памятка: соблюдайте последовательность — обновление баз сигнатур, запуск сканеров от root, ручная проверка предупреждений, резервное копирование перед радикальными действиями.


1. ClamAV — классический антивирус для Linux

ClamAV — свободный антивирус, хорошо известный в сообществе открытого ПО. Он использует сигнатуры для обнаружения известных образцов вредоносного кода. Есть консольная утилита и графическая оболочка ClamTK.

Установка ClamAV и ClamTK

Для Debian/Ubuntu и производных можно установить так:

sudo apt install clamav clamtk

В других дистрибутивах пакеты обычно называются clamav и clamtk и доступны в репозиториях.

Перед сканированием обновите базу сигнатур (требуются права root):

sudo freshclam

Если демон обновления запущен автоматически, можно сначала остановить его, чтобы выполнить обновление вручную:

sudo systemctl stop clamav-freshclam
sudo freshclam
sudo systemctl start clamav-freshclam

Запуск сканирования с ClamTK

ClamTK Menu

Изображение: главное окно ClamTK с меню сканирования.

В графическом интерфейсе установите в настройках сканирования флаги: сканировать файлы, начинающиеся с точки, рекурсивное сканирование каталогов и сканирование больших файлов. Это расширит покрытие проверки.

ClamTK Settings

Изображение: настройки ClamTK — опции рекурсивного и скрытого сканирования.

Чтобы просканировать файловую систему, выберите “Scan A Directory” и укажите “Filesystem”. Для полного доступа может потребоваться запустить ClamTK с sudo или использовать консольную утилиту clamscan:

sudo clamscan -r --bell -i /

Опции: -r — рекурсивно, -i — показывать только заражённые файлы.

ClamTK Scanning

Изображение: процесс сканирования ClamTK с индикатором прогресса.

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


2. chkrootkit — быстрый поиск руткитов

Chkrootkit ориентирован на поиск известных руткитов и вредоносных модификаций системных утилит. Это быстрый инструмент, который полезен для первичной проверки.

Установка:

sudo apt install chkrootkit

Запуск и интерпретация результатов

Chkrootkit scan

Изображение: вывод chkrootkit в терминале во время сканирования.

Запустите программу от root:

sudo chkrootkit

Она переберёт список проверок и выведет строки вроде “INFECTED” или “not infected”. Программа не формирует единый итоговый отчёт, поэтому пройдитесь по выводу вручную.

Можно фильтровать вывод через grep, но это не даёт 100% гарантии обнаружения всех индикаторов:

sudo chkrootkit | grep INFECTED

Известные ложные срабатывания

Некоторые проверки chkrootkit дают ложные срабатывания из-за изменений в системных утилитах или конфигурации:

  • Старый баг для Linux/Ebury (Operation Windigo) связан с новым флагом -G в SSH. Для проверки выполните от root:
find /lib* -type f -name libns2.so

Если файл не найден — вероятно, это ложный срабатывание. Также проверьте сокеты:

netstat -nap | grep "@/proc/udevd"
  • Положительные результаты для tcpd на Ubuntu могут быть ложными. Исследуйте и сверяйтесь с журналами.
  • Появление wted может указывать на ошибки логирования после краха; проверьте last для соответствия времени перезагрузок.

Всегда сопоставляйте результаты chkrootkit с журналами и поведением системы.


3. rkhunter — глубокая проверка целостности

Rkhunter (Rootkit Hunter) — ещё один инструмент для обнаружения руткитов. Он проверяет файлы, конфигурации, подозрительные разрешения и известные сигнатуры.

Установка:

sudo apt install rkhunter

Обновление и проверка

Перед проверкой обновите базы rkhunter:

sudo rkhunter --update

rkhunter scan

Изображение: вывод rkhunter с предупреждениями и указанием лога.

Запустите проверку:

sudo rkhunter --check --sk

Программа останавливается после разделов и печатает предупреждения. Многие предупреждения — следствие нестандартной конфигурации. Основной лог находится в /var/log/rkhunter.log.

Rkhunter формирует сводку по окончании; просмотрите лог для понимания причин предупреждений.


Когда сканирование может не сработать

  • Руткит уже работает с правами root и перехватил системные вызовы — он может скрывать свои файлы и процессы.
  • Новое или таргетированное вредоносное ПО может не иметь сигнатур в базах ClamAV/rkhunter.
  • Заражение внутри контейнера или виртуальной среды может быть ограничено и не видно с хоста.

Если подозрение остаётся, не полагайтесь только на сигнатуры — используйте поведенческий анализ, контроль целостности файлов (AIDE, Tripwire) и сетевой мониторинг.


Альтернативные подходы и превентивные меры

  • Контроль целостности: AIDE или Tripwire отслеживают изменения в критичных файлах.
  • Ограничения доступа: включите AppArmor или SELinux и настройте политики для сервисов.
  • Минимизация привилегий: запускайте службы с непривилегированными учётными записями.
  • Безопасные источники пакетов: используйте официальные репозитории и проверяйте подписи пакетов.
  • Подписи и контроль загрузчика: включите Secure Boot при поддержке дистрибутива.

Процесс реагирования при подтверждённом заражении

Короткий план действий:

  1. Изолируйте систему от сети.
  2. Сделайте полную резервную копию важных данных (только данные, не образы системы).
  3. Снимите образ диска для последующего судебного анализа, если нужно.
  4. Проведите ручной анализ логов и сетевых соединений.
  5. Переустановите систему из чистого образа и восстановите данные из проверенного бэкапа.

Пример команд для экстренного сбора артефактов

sudo tar -czf /root/artifacts-$(date +%F).tgz /var/log /etc /root
sudo ss -tunap > /root/net-connections.txt
sudo lsof -nP > /root/lsof.txt

Сохраните артефакты на внешний носитель для последующего анализа.


Сценарий инцидента — пошаговый план

  1. Изолировать сервер от сети (удалить кабель или выключить виртуальный интерфейс).
  2. Оповестить команду безопасности.
  3. Снять логи и артефакты (см. команды выше).
  4. Заблокировать учётные записи, которые могли быть скомпрометированы.
  5. Подготовить чистую установку ОС и проверить целостность установочного образа.
  6. Восстановить данные только после проверки их на предмет вставленного бэкдора.
  7. Прописать уроки и обновить политики безопасности.

Критерии приёмки

  • Журнал проверки показывает отсутствие активных руткитов и сигнатур.
  • Службы перезапущены и работают под ограниченными учётными записями.
  • Все внешние ключи/пароли скомпрометированных учётных записей заменены.
  • Процедуры резервного копирования и обновления настроены и протестированы.

Чек-лист администратора

  • [ ] Обновить базы ClamAV: sudo freshclam.
  • [ ] Запустить sudo clamscan -r --bell -i /.
  • [ ] Запустить sudo chkrootkit и просмотреть вывод.
  • [ ] Обновить rkhunter: sudo rkhunter --update и sudo rkhunter --check.
  • [ ] Сохранить логи: /var/log/rkhunter.log и вывод chkrootkit.
  • Сделать резервную копию важных данных.
  • Отключить доступ по SSH для root и проверить ключи.

Настройка периодических сканирований

Пример задания cron для ежедневного обновления ClamAV и сканирования домашней директории:

# Обновление баз и запуск скана в 03:00
0 3 * * * /usr/bin/freshclam && /usr/bin/clamscan -r -i /home

Лучше использовать systemd-timer для современных систем, чтобы контролировать журнал и перезапуск при ошибках.


Ментальные модели и эвристики

  • Сигнатуры находят известное; поведенческий анализ и контроль целостности — защиту от неизвестного.
  • Ложные срабатывания часты у инструментов, которые проверяют системные утилиты. Не паникуйте — собирайте доказательства.
  • При сомнении доверяйте бэкапам и чистой переустановке больше, чем попыткам «починить» системные бинарники.

Глоссарий (в одну строку)

  • Руткит: вредоносный набор, скрывающий присутствие злоумышленника и дающий доступ с правами root.
  • Сигнатура: уникальная подпись вредоносного файла, используемая антивирусом для обнаружения.
  • Контроль целостности: проверка неизменности системных файлов с помощью хешей.

Краткое руководство по восстановлению и откату

  1. Убедитесь, что у вас есть последний чистый бэкап данных и конфигураций.
  2. Переустановите ОС с официального образа.
  3. Обновите систему и установите базовую защиту (AppArmor/SELinux, брандмауэр).
  4. Восстанавливайте данные выборочно, предварительно проверив их на другом чистом хосте.

Заключительные рекомендации

  • Сканы полезны, но не всесильны. Комбинируйте сигнатурные сканеры с мониторингом поведения и контролем целостности.
  • Документируйте шаги расследования и храните артефакты инцидентов в защищённом хранилище.
  • Периодически тестируйте процессы восстановления и обновляйте методы защиты.

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


Краткая сводка

  • Используйте ClamAV для поиска известных вредоносных файлов.
  • chkrootkit и rkhunter помогают найти руткиты и подозрительные изменения.
  • Всегда обновляйте базы сигнатур и запускайте проверки с правами root.
  • При подтверждённом заражении готовьтесь к переустановке и восстановлению из проверенных бэкапов.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро