Chkrootkit (check rootkit) - инструмент для поиска руткитов (вредоносных приложений) в операционной системе:

    • Это свободная утилита с открытым исходным кодом, доступная во множестве дистрибутивов.
    • Она способна обнаруживать практически все существующие современные руткиты.

    file

    Установка:

    apt-get install chkrootkit  
    
    [email protected]:~# apt-get install chkrootkit  
    Reading package lists... Done  
    Building dependency tree  
    Reading state information... Done  
    The following NEW packages will be installed:  
      chkrootkit
    0 upgraded, 1 newly installed, 0 to remove and 73 not upgraded.  
    Need to get 318 kB of archives.  
    After this operation, 1013 kB of additional disk space will be used.  
    Get:1 http://mirror.fornex.org/ubuntu bionic-updates/universe amd64 chkrootkit amd64 0.52-1ubuntu0.1 [318 kB]  
    Fetched 318 kB in 0s (8012 kB/s)  
    Preconfiguring packages ...  
    Selecting previously unselected package chkrootkit.  
    (Reading database ... 126487 files and directories currently installed.)
    Preparing to unpack .../chkrootkit_0.52-1ubuntu0.1_amd64.deb ...  
    Unpacking chkrootkit (0.52-1ubuntu0.1) ...  
    Setting up chkrootkit (0.52-1ubuntu0.1) ...  
    Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
    
    

    Далее, можно скачать самую новую версию архива с исходными кодами и распаковать во временную директорию.

    wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz  
    tar xvfz chkrootkit.tar.gz  
    cd chkrootkit-*/  
    make sense  
    
    [email protected]:~# wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz  
    --2021-02-15 14:16:41--  ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
               => ‘chkrootkit.tar.gz’
    Resolving ftp.pangeia.com.br (ftp.pangeia.com.br)... 187.33.4.179  
    Connecting to ftp.pangeia.com.br (ftp.pangeia.com.br)|187.33.4.179|:21... connected.  
    Logging in as anonymous ... Logged in!  
    ==> SYST ... done.    ==> PWD ... done.
    ==> TYPE I ... done.  ==> CWD (1) /pub/seg/pac ... done.
    ==> SIZE chkrootkit.tar.gz ... 41461
    ==> PASV ... done.    ==> RETR chkrootkit.tar.gz ... done.
    Length: 41461 (40K) (unauthoritative)  
    
    chkrootkit.tar.gz         100%[=====================================>]  40.49K  65.7KB/s    in 0.6s  
    
    2021-02-15 14:16:44 (65.7 KB/s) - ‘chkrootkit.tar.gz’ saved [41461]  
    
    [email protected]:~# tar xvfz chkrootkit.tar.gz  
    chkrootkit-0.54/ACKNOWLEDGMENTS  
    chkrootkit-0.54/check_wtmpx.c  
    chkrootkit-0.54/chk54.tgz  
    chkrootkit-0.54/chkdirs.c  
    chkrootkit-0.54/chklastlog.c  
    chkrootkit-0.54/chkproc.c  
    chkrootkit-0.54/chkrootkit  
    chkrootkit-0.54/chkrootkit.lsm  
    chkrootkit-0.54/chkutmp.c  
    chkrootkit-0.54/chkwtmp.c  
    chkrootkit-0.54/COPYRIGHT  
    chkrootkit-0.54/ifpromisc.c  
    chkrootkit-0.54/Makefile  
    chkrootkit-0.54/README  
    chkrootkit-0.54/README.chklastlog  
    chkrootkit-0.54/README.chkwtmp  
    chkrootkit-0.54/strings.c  
    [email protected]:~# cd chkrootkit-*/  
    [email protected]:~/chkrootkit-0.54# make sense
    
    

    После этого Вы можете переместить каталог chkrootkit в другое место, например, в /usr/local/chkrootkit:

    cd ..  
    mv chkrootkit-<version>/ /usr/local/chkrootkit  
    

    Затем создать symlink для легкого доступа:

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

    Опции утилиты chkrotkit:

    • -h – просмотр справки.
    • -V – просмотр версии.
    • -l – просмотр списка тестов/проверок, которые поддерживает программа.
    • [ тип проверки ] – выполнение заданного типа проверки(chkrootkit aliens sniffer).
    • -d – включение режима отладки.
    • -q – «тихий режим»- минимальный вывод информации. Выводятся только сообщения о найденных инфицированных файлах.
    • -x – расширенный режим – вывод каждого действия, проводимого в отношении каждого исследуемого файла.
    • -r — определение каталога, который будет использоваться в качестве корневого(root).
    • -n – пропуск проверок на NFS-разделах.
    • -p dir1:dir2:dirN – пути для внешних программ, используемых chkrootkit.

    Чтобы проверить ваш сервер с помощью chkrootkit, запустите команду:

    chkrootkit  
    
    chkrootkit  
    ROOTDIR is `/'  
    Checking `amd'...                                           not found  
    Checking `basename'...                                      not infected  
    Checking `biff'...                                          not found  
    Checking `chfn'...                                          not infected  
    Checking `chsh'...                                          not infected  
    Checking `cron'...                                          not infected  
    Checking `crontab'...                                       not infected  
    Checking `date'...                                          not infected  
    Checking `du'...                                            not infected  
    Checking `dirname'...                                       not infected  
    Checking `echo'...                                          not infected  
    Checking `egrep'...                                         not infected  
    Checking `env'...                                           not infected  
    Checking `find'...                                          not infected  
    Checking `fingerd'...                                       not found  
    Checking `gpm'...                                           not found  
    Checking `grep'...                                          not infected  
    Checking `hdparm'...                                        not infected  
    Checking `su'...                                            not infected  
    Checking `ifconfig'...                                      not infected  
    Checking `inetd'...                                         not infected  
    Checking `inetdconf'...                                     not found  
    Checking `identd'...                                        not found  
    Checking `init'...                                          not infected  
    Checking `killall'...                                       not infected  
    Checking `ldsopreload'...                                   not infected  
    Checking `login'...                                         not infected  
    Checking `ls'...                                            not infected  
    Checking `lsof'...                                          not infected  
    Checking `mail'...                                          not infected  
    Checking `mingetty'...                                      not found  
    Checking `netstat'...                                       not infected  
    Checking `named'...                                         not found  
    Checking `passwd'...                                        not infected  
    Checking `pidof'...                                         not infected  
    Checking `pop2'...                                          not found  
    Checking `pop3'...                                          not found  
    Checking `ps'...                                            not infected  
    Checking `pstree'...                                        not infected  
    Checking `rpcinfo'...                                       not found  
    Checking `rlogind'...                                       not found  
    Checking `rshd'...                                          not found  
    Checking `slogin'...                                        not infected  
    Checking `sendmail'...                                      not infected  
    Checking `sshd'...                                          not infected  
    Checking `syslogd'...                                       not tested  
    Checking `tar'...                                           not infected  
    Checking `tcpd'...                                          not found  
    Checking `tcpdump'...                                       not infected  
    Checking `top'...                                           not infected  
    Checking `telnetd'...                                       not found  
    Checking `timed'...                                         not found  
    Checking `traceroute'...                                    not found  
    Checking `vdir'...                                          not infected  
    Checking `w'...                                             not infected  
    Checking `write'...                                         not infected  
    Checking `aliens'...                                        no suspect files  
    Searching for sniffer's logs, it may take a while...        nothing found  
    Searching for rootkit HiDrootkit's default files...         nothing found  
    Searching for rootkit t0rn's default files...               nothing found  
    Searching for t0rn's v8 defaults...                         nothing found  
    Searching for rootkit Lion's default files...               nothing found  
    Searching for rootkit RSHA's default files...               nothing found  
    Searching for rootkit RH-Sharpe's default files...          nothing found  
    Searching for Ambient's rootkit (ark) default files and dirs... nothing found  
    Searching for suspicious files and dirs, it may take a while... The following suspicious files and directories were found:  
    /lib/modules/4.15.0-128-generic/vdso/.build-id /lib/modules/4.15.0-106-generic/vdso/.build-id
    /lib/modules/4.15.0-128-generic/vdso/.build-id /lib/modules/4.15.0-106-generic/vdso/.build-id
    Searching for LPD Worm files and dirs...                    nothing found  
    Searching for Ramen Worm files and dirs...                  nothing found  
    Searching for Maniac files and dirs...                      nothing found  
    Searching for TC2 Worm default files and dirs...            nothing found  
    Searching for Anonoying rootkit default files and dirs...   nothing found  
    Searching for ZK rootkit default files and dirs...          nothing found  
    Searching for ShKit rootkit default files and dirs...       nothing found  
    Searching for AjaKit rootkit default files and dirs...      nothing found  
    Searching for zaRwT rootkit default files and dirs...       nothing found  
    Searching for Madalin rootkit default files...              nothing found  
    Searching for Fu rootkit default files...                   nothing found  
    Searching for ESRK rootkit default files...                 nothing found  
    Searching for rootedoor...                                  nothing found  
    Searching for ENYELKM rootkit default files...              nothing found  
    Searching for common ssh-scanners default files...          nothing found  
    Searching for Linux/Ebury - Operation Windigo ssh...        not tested  
    Searching for 64-bit Linux Rootkit ...                      nothing found  
    Searching for 64-bit Linux Rootkit modules...               nothing found  
    Searching for Mumblehard Linux ...                          nothing found  
    Searching for Backdoor.Linux.Mokes.a ...                    nothing found  
    Searching for Malicious TinyDNS ...                         nothing found  
    Searching for Linux.Xor.DDoS ...                            nothing found  
    Searching for Linux.Proxy.1.0 ...                           nothing found  
    Searching for suspect PHP files...                          nothing found  
    Searching for anomalies in shell history files...           nothing found  
    Checking `asp'...                                           not infected  
    Checking `bindshell'...                                     INFECTED PORTS: ( 465)  
    Checking `lkm'...                                           chkproc: nothing detected  
    chkdirs: nothing detected  
    Checking `rexedcs'...                                       not found  
    Checking `sniffer'...                                       lo: not promisc and no packet sniffer sockets  
    eth0: not promisc and no packet sniffer sockets  
    Checking `w55808'...                                        not infected  
    Checking `wted'...                                          chkwtmp: nothing deleted  
    Checking `scalper'...                                       not infected  
    Checking `slapper'...                                       not infected  
    Checking `z2'...                                            chklastlog: nothing deleted  
    Checking `chkutmp'...                                       chkutmp: nothing deleted  
    Checking `OSX_RSPLUG'...                                    not tested
    
    

    В ходе работы chkrootkit отправляет следующие уведомления:

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

    Из полученного рапорта, мы можем увидеть подобное:

    Checking `bindshell'... INFECTED (PORTS: 465)  
    

    Не беспокойтесь, когда вы получаете это сообщение на почтовом сервере, это SMTPS (Secure SMTP) порт вашей почтовой системы и хорошо известное ложное срабатывание.

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


    Вы можете запустить chkrootkit по заданию cron и получить результаты по электронной почте.
    Сначала узнайте путь, по которому установлен chkrootkit на вашем сервере:

    which chkrootkit  
    
    [email protected]:~# which chkrootkit  
    /usr/sbin/chkrootkit
    

    Chkrootkit устанавливается по пути /usr/sbin/chkrootkit, нам нужен этот путь в строке cron ниже:

    crontab -e  
    

    Например:

    0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit Report" ваш_почтовый@ящик  
    

    Проверка будет выполняться ежедневно, в 3 часа ночи.
    Замените путь к chkrootkit на тот, с которого вы получили команду выше, и укажите свой почтовый адрес на который будет приходить письмо.


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