Запуск Продукты Bitnami Документацияimaxe CLI Блог Контакты
imaxe rkhunter руткиты v1.0.0

Охота на руткиты на вашем сервере

Сканирует систему с помощью rkhunter на предмет руткитов, бэкдоров и изменённых файлов и даёт вам понятную сводку предупреждений. Управляет эталоном свойств и поддерживает сигнатуры в актуальном состоянии одной командой.

$ imaxe rkhunter check
Версия
v1.0.0
Подкоманды
5
Конфиг
/etc/imaxe/rkhunter.yml
Требуется root
да
Вывод
текст · --json

Что делает этот модуль #

Руткит — это вредоносное ПО, созданное для того, чтобы проникнуть на ваш сервер и спрятаться: оно подменяет системные команды, открывает бэкдоры и стирает собственные следы, чтобы вы его не видели. В этом и заключается проблема — когда он работает хорошо, вы его не замечаете. Именно поэтому стоит регулярно проверять систему.

Модуль rkhunter опирается на rkhunter (Rootkit Hunter), чтобы делать эту работу за вас: он сканирует систему, сравнивая файлы и команды с известными сигнатурами руткитов, следит за подозрительными свойствами (странные права, скрытые порты, изменённые бинарники) и резюмирует предупреждения понятным языком, чтобы вы знали, на что смотреть. Он также поддерживает эталон — снимок того, как должны выглядеть ваши файлы — и сигнатуры в актуальном состоянии, две составляющие, от которых зависит надёжное обнаружение.

Перед началом

После установки модуля или обновления системных пакетов обновите эталон с помощью update-baseline. Если этого не сделать, легитимные изменения (например, apt upgrade) будут отображаться как предупреждения, и вам будет трудно отличить нормальное от подозрительного.

Краткое руководствопошаговые задачи

Типовые задачи #

Выберите, что вы хотите сделать. В каждом рецепте команда уже написана — скопируйте её, вставьте и нажмите Копировать.

1

Просканировать систему сейчас

Запускает полный анализ и выдаёт сводку предупреждений.

Подключитесь к серверу по SSH под пользователем ubuntu.

Запустите сканирование. Оно занимает некоторое время: rkhunter просматривает сотни файлов и команд.

терминал
$ sudo imaxe rkhunter check

Вызываете из скрипта или хотите интегрировать с другим инструментом? Добавьте --json:

терминал
$ sudo imaxe rkhunter check --json
По завершении вы увидите, сколько предупреждений возникло. Если они есть, перейдите к рецепту Смотреть предупреждения, чтобы прочитать их подробно.
2

Смотреть предупреждения последнего сканирования

Просмотрите, что отметил rkhunter, в удобочитаемом виде.

Показать предупреждения последнего check без повторного сканирования:

терминал
$ sudo imaxe rkhunter report
Многие предупреждения — это легитимные изменения после обновления. Если вы узнаёте их как свои, примите их через Обновить эталон.
3

Проверить состояние

С первого взгляда: установка, эталон, последнее сканирование и предупреждения.

Быстрая сводка того, готов ли rkhunter, есть ли эталон, когда было последнее сканирование, сколько предупреждений оно оставило и запланировано ли сканирование:

терминал
$ sudo imaxe rkhunter status

Для мониторинга или скриптов запросите вывод в JSON:

терминал
$ sudo imaxe rkhunter status --json
Если вы видите «baseline: not present», создайте его через Обновить эталон, прежде чем доверять результатам.
4

Обновить эталон

Принимает текущее состояние файлов как надёжную отправную точку.

Сохраните текущие свойства файлов как эталон (эквивалент rkhunter --propupd). Делайте это только тогда, когда доверяете состоянию системы — например, сразу после установки или после обновления, которое вы узнаёте:

терминал
$ sudo imaxe rkhunter update-baseline
Легитимные изменения перестают отмечаться как предупреждения. Следующая check отталкивается от этого нового эталонного снимка.
5

Обновить сигнатуры

Загрузите самые свежие файлы данных rkhunter.

Обновите файлы данных и сигнатуры rkhunter (эквивалент rkhunter --update), чтобы обнаружение знало о самых свежих руткитах:

терминал
$ sudo imaxe rkhunter update-data
С актуальными сигнатурами следующая check обнаруживает более свежие угрозы. Стоит сделать это перед важным сканированием.
Много предупреждений сразу?

Это нормально в первый раз или сразу после обновления пакетов: rkhunter видит изменения, которых ещё нет в эталоне. Просмотрите их через report, и если вы узнаёте их как легитимные, примите их через update-baseline. Никогда не обновляйте эталон, если подозреваете, что система уже скомпрометирована.

Справочник CLIкоманды, флаги и файлы

Синопсис #

использование
imaxe rkhunter <subcomando> [--json]

Все подкоманды требуют привилегий root (используйте sudo), потому что rkhunter должен читать системные файлы, сравнивать бинарники и писать свой эталон и свои данные. Добавьте --json к check или status, чтобы получить машиночитаемый вывод, пригодный для скриптинга и мониторинга.

Подкоманды #

ПодкомандаЧто делаетЗначимые флаги
checkЗапускает сканирование руткитов/вредоносного ПО и резюмирует предупреждения.--json
reportПоказывает предупреждения последнего сканирования в удобочитаемом виде.
statusСостояние: установлен, наличие эталона, последнее сканирование, предупреждения и запланированное сканирование.--json
update-baselineПринимает текущие свойства файлов как эталон (rkhunter --propupd).
update-dataОбновляет файлы данных/сигнатур rkhunter (rkhunter --update).

Аргументы и флаги #

ФлагТипПо умолчаниюОписание
--jsonboolfalseВ check/status выдаёт результат в виде структурированного JSON в stdout, пригодного для скриптинга и мониторинга.

Подкоманды report, update-baseline и update-data не принимают флагов: они выполняются без аргументов.

Файлы и пути #

ПутьСодержимое
/etc/imaxe/rkhunter.ymlКонфигурация модуля: по умолчанию check сообщает только предупреждения (report_warnings_only).
/var/lib/rkhunter/db/Эталон свойств файлов и файлы данных/сигнатур, которые обновляют update-baseline и update-data.
/var/log/rkhunter.logЖурнал последнего сканирования, из которого report извлекает предупреждения.

Пример rkhunter.yml:

/etc/imaxe/rkhunter.yml
check:
  report_warnings_only: true

Коды возврата и логи #

Каждый запуск возвращает код, который можно проверить командой echo $? — удобно для связок в скриптах или запуска оповещений из мониторинга:

0OKСканирование завершено без предупреждений.
1WARNСканирование завершилось с предупреждениями, ожидающими проверки.
2USAGEНедопустимые аргументы или неизвестная подкоманда.
3ERRОшибка выполнения (rkhunter недоступен или внутренний сбой).

Проверьте журнал последнего сканирования во время анализа:

терминал
$ sudo imaxe rkhunter report
$ sudo tail -f /var/log/rkhunter.log

Устранение неполадок #

СимптомВероятная причинаРешение
WARN появляется (код 1) после обновления пакетовЛегитимные изменения, которых ещё нет в эталоне.Просмотрите через report; если вы их узнаёте, примите их через update-baseline.
status говорит «baseline: not present»Модуль только что установлен, и эталонного снимка ещё нет.Выполните update-baseline один раз, когда система в доверенном состоянии.
Много предупреждений о старых файлах или версияхСигнатуры и данные rkhunter устарели.Выполните update-data и повторите check.
ERR появляется (код 3)rkhunter не установлен или бинарник не отвечает.Проверьте установку модуля и обратитесь к /var/log/rkhunter.log.

Застряли с модулем rkhunter?

Напишите нам, приложив вывод «imaxe <module> status --json», и мы быстро ответим.

Связаться с поддержкой