目录
1 概述
chkrootkit 是一种开源工具,旨在帮助检测 Linux 系统中是否存在 rootkit 和恶意软件。rootkit 是一种用于隐藏恶意活动的恶意软件,它能够有效地掩盖自身和其他恶意行为,使攻击者可以在受感染的系统上保持持久的访问权限。它通过搜索常见的 rootkit 文件和代码,包括 Linux 内核模块 (LKM) 和用户空间 rootkit,来识别潜在的威胁。当 chkrootkit 扫描完成后,它会生成一个报告,列出任何被发现的可疑文件、隐藏进程和异常端口等。报告提供了识别码、文件路径和详细描述,帮助用户评估系统的安全情况。总之,chkrootkit 是一款可以帮助检测 Linux 系统中 rootkit 和恶意软件的开源工具,它简单易用,可以提供对系统安全性的初步评估。
浪潮信息KOS是浪潮信息基于Linux Kernel、OpenAnolis等开源技术自主研发的一款服务器操作系统,支持x86、ARM等主流架构处理器,性能和稳定性居于行业领先地位,具备成熟的 CentOS 迁移和替换能力,可满足云计算、大数据、分布式存储、人工智能、边缘计算等应用场景需求。详细介绍见官网链接浪潮信息云峦服务器操作系统KeyarchOS_KOS服务器操作系统-浪潮信息
2 安装环境
2.1 操作系统环境
版本信息:KeyarchOS 5.8。
硬件平台:X86_64。
2.2 Chkrootkit版本
chkrootkit version 0.58b。
3 安装Chkrootkit
3.1 准备gcc编译环境
执行下述三条命令:
yum -y install gcc
yum -y install gcc-c++
yum -y install make
3.2 编译安装Chkrootkit
1.下载源码包:wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
2. 解压:tar zxf chkrootkit.tar.gz
3. 编译安装:make sense
4. 把编译好的文件部署到/usr/local/目录中,并删除遗留的文件:
cp -r chkrootkit-* /usr/local/chkrootkit
至此,安装完毕。
3.3 检测当前版本
检测当前版本:/usr/local/chkrootkit/chkrootkit -V
4 Chkrootkit基本使用
4.1 运行Chkrootkit
执行命令:/usr/local/chkrootkit/chkrootkit
扫描结果后面如果是:not infected/not tested/nothing found/nothing deleted 之类的就表示正常,可以不用管。如果是INFECTED那就要小心了。infected表示已经感染,not infected表示未感染。
4.2 执行静默扫描
运行 /usr/local/chkrootkit/chkrootkit -q 命令将使chkrootkit以“静默”模式运行,并只输出检测结果的摘要信息,而不显示每个检测项目的详细指标。具体来说,-q选项将启用chkrootkit的“简易”模式,以便更容易地集成到自动化脚本和报告中。
4.3 运行Chkrootkit并保存结果到文件
运行 /usr/local/chkrootkit/chkrootkit > scan_result.txt 命令将把chkrootkit的扫描结果保存到名为scan_result.txt的文本文件中。这条命令通过重定向操作符“>”将chkrootkit的输出定向到指定的文件中,而不是在终端上显示结果。
4.4 以详细模式运行Chkrootkit
运行 /usr/local/chkrootkit/chkrootkit -x 命令将以详细模式运行chkrootkit,并显示每个检测项目的详细信息。使用 -x 选项会输出更详细的结果,其中包含有关每个检测项目的更多信息和解释。
4.5 显示可能被感染的项目
运行 /usr/local/chkrootkit/chkrootkit | grep INFECTED 命令来筛选出含有 "INFECTED" 字样的chkrootkit扫描结果。该命令通过使用管道操作符 | 将chkrootkit的输出传递给grep命令,然后使用grep命令筛选出包含 "INFECTED" 的行。这样可以直接显示可能被感染的项目。这里是刚装的新系统,chkrootkit没有报结果,表示没有被感染。
4.6 检查系统命令是否受感染
Chkrootkit也可检查系统命令是否受感染,例如ps、ls:
执行命令:/usr/local/chkrootkit/chkrootkit ps ls
4.7 检查网络接口
chkrootkit可传入sniffer参数来检查网络接口是否处于混杂模式,混杂模式下的网络接口会接受所有经过自己的数据流,一般管理员调试或者黑客入侵搜集信息时会用到,而正常情况下网络接口都处于非混杂模式,即只接受目标地址是自己的数据流,wireshark抓包即混杂模式接受所有数据流。
执行命令: /usr/local/chkrootkit/chkrootkit sniffer