rkhunter简介:

中文名叫”Rootkit猎手”,

rkhunter是Linux系统平台下的一款开源***检测工具,具有非常全面的扫描范围,除了能够检测各种已知的rootkit特征码以外,还支持端口扫描、常用程序文件的变动情况检查。

rkhunter的官方网站位于http://www.rootkit.nl/,目前最新的版本是rkhunter-1.4.0。


rootkit是什么?

Rootkit是什么?估计很多朋友并不明白,简单的说,Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息,比较多见到的是Rootkit一般都和***、后门等其他恶意程序结合使用。

Rootkit通过加载特殊的驱动,修改系统内核,进而达到隐藏信息的目的。


1.下载、安装rkhunter

下载

http://jaist.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.0/rkhunter-1.4.0.tar.gz


安装rkhunter

执行命令:

tar -xvf rkhunter-1.4.0.tar.gz

cd rkhunter-1.4.0

./installer.sh --install


2.为基本系统程序建立校对样本,建议系统安装完成后就建立。

执行命令:

rkhunter --propupd

ls /var/lib/rkhunter/db/rkhunter.dat #样本文件位置


3.运行rkhunter检查系统


它主要执行下面一系列的测试:

1. MD5校验测试, 检测任何文件是否改动.

2. 检测rootkits使用的二进制和系统工具文件.

3. 检测特洛伊***程序的特征码.

4. 检测大多常用程序的文件异常属性.

5. 执行一些系统相关的测试 - 因为rootkit hunter可支持多个系统平台.

6. 扫描任何混杂模式下的接口和后门程序常用的端口.

7. 检测如/etc/rc.d/目录下的所有配置文件, 日志文件, 任何异常的隐藏文件等等. 例如, 在检测/dev/.udev和/etc/.pwd.lock文件时候, 我的系统被警告.

8. 对一些使用常用端口的应用程序进行版本测试. 如: Apache Web Server, Procmail等.


执行命令:

rkhunter --check


如果您不想要每个部分都以 Enter 来继续,想要让程序自动持续执行,可以使用:

/usr/local/bin/rkhunter --check --sk


[ Rootkit Hunter version 1.4.0 ]

Checking system commands...

Performing 'strings' command checks

Checking 'strings' command    [ OK ]

Performing 'shared libraries' checks

Checking for preloading variables   [ None found ]

Checking for preloaded libraries    [ None found ]

Checking LD_LIBRARY_PATH variable   [ Not found ]

中间内容省略。。。。。

The system checks took: 2 minutes and 39 seconds

All results have been written to the log file (/var/log/rkhunter.log)

One or more warnings have been found while checking the system.

Please check the log file (/var/log/rkhunter.log) #检测日志文件位置


4.在线升级rkhunter

rkhunter是通过一个含有rootkit名字的数据库来检测系统的rootkits漏洞, 所以经常更新该数据库非常重要, 你可以通过下面命令来更新该数据库:


执行命令:

rkhunter --update


……//省略部分信息


5.检测最新版本


让 rkhunter 保持在最新的版本;


执行命令:

rkhunter --versioncheck


6.一些解决思路


如果您的系统经过 rkhunter 的检测之后,却发现很多的『红字』时,该怎么办?很简单, 可以参考这个网页提供的方法:

http://www.rootkit.nl/articles/rootkit_hunter_faq.html

基本上,官方网站与一般网管老手的建议都一样,如果被 rootkit 之类的程序包***后 ( 也就是上一节的检测表中的第二部分所***时 ),那么最好最好直接重新安装系统, 不要存在说可以移除 rootkit 或者***程序的幻想,因为,『隐藏』本来就是 rootkit 与***程序的拿手好戏! 我们不知道到底这个 rootkit 或者***程序有多剽悍,为了保险起见,还是重灌系统吧!如何重灌?简单的说:

1.将原主机的网络线拔除;

2.备份您的数据,最好备份成两部分,一部份是全部的系统内容,越详尽越好,包括 binary files 与 logfile 等等, 至于另一部份则可以考虑仅备份重要的数据文件即可!

3.将上个步骤的数据备份(仅重要数据部分!)进行整体的检查,察看是否有怪异的数据存在(这部分可能会花去不少时间!)

4.重新安装一部完整的系统,这包括:

o仅安装需要的套件在服务器上面;

o先进行 简单的防火墙 设定后才进行联机;

o以 APT/YUM 之类的工具进行在线更新;

o执行类似 rkhunter/nessus 之类的软件,检验系统是否处在较为安全的状态

5.将原本的重要数据移动至上个步骤安装好的系统当中,并启动原本服务器上面的各项服务;

6.以 rkhunter/nessus 之类的软件检验系统是否处在较为安全的环境,并且加强防火墙的机制!

7.最后,将原本完整备份的数据拿出来进行分析,尤其是 logfile 部分,试图找出 cracker 是藉由那个服务?那个时间点? 以那个远程 IP 联机进入本机等等的信息,并针对该信息研拟预防的方法,并应用在已经运作的机器上。



参考资料:

http://www.sybell.com.cn/jszx/509.html

http://blog.csdn.net/nengyu/article/details/1604646

http://linux.vbird.org/linux_security/0420rkhunter.php