2024广东省职业技能大赛云计算赛项实战——chkrootkit安装与使用

chkrootkit安装与使用

前言

在今年比赛中有考到这样一道题,也是在公布的样卷中找到了它,今天就做做它并讲解一下:
公有云安全:入侵检测系统
使用提供的 makechk.tar.gz 包安装 chkrootkit 入侵检测工具,安装完毕后使用 chkrootkit 工具扫描系统,并将扫描结果保存到/var/log/chkrootkit/chkrootkit.log中

chkrootkit是一款用于检测UNIX系统上已知rootkit的开源工具。(rootkit是一种恶意软件,会获取对计算机系统的管理员访问权限,同时隐藏其存在)

虚拟机使用的是自行创建的CentOS7,如果你不会,那虚拟机创建的流程可以参考我这篇文章:职业技能大赛云计算赛项实战——OpenStack搭建-CSDN博客
使用镜像为CentOS-7-x86_64-DVD-2009.iso,可从阿里镜像站下载:https://mirrors.aliyun.com/centos/7/isos/x86_64/
需要用到的chkrootkit软件源代码及其依赖包:https://pan.baidu.com/s/15Mx8vu-i2sct6ayqIC2LcA?pwd=mlya
提取码:mlya

操作过程

上传软件源代码及其依赖

使用远程连接工具(SecureFX、XShell等等)将我提供的软件源代码和依赖上传到机子的主目录下

[root@localhost ~]# ls
anaconda-ks.cfg  chkrootkit.tar.gz  makechk.tar.gz

配置YUM源

#将安装chkrootkit所需的依赖包解压至/opt目录
[root@localhost ~]# tar -zxf makechk.tar.gz -C /opt/
[root@localhost ~]# ls /opt
makechk
#删除系统自带的默认源
[root@localhost ~]# rm -rf /etc/yum.repos.d/*
#创建新的仓库文件
[root@localhost ~]# vi /etc/yum.repos.d/local.repo 
[makechk]
name=makechk
baseurl=file:///opt/makechk
enabled=1
gpgcheck=0

安装chkrootkit

#安装所需依赖
[root@localhost ~]# yum -y install gcc gcc-c++ make glibc-static
#解压chkrootkit源代码压缩包
[root@localhost ~]# tar -zxf chkrootkit.tar.gz 
[root@localhost ~]# ls
anaconda-ks.cfg  chkrootkit-0.55  chkrootkit.tar.gz  makechk.tar.gz
#进入其目录
[root@localhost ~]# cd chkrootkit-0.55/
[root@localhost chkrootkit-0.55]# 
#进入其目录我们可以看到有很多文件
[root@localhost chkrootkit-0.55]# ls
ACKNOWLEDGMENTS  chkproc.c       chkwtmp.c    patch              strings.c
check_wtmpx.c    chkrootkit      COPYRIGHT    README
chkdirs.c        chkrootkit.lsm  ifpromisc.c  README.chklastlog
chklastlog.c     chkutmp.c       Makefile     README.chkwtmp
#我们可以查看它的说明文档README
...
#在说明文档的这一段,我们可以知道目录里的那些包都是干嘛用的
 * chkrootkit: a shell script that checks system binaries for
   rootkit modification.
#这是一个shell脚本,用于检查系统二进制文件是否被rootkit修改过。我们后续使用命令也是执行这个脚本
 * ifpromisc.c: checks if the network interface is in promiscuous
   mode.
#用于检查网络接口是否处于混杂模式
 * chklastlog.c: checks for lastlog deletions.
#用于检查lastlog文件是否被删除。lastlog文件是记录了用户最后一次登录信息的文件,只有root用户才能直接读取它。这个文件可以帮助我们监控用户的活动,并可用于安全审计和故障排查
 * chkwtmp.c: checks for wtmp deletions.
#用于检查wtmp文件是否被删除。wtmp文件是记录所有用户登录和注销信息的文件,也是只有root用户才能直接读取它,对于系统安全和管理非常重要
 * check_wtmpx.c: checks for wtmpx deletions.  (Solaris only)
#用于检查wtmpx文件是否被删除,仅适用于Solaris系统
 * chkproc.c: checks for signs of LKM trojans.

 * chkdirs.c: checks for signs of LKM trojans.
#上面这俩都是用于检测恶意的可加载内核模块的,trojans应该都不陌生,就是特洛伊木马,而LKM(Loadable Kernel Module),即可加载内核模块。内核是操作系统的核心部分,负责管理和控制系统的各种资源和功能。内核模块是一种动态加载到内核中的软件组件,用于扩展内核的功能。LKM允许在运行的系统中动态地加载和卸载模块,而无需重新启动系统。也正因为LKM具有强大的特权级别和直接访问系统内核的能力,监测和识别系统中是否存在可疑的LKM模块才格外重要。
 * strings.c: quick and dirty strings replacement.
#用于快速替换字符串,解释里的dirty并不是说这个字符串很脏,而是替换字符串的方法不规范、不优雅、不够严谨或不完善,因此说成脏~
 * chkutmp.c: checks for utmp deletions.
#用于检查utmp文件是否被删除,utmp文件是记录系统上当前登录用户的相关信息的文件,上面提到的wtmp文件是记录所有用户的,你可以把wtmp文件看成是是 utmp文件的历史记录。
...
#说明文档的这一段,告诉了我们chkrootkit的安装方法以及简单的使用方法,我们直接照做就好了
 5. Installation
 ---------------
 To compile the C programs type:
 # make sense
 After that it is ready to use and you can simply type:
 # ./chkrootkit
 6. Usage
 --------
 chkrootkit must run as root.  The simplest way is:
 # ./chkrootkit
#编译安装
[root@localhost chkrootkit-0.55]# make sense
cc -DHAVE_LASTLOG_H -o chklastlog chklastlog.c
cc -DHAVE_LASTLOG_H -o chkwtmp chkwtmp.c
cc -DHAVE_LASTLOG_H   -D_FILE_OFFSET_BITS=64 -o ifpromisc ifpromisc.c
cc  -o chkproc chkproc.c
cc  -o chkdirs chkdirs.c
cc  -o check_wtmpx check_wtmpx.c
cc -static  -o strings-static strings.c
cc  -o chkutmp chkutmp.c
#创建日志文件
[root@localhost chkrootkit-0.55]# mkdir -p /var/log/chkrootkit
[root@localhost chkrootkit-0.55]# touch /var/log/chkrootkit/chkrootkit.log
#使用检测命令,将结果保存到日志文件当中
[root@localhost chkrootkit-0.55]# ./chkrootkit > /var/log/chkrootkit/chkrootkit.log
#可以去看一下检测出来的结果
[root@localhost chkrootkit-0.55]# vi /var/log/chkrootkit/chkrootkit.log
ROOTDIR is `/'
Checking `amd'... not found
Checking `basename'... not infected
Checking `biff'... not found
Checking `chfn'... not infected
...

后语

持续更新…

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值