Rootkit Hunter
http://sourceforge.net/projects/rkhunter/?source=dlp
中文名叫”Rootkit猎手”, 可以发现大约58个已知的rootkits和一些嗅探器和后门程序. 它通过执行一系列的脚本来确认你的机器是否已经感染rootkits. 比如检查rootkits使用的基本文件, 可执行二进制文件的错误文件权限, 检测内核模块等等. Rootkit Hunter由Michael Boelen开发, 是开源(GPL)软件.
安装Rootkit Hunter非常简单, 从网站软件包, 解压, 然后以root用户身份运行installer.sh脚本.
成功安装后 , 你可以通过运行下面命令来检测你的机器是否已感染 rootkit:
# rkhunter -c
二进制可执行文件 rkhunter 被安装到 /usr/local/bin 目录 , 你需要以 root 身份来运行该程序 . 程序运行后 , 它主要执行下面一系列的 :
1. MD5 校验测试 , 检测任何文件是否改动 .
2. 检测 rootkits 使用的二进制和系统工具文件 .
3. 检测特洛伊木马程序的特征码 .
4. 检测大多常用程序的文件异常属性 .
5. 执行一些系统相关的测试 - 因为 rootkit hunter 可支持多个系统平台 .
6. 扫描任何混杂模式下的接口和后门程序常用的端口 .
7. 检测如 /etc/rc.d/ 目录下的所有配置文件 , 日志文件 , 任何异常的隐藏文件等等 . 例如 , 在检测 /dev/.udev 和 /etc/.pwd.lock 文件时候 , 我的系统被警告 .
8. 对一些使用常用端口的应用程序进行版本测试 . 如 : Apache Web Server, Procmail 等 .
完成上面检测后 , 你的屏幕会显示扫描结果 : 可能被感染的文件 , 不正确的 MD5 校验文件和已被感染的应用程序 .
在我的机器上 , 扫描用了 175 秒 . 缺省情况下 , rkhunter 对系统进行已知的一些检测 . 但是你也可以通过使用 ’–scan-knownbad-files’ 来执行未知的错误检测 :
# rkhunter -c –scan-knownbad-files
rkhunter 是通过一个含有 rootkit 名字的数据库来检测系统的 rootkits 漏洞 , 所以经常更新该数据库非常重要 , 你可以通过下面命令来更新该数据库 :
# rkhunter –update
当然最好是通过 cron job 定期执行上面的命令 , 你需要用 root 用户添加下面命令到 crontab 文件 :
59 23 1 * * echo “Rkhunter update check in progress”;/usr/local/bin/rkhunter –update
上面一行告诉 cron 程序在每月第一天的下午 11:59 分执行 rkhunter 数据库更新工作 , 而且你的 root 用户会收到一封结果通知邮件 .
Chkrootkit
http://www.chkrootkit.org/download.htm
Chkrootkit由Nelson Murilo和Klaus Steding Jessen开发. 与Rootkit Hunter程序不同的是, chrootkit不需要installer安装程序, 你只需解开软件包后执行chrootkit即可, 然后将对一些二进制文件进行一系列的测试, 除了与Rootkit Hunter相同的测试外, Chkrootkit还对一些重要的二进制文件进行检测, 比如搜索入侵者已更改日志文件的特征信息等等. 而且, 如果你想列出已经测试的所有项目, 你可以运行带有’-l’参数的命令:
# chkrootkit -l
在测试过程中, 如果你想在屏幕上看到更多有用的信息, 执行下面命令:
# chkrootkit -x
chkrootkit将在专家模式(expert mode)运行.