欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux系统rootkit恶意软件安全检测工具rkhunter安装部署、使用详解

程序员文章站 2022-09-21 10:47:24
rkhunter简介:     中文名叫”Rootkit猎手”,    rkhunter是Linux系统平台下的一款开...
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.2cto.com/Article/201311/258184.html

 

http://www.2cto.com/Article/201311/258185.html

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