Skip to content


入侵检测工具rkhunter安装

rkhunter是Linux下的一款开源入侵检测工具。rkhunter具有比chrootkit更为全面的扫描范围。除rootkit特征码扫描外,rkhunter还支持端口扫描,常用开源软件版本和文件变动情况检查等。
rkhunter的官方网站位于http://www.rootkit.nl/,目前最新的版本是rkhunter-1.3.8。

centos5.8
Linux C1gstudio 2.6.18-308.el5 #1 SMP Tue Feb 21 20:06:06 EST 2012 x86_64 x86_64 x86_64 GNU/Linux

一.安装
安装到自定义目录/usr/local/rkhunter

  1. wget http://nchc.dl.sourceforge.net/project/rkhunter/rkhunter/1.3.8/rkhunter-1.3.8.tar.gz
  2. tar zxvf rkhunter-1.3.8.tar.gz
  3. cd rkhunter-1.3.8
  4. mkdir -p /usr/local/rkhunter
  5. ./installer.sh --layout custom /usr/local/rkhunter --install
  1. Note: Directory /usr/local/rkhunter/bin is not in your PATH
  2.  
  3. Checking system for:
  4.  Rootkit Hunter installer files: found
  5.  A web file download command: wget found
  6. Starting installation:
  7.  Checking installation directory "/usr/local/rkhunter": it exists and is writable.
  8.  Checking installation directories:
  9.   Directory /usr/local/rkhunter/share/doc/rkhunter-1.3.8: creating: OK
  10.   Directory /usr/local/rkhunter/share/man/man8: creating: OK
  11.   Directory /usr/local/rkhunter/etc: creating: OK
  12.   Directory /usr/local/rkhunter/bin: creating: OK
  13.   Directory /usr/local/rkhunter/lib64: creating: OK
  14.   Directory /usr/local/rkhunter/var/lib: creating: OK
  15.   Directory /usr/local/rkhunter/lib64/rkhunter/scripts: creating: OK
  16.   Directory /usr/local/rkhunter/var/lib/rkhunter/db: creating: OK
  17.   Directory /usr/local/rkhunter/var/lib/rkhunter/tmp: creating: OK
  18.   Directory /usr/local/rkhunter/var/lib/rkhunter/db/i18n: creating: OK
  19.  Installing check_modules.pl: OK
  20.  Installing filehashsha.pl: OK
  21.  Installing stat.pl: OK
  22.  Installing readlink.sh: OK
  23.  Installing backdoorports.dat: OK
  24.  Installing mirrors.dat: OK
  25.  Installing programs_bad.dat: OK
  26.  Installing suspscan.dat: OK
  27.  Installing rkhunter.8: OK
  28.  Installing ACKNOWLEDGMENTS: OK
  29.  Installing CHANGELOG: OK
  30.  Installing FAQ: OK
  31.  Installing LICENSE: OK
  32.  Installing README: OK
  33.  Installing language support files: OK
  34.  Installing rkhunter: OK
  35.  Installing rkhunter.conf: OK
  36. Installation complete

/usr/local/rkhunter/bin/rkhunter –help

  1. Usage: rkhunter {--check | --unlock | --update | --versioncheck |
  2.                  --propupd [{filename | directory | package name},...] |
  3.                  --list [{tests | {lang | languages} | rootkits | perl}] |
  4.                  --config-check | --version | --help} [options]
  5.  
  6. Current options are:
  7.          --append-log                  Append to the logfile, do not overwrite
  8.          --bindir <directory>...       Use the specified command directories
  9.      -c, --check                       Check the local system
  10.      -C, --config-check                Check the configuration file(s), then exit
  11.   --cs2, --color-set2                  Use the second color set for output
  12.          --configfile <file>           Use the specified configuration file
  13.          --cronjob                     Run as a cron job
  14.                                        (implies -c, --sk and --nocolors options)
  15.          --dbdir <directory>           Use the specified database directory
  16.          --debug                       Debug mode
  17.                                        (Do not use unless asked to do so)
  18.          --disable <test>[,<test>...]  Disable specific tests
  19.                                        (Default is to disable no tests)
  20.          --display-logfile             Display the logfile at the end
  21.          --enable  <test>[,<test>...]  Enable specific tests
  22.                                        (Default is to enable all tests)
  23.          --hash {MD5 | SHA1 | SHA224 | SHA256 | SHA384 | SHA512 |
  24.                  NONE | <command>}     Use the specified file hash function
  25.                                        (Default is SHA1, then MD5)
  26.      -h, --help                        Display this help menu, then exit
  27.  --lang, --language <language>         Specify the language to use
  28.                                        (Default is English)
  29.          --list [tests | languages |   List the available test names, languages, checked
  30.                  rootkits | perl]      for rootkits, or perl module status, then exit
  31.      -l, --logfile [file]              Write to a logfile
  32.                                        (Default is /var/log/rkhunter.log)
  33.          --noappend-log                Do not append to the logfile, overwrite it
  34.          --nocf                        Do not use the configuration file entries
  35.                                        for disabled tests (only valid with --disable)
  36.          --nocolors                    Use black and white output
  37.          --nolog                       Do not write to a logfile
  38. --nomow, --no-mail-on-warning          Do not send a message if warnings occur
  39.    --ns, --nosummary                   Do not show the summary of check results
  40.  --novl, --no-verbose-logging          No verbose logging
  41.          --pkgmgr {RPM | DPKG | BSD |  Use the specified package manager to obtain or
  42.                    SOLARIS | NONE}     verify file property values. (Default is NONE)
  43.          --propupd [file | directory | Update the entire file properties database,
  44.                     package]...        or just for the specified entries
  45.      -q, --quiet                       Quiet mode (no output at all)
  46.   --rwo, --report-warnings-only        Show only warning messages
  47.      -r, --rootdir <directory>         Use the specified root directory
  48.    --sk, --skip-keypress               Don't wait for a keypress after each test
  49.          --summary                     Show the summary of system check results
  50.                                        (This is the default)
  51.          --syslog [facility.priority]  Log the check start and finish times to syslog
  52.                                        (Default level is authpriv.notice)
  53.          --tmpdir <directory>          Use the specified temporary directory
  54.          --unlock                      Unlock (remove) the lock file
  55.          --update                      Check for updates to database files
  56.    --vl, --verbose-logging             Use verbose logging (on by default)
  57.      -V, --version                     Display the version number, then exit
  58.          --versioncheck                Check for latest version of program
  59.      -x, --autox                       Automatically detect if X is in use
  60.      -X, --no-autox                    Do not automatically detect if X is in use

更新db
/usr/local/rkhunter/bin/rkhunter –update

  1. [ Rootkit Hunter version 1.3.8 ]
  2.  
  3. Checking rkhunter data files...
  4.   Checking file mirrors.dat                                  [ No update ]
  5.   Checking file programs_bad.dat                             [ Updated ]
  6.   Checking file backdoorports.dat                            [ No update ]
  7.   Checking file suspscan.dat                                 [ No update ]
  8.   Checking file i18n/cn                                      [ No update ]
  9.   Checking file i18n/de                                      [ No update ]
  10.   Checking file i18n/en                                      [ No update ]
  11.   Checking file i18n/zh                                      [ No update ]
  12.   Checking file i18n/zh.utf8                                 [ No update ]

ll /usr/local/rkhunter/var/lib/rkhunter/db/

  1. total 20
  2. -rw-r----- 1 root root 1055 Apr  9 13:43 backdoorports.dat
  3. drwxr-x--- 2 root root 4096 Apr  9 13:43 i18n
  4. -rw-r----- 1 root root   58 Apr  9 13:44 mirrors.dat
  5. -rw-r----- 1 root root 3203 Apr  9 13:44 programs_bad.dat
  6. -rw-r----- 1 root root 1904 Apr  9 13:43 suspscan.dat

在系统“干净”的时候产生对比文件
/usr/local/rkhunter/bin/rkhunter –propupd
[ Rootkit Hunter version 1.3.8 ]
File created: searched for 164 files, found 135

多了rkhunter.dat,rkhunter_prop_list.dat文件
ll /usr/local/rkhunter/var/lib/rkhunter/db/

  1. total 68
  2. -rw-r----- 1 root root  1055 Apr  9 13:43 backdoorports.dat
  3. drwxr-x--- 2 root root  4096 Apr  9 13:43 i18n
  4. -rw-r----- 1 root root    58 Apr  9 13:44 mirrors.dat
  5. -rw-r----- 1 root root  3203 Apr  9 13:44 programs_bad.dat
  6. -rw-r----- 1 root root 12958 Apr  9 13:47 rkhunter.dat
  7. -rw-r----- 1 root root 31798 Apr  9 13:47 rkhunter_prop_list.dat
  8. -rw-r----- 1 root root  1904 Apr  9 13:43 suspscan.dat

二.开始检查,有问题会红色的Warning 提示
/usr/local/rkhunter/bin/rkhunter -c –sk

  1. [ Rootkit Hunter version 1.3.8 ]
  2.  
  3. Checking system commands...
  4.  
  5.   Performing 'strings' command checks
  6.     Checking 'strings' command                               [ OK ]
  7.  
  8.   Performing 'shared libraries' checks
  9.     Checking for preloading variables                        [ None found ]
  10.     Checking for preloaded libraries                         [ None found ]
  11.     Checking LD_LIBRARY_PATH variable                        [ OK ]
  12.  
  13.   Performing file properties checks
  14.     Checking for prerequisites                               [ OK ]
  15.     /sbin/chkconfig                                          [ OK ]
  16.     /sbin/depmod                                             [ OK ]
  17.     /sbin/fsck                                               [ OK ]
  18.     /sbin/fuser                                              [ OK ]
  19.     /sbin/ifconfig                                           [ OK ]
  20.     /sbin/ifdown                                             [ Warning ]
  21.     /sbin/ifup                                               [ Warning ]
  22.     /sbin/init                                               [ OK ]
  23.     /sbin/insmod                                             [ OK ]
  24.     /sbin/ip                                                 [ OK ]
  25.     /sbin/kudzu                                              [ OK ]
  26.     /sbin/lsmod                                              [ OK ]
  27.     /sbin/modinfo                                            [ OK ]
  28.     /sbin/modprobe                                           [ OK ]
  29.     /sbin/nologin                                            [ OK ]
  30.     /sbin/rmmod                                              [ OK ]
  31.     /sbin/route                                              [ OK ]
  32.     /sbin/rsyslogd                                           [ OK ]
  33.     /sbin/runlevel                                           [ OK ]
  34.     /sbin/sulogin                                            [ OK ]
  35.     /sbin/sysctl                                             [ OK ]
  36.     /sbin/syslogd                                            [ OK ]
  37.     /bin/awk                                                 [ OK ]
  38.     /bin/basename                                            [ OK ]
  39.     /bin/bash                                                [ OK ]
  40.     /bin/cat                                                 [ OK ]
  41.     /bin/chmod                                               [ OK ]
  42.     /bin/chown                                               [ OK ]
  43.     /bin/cp                                                  [ OK ]
  44.     /bin/csh                                                 [ OK ]
  45.     /bin/cut                                                 [ OK ]
  46.     /bin/date                                                [ OK ]
  47.     /bin/df                                                  [ OK ]
  48.     /bin/dmesg                                               [ OK ]
  49.     /bin/echo                                                [ OK ]
  50.     /bin/ed                                                  [ OK ]
  51.     /bin/egrep                                               [ OK ]
  52.     /bin/env                                                 [ OK ]
  53.     /bin/fgrep                                               [ OK ]
  54.     /bin/grep                                                [ OK ]
  55.     /bin/kill                                                [ OK ]
  56.     /bin/logger                                              [ OK ]
  57.     /bin/login                                               [ OK ]
  58.     /bin/ls                                                  [ OK ]
  59.     /bin/mail                                                [ OK ]
  60.     /bin/mktemp                                              [ OK ]
  61.     /bin/more                                                [ OK ]
  62.     /bin/mount                                               [ OK ]
  63.     /bin/mv                                                  [ OK ]
  64.     /bin/netstat                                             [ OK ]
  65.     /bin/ps                                                  [ OK ]
  66.     /bin/pwd                                                 [ OK ]
  67.     /bin/rpm                                                 [ OK ]
  68.     /bin/sed                                                 [ OK ]
  69.     /bin/sh                                                  [ OK ]
  70.     /bin/sort                                                [ OK ]
  71.     /bin/su                                                  [ OK ]
  72.     /bin/touch                                               [ OK ]
  73.     /bin/uname                                               [ OK ]
  74.     /bin/gawk                                                [ OK ]
  75.     /bin/tcsh                                                [ OK ]
  76.     /usr/sbin/adduser                                        [ OK ]
  77.     /usr/sbin/chroot                                         [ OK ]
  78.     /usr/sbin/groupadd                                       [ OK ]
  79.     /usr/sbin/groupdel                                       [ OK ]
  80.     /usr/sbin/groupmod                                       [ OK ]
  81.     /usr/sbin/grpck                                          [ OK ]
  82.     /usr/sbin/kudzu                                          [ OK ]
  83.     /usr/sbin/lsof                                           [ OK ]
  84.     /usr/sbin/prelink                                        [ OK ]
  85.     /usr/sbin/pwck                                           [ OK ]
  86.     /usr/sbin/sestatus                                       [ OK ]
  87.     /usr/sbin/tcpd                                           [ OK ]
  88.     /usr/sbin/useradd                                        [ OK ]
  89.     /usr/sbin/userdel                                        [ OK ]
  90.     /usr/sbin/usermod                                        [ OK ]
  91.     /usr/sbin/vipw                                           [ OK ]
  92.     /usr/bin/awk                                             [ OK ]
  93.     /usr/bin/chattr                                          [ OK ]
  94.     /usr/bin/curl                                            [ OK ]
  95.     /usr/bin/cut                                             [ OK ]
  96.     /usr/bin/diff                                            [ OK ]
  97.     /usr/bin/dirname                                         [ OK ]
  98.     /usr/bin/du                                              [ OK ]
  99.     /usr/bin/env                                             [ OK ]
  100.     /usr/bin/file                                            [ OK ]
  101.     /usr/bin/find                                            [ OK ]
  102.     /usr/bin/groups                                          [ Warning ]
  103.     /usr/bin/head                                            [ OK ]
  104.     /usr/bin/id                                              [ OK ]
  105.     /usr/bin/kill                                            [ OK ]
  106.     /usr/bin/killall                                         [ OK ]
  107.     /usr/bin/last                                            [ OK ]
  108.     /usr/bin/lastlog                                         [ OK ]
  109.     /usr/bin/ldd                                             [ Warning ]
  110.     /usr/bin/less                                            [ OK ]
  111.     /usr/bin/locate                                          [ OK ]
  112.     /usr/bin/logger                                          [ OK ]
  113.     /usr/bin/lsattr                                          [ OK ]
  114.     /usr/bin/md5sum                                          [ OK ]
  115.     /usr/bin/newgrp                                          [ OK ]
  116.     /usr/bin/passwd                                          [ OK ]
  117.     /usr/bin/perl                                            [ OK ]
  118.     /usr/bin/pgrep                                           [ OK ]
  119.     /usr/bin/pstree                                          [ OK ]
  120.     /usr/bin/readlink                                        [ OK ]
  121.     /usr/bin/runcon                                          [ OK ]
  122.     /usr/bin/sha1sum                                         [ OK ]
  123.     /usr/bin/sha224sum                                       [ OK ]
  124.     /usr/bin/sha256sum                                       [ OK ]
  125.     /usr/bin/sha384sum                                       [ OK ]
  126.     /usr/bin/sha512sum                                       [ OK ]
  127.     /usr/bin/size                                            [ OK ]
  128.     /usr/bin/stat                                            [ OK ]
  129.     /usr/bin/strace                                          [ OK ]
  130.     /usr/bin/strings                                         [ OK ]
  131.     /usr/bin/sudo                                            [ OK ]
  132.     /usr/bin/tail                                            [ OK ]
  133.     /usr/bin/test                                            [ OK ]
  134.     /usr/bin/top                                             [ OK ]
  135.     /usr/bin/tr                                              [ OK ]
  136.     /usr/bin/uniq                                            [ OK ]
  137.     /usr/bin/users                                           [ OK ]
  138.     /usr/bin/vmstat                                          [ OK ]
  139.     /usr/bin/w                                               [ OK ]
  140.     /usr/bin/watch                                           [ OK ]
  141.     /usr/bin/wc                                              [ OK ]
  142.     /usr/bin/wget                                            [ OK ]
  143.     /usr/bin/whatis                                          [ Warning ]
  144.     /usr/bin/whereis                                         [ OK ]
  145.     /usr/bin/which                                           [ OK ]
  146.     /usr/bin/who                                             [ OK ]
  147.     /usr/bin/whoami                                          [ OK ]
  148.     /usr/bin/gawk                                            [ OK ]
  149.     /usr/local/rkhunter/etc/rkhunter.conf                    [ OK ]
  150.  
  151. Checking for rootkits...
  152.  
  153.   Performing check of known rootkit files and directories
  154.     55808 Trojan - Variant A                                 [ Not found ]
  155.     ADM Worm                                                 [ Not found ]
  156.     AjaKit Rootkit                                           [ Not found ]
  157.     Adore Rootkit                                            [ Not found ]
  158.     aPa Kit                                                  [ Not found ]
  159.     Apache Worm                                              [ Not found ]
  160.     Ambient (ark) Rootkit                                    [ Not found ]
  161.     Balaur Rootkit                                           [ Not found ]
  162.     BeastKit Rootkit                                         [ Not found ]
  163.     beX2 Rootkit                                             [ Not found ]
  164.     BOBKit Rootkit                                           [ Not found ]
  165.     cb Rootkit                                               [ Not found ]
  166.     CiNIK Worm (Slapper.B variant)                           [ Not found ]
  167.     Danny-Boy's Abuse Kit                                    [ Not found ]
  168.     Devil RootKit                                            [ Not found ]
  169.     Dica-Kit Rootkit                                         [ Not found ]
  170.     Dreams Rootkit                                           [ Not found ]
  171.     Duarawkz Rootkit                                         [ Not found ]
  172.     Enye LKM                                                 [ Not found ]
  173.     Flea Linux Rootkit                                       [ Not found ]
  174.     FreeBSD Rootkit                                          [ Not found ]
  175.     Fu Rootkit                                               [ Not found ]
  176.     Fuck`it Rootkit                                          [ Not found ]
  177.     GasKit Rootkit                                           [ Not found ]
  178.     Heroin LKM                                               [ Not found ]
  179.     HjC Kit                                                  [ Not found ]
  180.     ignoKit Rootkit                                          [ Not found ]
  181.     iLLogiC Rootkit                                          [ Not found ]
  182.     IntoXonia-NG Rootkit                                     [ Not found ]
  183.     Irix Rootkit                                             [ Not found ]
  184.     Kitko Rootkit                                            [ Not found ]
  185.     Knark Rootkit                                            [ Not found ]
  186.     ld-linuxv.so Rootkit                                     [ Not found ]
  187.     Li0n Worm                                                [ Not found ]
  188.     Lockit / LJK2 Rootkit                                    [ Not found ]
  189.     Mood-NT Rootkit                                          [ Not found ]
  190.     MRK Rootkit                                              [ Not found ]
  191.     Ni0 Rootkit                                              [ Not found ]
  192.     Ohhara Rootkit                                           [ Not found ]
  193.     Optic Kit (Tux) Worm                                     [ Not found ]
  194.     Oz Rootkit                                               [ Not found ]
  195.     Phalanx Rootkit                                          [ Not found ]
  196.     Phalanx2 Rootkit                                         [ Not found ]
  197.     Phalanx2 Rootkit (extended tests)                        [ Not found ]
  198.     Portacelo Rootkit                                        [ Not found ]
  199.     R3dstorm Toolkit                                         [ Not found ]
  200.     RH-Sharpe's Rootkit                                      [ Not found ]
  201.     RSHA's Rootkit                                           [ Not found ]
  202.     Scalper Worm                                             [ Not found ]
  203.     Sebek LKM                                                [ Not found ]
  204.     Shutdown Rootkit                                         [ Not found ]
  205.     SHV4 Rootkit                                             [ Not found ]
  206.     SHV5 Rootkit                                             [ Not found ]
  207.     Sin Rootkit                                              [ Not found ]
  208.     Slapper Worm                                             [ Not found ]
  209.     Sneakin Rootkit                                          [ Not found ]
  210.     'Spanish' Rootkit                                        [ Not found ]
  211.     Suckit Rootkit                                           [ Not found ]
  212.     SunOS Rootkit                                            [ Not found ]
  213.     SunOS / NSDAP Rootkit                                    [ Not found ]
  214.     Superkit Rootkit                                         [ Not found ]
  215.     TBD (Telnet BackDoor)                                    [ Not found ]
  216.     TeLeKiT Rootkit                                          [ Not found ]
  217.     T0rn Rootkit                                             [ Not found ]
  218.     trNkit Rootkit                                           [ Not found ]
  219.     Trojanit Kit                                             [ Not found ]
  220.     Tuxtendo Rootkit                                         [ Not found ]
  221.     URK Rootkit                                              [ Not found ]
  222.     Vampire Rootkit                                          [ Not found ]
  223.     VcKit Rootkit                                            [ Not found ]
  224.     Volc Rootkit                                             [ Not found ]
  225.     Xzibit Rootkit                                           [ Not found ]
  226.     X-Org SunOS Rootkit                                      [ Not found ]
  227.     zaRwT.KiT Rootkit                                        [ Not found ]
  228.     ZK Rootkit                                               [ Not found ]
  229.  
  230.   Performing additional rootkit checks
  231.     Suckit Rookit additional checks                          [ OK ]
  232.     Checking for possible rootkit files and directories      [ None found ]
  233.     Checking for possible rootkit strings                    [ None found ]
  234.  
  235.   Performing malware checks
  236.     Checking running processes for suspicious files          [ None found ]
  237.     Checking for login backdoors                             [ None found ]
  238.     Checking for suspicious directories                      [ None found ]
  239.     Checking for sniffer log files                           [ None found ]
  240.  
  241.   Performing Linux specific checks
  242.     Checking loaded kernel modules                           [ OK ]
  243.     Checking kernel module names                             [ OK ]
  244.  
  245. Checking the network...
  246.  
  247.   Performing checks on the network ports
  248.     Checking for backdoor ports                              [ None found ]
  249.  
  250.   Performing checks on the network interfaces
  251.     Checking for promiscuous interfaces                      [ None found ]
  252.  
  253. Checking the local host...
  254.  
  255.   Performing system boot checks
  256.     Checking for local host name                             [ Found ]
  257.     Checking for system startup files                        [ Found ]
  258.     Checking system startup files for malware                [ None found ]
  259.  
  260.   Performing group and account checks
  261.     Checking for passwd file                                 [ Found ]
  262.     Checking for root equivalent (UID 0) accounts            [ None found ]
  263.     Checking for passwordless accounts                       [ None found ]
  264.     Checking for passwd file changes                         [ None found ]
  265.     Checking for group file changes                          [ None found ]
  266.     Checking root account shell history files                [ OK ]
  267.  
  268.   Performing system configuration file checks
  269.     Checking for SSH configuration file                      [ Found ]
  270.     Checking if SSH root access is allowed                   [ Not allowed ]
  271.     Checking if SSH protocol v1 is allowed                   [ Not allowed ]
  272.     Checking for running syslog daemon                       [ Found ]
  273.     Checking for syslog configuration file                   [ Found ]
  274.     Checking if syslog remote logging is allowed             [ Not allowed ]
  275.  
  276.   Performing filesystem checks
  277.     Checking /dev for suspicious file types                  [ None found ]
  278.     Checking for hidden files and directories                [ Warning ]
  279.  
  280. Checking application versions...
  281.  
  282.     Checking version of GnuPG                                [ OK ]
  283.     Checking version of OpenSSL                              [ Warning ]
  284.     Checking version of Procmail MTA                         [ OK ]
  285.     Checking version of OpenSSH                              [ Warning ]
  286.  
  287.  
  288. System checks summary
  289. =====================
  290.  
  291. File properties checks...
  292.     Files checked: 135
  293.     Suspect files: 5
  294.  
  295. Rootkit checks...
  296.     Rootkits checked : 253
  297.     Possible rootkits: 0
  298.  
  299. Applications checks...
  300.     Applications checked: 4
  301.     Suspect applications: 2
  302.  
  303. The system checks took: 1 minute and 38 seconds
  304.  
  305. All results have been written to the log file (/var/log/rkhunter.log)
  306.  
  307. One or more warnings have been found while checking the system.
  308. Please check the log file (/var/log/rkhunter.log)

相应产生的日志
# cat /var/log/rkhunter.log |grep Warning

  1. [13:52:20]   /sbin/ifdown                                    [ Warning ]
  2. [13:52:20] Warning: The command '/sbin/ifdown' has been replaced by a script: /sbin/ifdown: Bourne-Again shell script text executable
  3. [13:52:20]   /sbin/ifup                                      [ Warning ]
  4. [13:52:20] Warning: The command '/sbin/ifup' has been replaced by a script: /sbin/ifup: Bourne-Again shell script text executable
  5. [13:52:34]   /usr/bin/groups                                 [ Warning ]
  6. [13:52:34] Warning: The command '/usr/bin/groups' has been replaced by a script: /usr/bin/groups: Bourne shell script text executable
  7. [13:52:35]   /usr/bin/ldd                                    [ Warning ]
  8. [13:52:35] Warning: The command '/usr/bin/ldd' has been replaced by a script: /usr/bin/ldd: Bourne shell script text executable
  9. [13:52:39]   /usr/bin/whatis                                 [ Warning ]
  10. [13:52:39] Warning: The command '/usr/bin/whatis' has been replaced by a script: /usr/bin/whatis: Bourne shell script text executable
  11. [13:53:44]   Checking for hidden files and directories       [ Warning ]
  12. [13:53:44] Warning: Hidden directory found: /dev/.udev
  13. [13:53:44] Warning: Hidden file found: /usr/share/man/man1/..1.gz: gzip compressed data, from Unix, max compression
  14. [13:53:44] Warning: Hidden file found: /usr/bin/.fipscheck.hmac: ASCII text
  15. [13:53:44] Warning: Hidden file found: /usr/bin/.ssh.hmac: ASCII text
  16. [13:53:44] Warning: Hidden file found: /usr/sbin/.sshd.hmac: ASCII text
  17. [13:53:45]   Checking version of OpenSSL                     [ Warning ]
  18. [13:53:45] Warning: Application 'openssl', version '0.9.8e', is out of date, and possibly a security risk.
  19. [13:53:45]   Checking version of OpenSSH                     [ Warning ]
  20. [13:53:45] Warning: Application 'sshd', version '4.3p2', is out of date, and possibly a security risk.

三.修正误报
可以看到上面信息基本为误报

还有更新了部分包可能会因起No hash value found错误;
grep是安装nginx时更新了pcre
amd是安装sasl认证

  1. Warning: No hash value found for file '/bin/egrep' in the rkhunter.dat file.
  2. Warning: No hash value found for file '/bin/fgrep' in the rkhunter.dat file.
  3. Warning: No hash value found for file '/bin/grep' in the rkhunter.dat file.
  4. Warning: No hash value found for file '/usr/sbin/amd' in the rkhunter.dat file.

使用prelink可以查看

  1. # prelink --verify --sha /bin/egrep
  2. prelink: /bin/egrep: at least one of file's dependencies has changed since prelinking
  3. # prelink /bin/egrep
  4. prelink: /usr/local/lib/libpcre.so.0.0.1 is not present in any config file directories, nor was specified on command line
  5. # prelink --verify --sha /usr/sbin/amd
  6. prelink: /usr/sbin/amd: at least one of file's dependencies has changed since prelinking
  7. # prelink /usr/sbin/amd
  8. prelink: /usr/local/sasl2/lib/libsasl2.so.2.0.22 is not present in any config file directories, nor was specified on command line
  9. Aborted

cp /usr/local/rkhunter/etc/rkhunter.conf{,.bak}
网上部分脚本已失效,我对此作了些修改

  1. sed -i 's/#SCRIPTWHITELIST=\/sbin\/ifup/SCRIPTWHITELIST=\/sbin\/ifup/' /opt/rthunter/etc/rkhunter.conf
  2. sed -i 's/#SCRIPTWHITELIST=\/sbin\/ifdown/SCRIPTWHITELIST=\/sbin\/ifdown/' /opt/rthunter/etc/rkhunter.conf
  3.  
  4. sed -i '/#SCRIPTWHITELIST="\/sbin\/ifup/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  5. sed -i '/#SCRIPTWHITELIST="\/usr\/bin\/groups"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  6. sed -i '/#ALLOWHIDDENDIR="\/etc\/.java"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  7. sed -i '/#ALLOWHIDDENDIR="\/dev\/.mdadm"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  8. sed -i '/#ALLOWHIDDENDIR="\/dev\/.udev/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  9. sed -i '/#ALLOWHIDDENFILE="\/usr\/share\/man\/man1\/..1.gz"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  10. sed -i '/#ALLOWHIDDENFILE="\/usr\/bin\/.fipscheck.hmac"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  11. sed -i '/#ALLOWHIDDENFILE="\/usr\/bin\/.ssh.hmac"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  12. sed -i '/#ALLOWHIDDENFILE="\/usr\/sbin\/.sshd.hmac"/ {s/^#//g}' /usr/local/rkhunter/etc/rkhunter.conf
  13. echo 'IGNORE_PRELINK_DEP_ERR="/bin/egrep /bin/fgrep /bin/grep /usr/sbin/amd /usr/bin/less" ' >> /usr/local/rkhunter/etc/rkhunter.conf
  14. echo 'SCRIPTWHITELIST=/usr/bin/ldd' >> /usr/local/rkhunter/etc/rkhunter.conf
  15. echo 'SCRIPTWHITELIST=/usr/bin/whatis' >> /usr/local/rkhunter/etc/rkhunter.conf
  16. echo 'SCRIPTWHITELIST=/usr/bin/GET' >> /usr/local/rkhunter/etc/rkhunter.conf
  17. echo 'ALLOWHIDDENFILE=/usr/share/man/man5/.k5login.5.gz' >> /usr/local/rkhunter/etc/rkhunter.conf
  18. echo 'APP_WHITELIST="openssl:0.9.8e sshd:4.3p2"' >> /usr/local/rkhunter/etc/rkhunter.conf
  19.  
  20. echo 'ALLOWDEVFILE="/dev/shm/nginx.pid"' >> /usr/local/rkhunter/etc/rkhunter.conf
  21.  
  22.  
  23. #注意openssl和sshd的版本号

再次更新和检测
/usr/local/rkhunter/bin/rkhunter –propupd

  1. [ Rootkit Hunter version 1.3.8 ]
  2. File updated: searched for 164 files, found 135

跳过按键只输出warning,不再有显示
/usr/local/rkhunter/bin/rkhunter -c –sk –rwo

四.自动报告
每天5点检测并发送通知邮件
vi /var/spool/cron/root

  1. 3 5 * * * (/usr/local/rkhunter/bin/rkhunter --cronjob -l --nomow --rwo | mail -s "[rkhunter] report `hostname` `date`" root@localhost)

参考:http://sourceforge.net/apps/trac/rkhunter/wiki/SPRKH#Introduction

===============2012-4-18更新
修正应更新而产生的误报,运行时检查文件存,如果文件不存在就不要加在里面

  1. ALLOWDEVFILE="/dev/shm/nginx.pid"
  2. IGNORE_PRELINK_DEP_ERR="/bin/egrep /bin/fgrep /bin/grep /usr/sbin/amd /usr/bin/less"

hdparm 的Xzibit Rootkit

  1. [15:29:12] Warning: Checking for possible rootkit strings    [ Warning ]
  2. [15:29:12]          Found string 'hdparm' in file '/etc/rc.d/rc.sysinit'. Possible rootkit: Xzibit Rootkit
  1. RTKT_FILE_WHITELIST="/etc/rc.d/rc.sysinit:hdparm"

===============2012-4-28更新
修正The file properties have changed
rkhunter在crontab中运行和手功运行有差异
就算你在配置文件中写了IGNORE_PRELINK_DEP_ERR,在日志中还是会有
[05:45:10] /usr/bin/less [ Warning ]
[05:45:10] Warning: The file properties have changed:

prelink /usr/bin/less

  1. prelink: /usr/local/lib/libpcre.so.0.0.1 is not present in any config file directories, nor was specified on command line

#增加库链接
echo ‘-l /usr/local/lib’ >> /etc/prelink.conf
#再次执行就没错了,把每个prelink出错的命令都运行下
prelink /usr/bin/less

#修改配置文件将IGNORE_PRELINK_DEP_ERR 提到USER_FILEPROP_FILES_DIRS下面
#再rkhunter –propupd更新
#使用conrtab调试不再报错

Posted in 安全.

Tagged with , .


One Response

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. ㄨ销声匿迹、Linux says

    嗯嗯,,不错,,话说rootkit太恶心了,,,,很难清理干净,,,



Some HTML is OK

or, reply to this post via trackback.