知攻善防Linux Web1靶场入侵排查

前景需要:小王急匆匆地找到小张,小王说”李哥,我dev服务器被黑了”,快救救我!!

挑战内容:

黑客的IP地址

遗留下的三个flag

一、账户安全

检查/etc/passwd/etc/shadow文件:

1
2
cat /etc/passwd | grep -v nologin      #查看可以登陆的用户
awk '/\$1|\$6/{print $1}' /etc/shadow #查看可以远程登陆的用户

image-20240320115023026

正常,只存在root和一个普通用户defend

二、历史命令排查

1
2
history          #查看root历史命令
cat /home/defend/.bash_history #查看普通用户defend 的历史命令

image-20240320115445035

在root 中排查到了相当可疑的操作,发现了flag{thisismybaby},并发现了对/etc/rc.d/rc.local开机启动文件编辑的可疑行为,同小王商议过后,一致认为属于黑客的操作行为

查看该文件的内容

1
cat /etc/rc.d/rc.local

image-20240320120839955

除发现flag{kfcvme50}之外,还发现了可疑命令touch /var/lock/subsys/local,创建了一个local文件

奇怪的是,该文件没有任何内容

image-20240320121043191

三、端口、进程排查

1
netstat -antlp | more

image-20240320121424436

1
2
ps -aux  #查看进程
top -c -o %CPU #实时查看高CPU进程

image-20240321131151005

四、开机启动项排查

这里又转回来了,之前排查过这里

image-20240320121716236

五、定时任务排查

1
2
crontab -l
ls -alsh /var/spool/cron/

image-20240320121941529

六、异常文件排查

1
2
如/tmp目录下的隐藏文件
ssh密钥等

image-20240321134447424

/tmp下未发现敏感文件

发现root 的.ssh下存在authorized_keys公钥

image-20240321134537128

检查改动时间,发现是3月18日20:22:39的时间被改动

七、日志排查

安全日志文件存放路径:/var/log/secure,是ssh登陆成功与否的一个安全日志

1
2
cat secure | grep "Accepted" | awk '{print $11}' | sort | uniq -c | sort -nr   #统计IP爆破次数
cat secure | grep "Failed password for root" | awk '{print $11}' | sort | uniq -c | sort -nr

image-20240321124831028

可疑IP192.168.75.129对root用户进行了登陆,其中91次失败,1次成功,我们针对91次登陆失败的时间再进行一个排查

1
cat secure | grep "Failed password for root" | awk '{print $1,$2,$3,$11}'

image-20240321125536678

从三月18日19:29:43持续到19:29:51,8秒钟之内失败次数91,判定为ssh爆破行为

再查看登陆成功的时间,在20:23:07,但是当我们查询密码登陆成功的日志却没有记录

image-20240321141454943

last命令下,也能看到该IP 的最后一次登陆时间,该IP用虚拟终端进行了远程登陆,持续时间2分钟

image-20240321130543954

八、命令替换检查

1
2
3
4
5
6
7
echo $PATH
rpm -Vf /usr/bin/*

//结果说明
#S 关键字代表文件大小发生了变化
#5 关键字代表文件的 md5 值发生了变化
#T 代表文件时间发生了变化

image-20240321132650212

/etc/rc.d/rc.local之前已经做过排查,那么这里又出现了/etc/redis.conf文件,这个文件是redis 的配置文件,这个redis.conf应该是被人动了手脚,简单查看下,发现第三个flag{P@ssW0rd_redis}

image-20240321144357100

查看是否存在redis 未授权

image-20240321132912907

好好好,redis 未授权访问的条件全部满足。那么查看一下该文件最新的改动时间

1
start /etc/redis.conf 

image-20240321133049257

三月18日的19:53:13,这就很奇怪了,因为在日志排查中,我们知道恶意IP远程登陆的时间在20:23:07,小王这会儿买辣条去了,等他回来问问他,我们接着往下排查。

查找下redis 的日志文件相关位置image-20240321140436679

看日志文件内容并筛选下恶意IP192.168.75.129image-20240321140549510

该恶意IP从三月18日19:27:5720:21:58一直对redis 服务发起访问,我们知道,一个redis 未授权访问的危害是相当巨大的,可以直接植入病毒木马等文件

九、溯源追踪

我们通过对linux登录日志分析,黑客从三月18日19:29:43开始进行了ssh爆破行为,持续到19:29:51

通过redis 日志分析,黑客从三月18日19:27:57通过redis 未授权访问持续到20:21:58

在异常文件中发现,root账户下的authorized_keys公钥是3月18日20:22:39的时间被改动

20:23:07,黑客通过ssh私钥通过远程虚拟终端登陆,持续时间两分钟

最后,黑客通过对开机启动文件/etc/rc.d/rc.local做了后门维持