Установка и использование chkrootkit

Как проверить сервер на наличие руткитов и настроить автоматическое сканирование.

Chkrootkit (check rootkit) — бесплатная утилита с открытым исходным кодом для поиска руткитов и вредоносных приложений в операционной системе. Она способна обнаруживать практически все существующие современные руткиты и доступна в большинстве дистрибутивов Linux.

Утилита поддерживается на VPS и выделенных серверах.

Установка

Способ 1 — через менеджер пакетов (рекомендуется):

apt-get install chkrootkit

Способ 2 — из исходных кодов (для получения последней версии):

wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense

После сборки переместите каталог в удобное место:

cd ..
mv chkrootkit-/ /usr/local/chkrootkit

Создайте символическую ссылку для быстрого доступа:

ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit

Опции запуска

Опция Описание
-h Показать справку
-V Показать версию
-l Список доступных тестов
-d Режим отладки
-q Тихий режим — выводить только заражённые файлы
-x Расширенный режим — подробный вывод по каждому файлу
-r dir Использовать указанный каталог как корневой
-n Пропустить проверки на NFS-разделах
-p dir1:dir2 Пути для внешних программ, используемых chkrootkit

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

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

chkrootkit

Пример вывода:

ROOTDIR is /' Checking amd'...                                           not found
Checking basename'...                                      not infected Checking cron'...                                          not infected
Checking find'...                                          not infected Checking ls'...                                            not infected
Checking ps'...                                            not infected Checking sshd'...                                          not infected
...
Checking `bindshell'...                                     INFECTED (PORTS: 465)
...

Расшифровка результатов

Статус Значение
not infected Сигнатур известных руткитов не обнаружено
INFECTED Программа может относиться к известным образцам вредоносного кода
not found Программа не найдена и не проверялась
not tested Тест не выполнен: неприменим для данной ОС, отсутствует внешняя программа или отключён опциями
Vulnerable but disabled Программа заражена, но на момент проверки не запущена

Ложное срабатывание: если вы видите Checking 'bindshell'... INFECTED (PORTS: 465) на почтовом сервере — не беспокойтесь. Порт 465 — это SMTPS (Secure SMTP), и это хорошо известное ложное срабатывание chkrootkit.

Важно

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

Автоматическая проверка через cron

Можно настроить регулярное сканирование с отправкой отчёта на почту.

Узнайте полный путь к chkrootkit:

which chkrootkit

Вывод:

/usr/sbin/chkrootkit

Откройте crontab:

crontab -e

Добавьте задание — например, ежедневное сканирование в 3:00 ночи:

0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit Report" ваш@email.com

Замените путь к chkrootkit на полученный выше и укажите свой почтовый адрес.

Помощь

Если у вас возникли вопросы или требуется помощь, пожалуйста, свяжитесь с нами через систему тикетов — мы обязательно вам поможем!

Нужна помощь?Наши инженеры бесплатно помогут с любым вопросом за считанные минутыНаписать нам