linux入侵排查-综合日志分析
1.综合日志分析
-
1.掌握linux环境下系统日志的分析方法
-
2.掌握web访问日志的分析方法
-
3.掌握数据库日志的分析方法
-
4.掌握数据库日志的分析方法
-
5.熟悉linux中常用日志分析命令
实验环境
2.实验预设问题
-
1.定位攻击者ip地址
-
2.分析攻击者首次成功登录web管理后台的时间
-
3.分析攻击者通过web服务getshell的方式
-
4.分析攻击者登录系统普通用户的时间
-
5.分析攻击者提升到root用户权限的方法和时间
-
6.分析攻击者登录mysql数据库的时间
-
7.分析攻击者留下的持久化后门的时间和后门执行情况
3.实验讲解
1.通过排查对外开放端口来确定攻击者的ip地址,或者直接查看web日志 执行netstat -anptu命令检查当前主机对外开放的端口,存在22端口和80端口,即ssh服务和apache web服务,其中的两个公网ip地址有问题,我们可以去排查以下,可能是挖矿,但是访问的时候跳转到了ubuntu的首页,另一个ip也是安全的
执行lastb命令检查,不存在暴力破解的情况
通过apache的成功日志可以看到很多的日志,然后这里192.168.216.16这个ip地址有很多的请求,很多的get请求,然后往后还有很多很多的POST请求,都是在login的页面中,说明可能是通过POST来进行爆破
-
1.定位攻击者ip地址
192.168.216.16 -
2.分析攻击者首次成功登录web管理后台的时间 还可以知道攻击者可能是通过10.2.4.11这个跳板服务器跳过来的,然后我们继续排查,可以发现日志中POST请求大多都是1047字节,然后往后大多是300字节,POST请求的响应状态码有200和302这两个,其中的302是爆破成功后持续爆破产生的日志,再1047字节和300字节中间夹着一个978字节,就是200响应和302响应的中间
我们可以判断这个978字节的数据,应该就是爆破密码成功的字节,认定成功登录的时间为: [14/Dec/2022:01:56:16 +0000]
2022-12-14-01:56:16
-
3.分析攻击者通过web服务getshell的方式 继续排查日志,攻击者POST请求了/admin.php?action=installmodule页面,这个好像是对模板进行修改,因为installmodule是安装模板的目录,我们往后还有一条是POST请求这个模板中的index.php,但是首页并不是在这里,我们去排查以下index.php
这里发现还不是index.php,而是lndex.php,通过cat命令看到这个一个一句话木马
攻击者通过web后台管理页面上传一句话木马实现getshell的操作 访问网站的登录页面,排查网站存在什么漏洞,
发现存在远程代码执行漏洞 判断攻击者通过模块安装功能上传了一句话木马文件,然后getshell了
-
4.分析攻击者登录系统普通用户的时间 继续分析系统日志/var/log/auth.log在攻击者对web服务进行攻击的时间段内,存在从www-data用户使用su命令切换到lee用户的记录,所以得到攻击者登录系统普通用户的时间是
2022-12-14-02:03:52 UTC零时区
-
5.分析攻击者提升到root用户权限的方法和时间
首先排查了历史命令记录,为空,应该是被删除了,
继续排查登录日志auth.log吧,就在su的下方有一个命令是pkexec,其中exec就比较敏感了,pk应该是这个网站的cms的意思,说明这个是pk这个cms的提权命令,通过CVE漏洞来提取的操作了
时间: Dec 14 02:06:25 2022-12-14-02:06:25 方法:CVE-2021-4034 使用dpkg -l policykit-1查看polickit的版本
-
6.分析攻击者登录mysql数据库的时间
找登录mysql的时间,那么我们去看mysql的日志 /var/log/mysql/mysql.log 通过分析日志,我们可以知道攻击者尝试root登录,但是失败了,然后通过lee用户登录了,lee用户的系统密码和mysql密码一致,所以攻击者登录数据库的时间为:2022-12-14-02:07:13
-
7.分析攻击者留下的持久化后门的时间和后门执行情况 排查计划任务,发现有一个计划任务还是被加密的,应该是反弹shell的
然后排查cron.log的日志,来判断计划任务的执行情况,可以发现计划任务一直在执行