一次web网站被入侵的处理记录
前段时间,帮朋友搭建的CMS网站,被阿里云报警,告知主动连接恶意的URL,于是登陆到阿里云后台检查情况,前几天没空,只做了简单的查和杀,今天有空来继续分析和排查下问题。
本人的水平有限,只是做基本排查给小白提供一种思路罢了,也是这次检测过程的一种分析吧。
一 可疑进程排查
先是用TOP命令查询下是否有占用CPU和内存过多的进程,目前有个Donald进程,占CPU为200%。据了解,没有这个进程,很可能是个木马程序。
秉承着先治疗后排查原因的原则,先查下这个这个进程的打开文件和连接情况:
lsof -p 1543
通过查看网络连接情况,发现可疑进程:
netstat -antp
这样的方法同样指向 这个可疑的进程:Donald
还有个HTTPS的连接:
这些木马竟然用HTTPS进行交互,就没办法用流量分析的方法进行分析流量,来了解他的真实意图了。
通过微步在线查询系统,查询远程连接的IP情报信息:
https://x.threatbook.cn/nodev4/ip/119.9.76.107
通过这上面来看,应该是一种挖矿的木马程序,看到这些检测引擎检测出木马,那反过来,是否可以通过这些杀毒引擎在Linux上进程查杀那?
二 木马删除和处理
通过上面的分析,基本确定了,这个是个挖矿的木马程序,先把这个木马杀掉吧。
1)kill -9 1543
发现杀掉后,立刻被启动了,接着检查下crontab -l ,发现果然做了crontab,如下:
通过脚本来看,是下载一个shell程序,通过上面的办法查询下这个可疑的地址:https://x.threatbook.cn/nodev4/ip/152.136.42.90
不过从脚本来看是15分钟去下载一次,不是自动重启,不过既然发现了,先删除吧,crontab -e
然后dd删除下,再通过wq保存退出。
当然不能仅仅删除这个crontab,再去搜下脚本,很奇怪,没有搜索到下载位置。
2)删除木马程序
通过刚才的分析已经找到木马的位置和挂马的时间是12月20日,这个时间比较重要,先删除下木马程序吧,进入/tmp目录,乱七八糟的文件全部删除,这次木马没有重启,但是仍然有个心病,木马到底是通过什么方式自动启动的。
三 改密码和删除账号
1)删除掉木马程序,停止非法连接后,下面的紧急工作,我觉得就是改密码了,把网站管理密码,主机的密码都改成强安全密码。
2)排查账号信息,防止黑客新建了账号
cat /etc/passwd 发现改动时间是12月21日,但是查了下账号都是正常账号,先忽略。
cat /var/log/secure|grep “failure”
查看这个信息,可以看到大量登陆失败信息,可能是再爆破ssh。可惜已经没有20日的日志了,没看到是否是通过爆破成功获取到密码的。
四 木马自启动原因排查
- 分析下网络连接情况。没有可疑的网络连接的情况,所以排除了远程控制来启动的可能,那么重启机制一定是在linux主机上设置的。
- 排查本机各种可能的情况:
1) crontab位置,已经排查和清除。
2) at命令,这个是一次性的执行任务的命令,但是最好看下,是否有个程序在定时添加这个命令也说不定,at -l 查下,结果没有。
3) 主机自动启动脚本: cat /etc/rc.d/rc.local 没查到可疑的主机启动时候,自动启动脚本,其实刚才的机制显然不是这个造成的,但是排查下这个位置防止以后启动主机还会启动木马。
4) 查看下每次登陆自动执行脚本:
检查:cd /etc/profile.d/未发现可疑的脚本。
查看root用户下.bash_profile 和.bashrc, .bash_logout是否有可疑的启动脚本信息,也未发现。
查看/etc/init.d 目录下是否有可疑脚本,也未发现。
5) 通过chkconfig 来查看,三个进程也是正常的:
这里面的netconsole是一个将dmesg内核日志信息发送到另外一台主机的方法,是阿里云主机使用的,忽略。
到这里面,我已经没有什么思路了,各种可能的位置都找了,还是没有发现。换一个思路,去看下木马怎么进来了,根据日志去排查更改的文件信息吧。
五 阿里云查看
后面到找朋友要了阿里云的账号,去查看下,果然和分析的差不多,看看阿里云上跟多的信息
通过分析来看,2019年12月20日9点58分的时候,已经获取到root的密码了,进行了登陆,接着下载连接。
再看看下载源和恶意程序信息:
阿里云上有很多告警,有挖矿程序和访问恶意ip等。
下载可疑的脚本:
这个和我们上面看到的crontab的内容类似。
进入此目录删除可疑程序:
学习下阿里的排查挖矿程序的办法:https://helpcdn.aliyun.com/knowledge_detail/41206.html
六 溯源追踪
找出突破口,还是比较关键,只是查杀,洞没堵住,下次还是被人轻易的攻进来。重点分析下web的日志信息:
6.1 企图创建一句话木马
从信息来看是进行下载病毒文件,生成本地的一句话木马,不过通过信息来看是windows下的命令执行,结果显示没成功,这是think PHP V5的漏洞,看起来要升级下PHP的版本。
[https://blog.csdn.net/weixin_34068198/article/details/89571126]可以通过下面的链接了解下。(https://blog.csdn.net/weixin_34068198/article/details/89571126)
6.2 利用masscan信息扫描
6.3 删除/tmp下载木马
大概知道了,应该是从网站进来的,对于木马还有没有后门,后续如何处理,还没底,先下载个杀毒软件杀下吧。
七 杀毒软件安装
ClamAV是一个在命令行下查毒软件,因为它不将杀毒作为主要功能,默认只能查出您计算机内的病毒,但是无法清除,至多删除文件。
对我来说,是个不错的东东,下载运行玩玩。
1.安装杀毒软件:
yum install clamav clamav-server clamav-data clamav-update clamav-filesystem clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd pcre* gcc zlib zlib-devel libssl-devel libssl openssl
也可以下载源码包编译安装:https://www.clamav.net/downloads
源码编译安装可以参考:https://blog.csdn.net/xianweijian/article/details/60577372
- 配置 网上参考来的
前面的创建用户和一些目录的步骤参考:https://www.cnblogs.com/kerrycode/p/4754820.html
编辑配置文件:
这些位置没有就新建。vim /etc/clamd.d/scan.conf #Example 注释掉这一行. 添加下面三行: LogFile /usr/local/clamav/logs/clamd.log PidFile /usr/local/clamav/updata/clamd.pid DatabaseDirectory /usr/local/clamav/updata
vim /etc/freshclam.conf DatabaseDirectory /usr/local/clamav/updata UpdateLogFile /usr/local/clamav/logs/freshclam.log PidFile /usr/local/clamav/updata/freshclam.pid
3) 切换到clamav用户 更新病毒库:
/usr/bin/freshclam
更新完毕:
4)运行扫描
先查看下帮助信息,可以通过:clamscan -r —bell -i / 运行扫描所有目录,且有问题报出来
/usr/bin/clamscan -h
八 最终结论
1)通过以上分析,木马是通过网站的php漏洞进入的,所以堵住这个漏洞最好,查了下目前的php版本是7.2版本,这个版本确实存在远程漏洞, CVE-2019-11043 ,具体见:https://cloud.tencent.com/developer/article/1529746。
2)用的是Apache,这上面的漏洞也挺多的,这上面也是个突破口。
3)还有其他一些没用的服务,目前直接停掉了。
综上分析,下一阶段,重点升级下php和apache ,这次比较遗憾,没有分析出提权的过程,另外木马程序停的比较早,没分析出更多有价值的信息来。
作者:明翼(XGogo)
-------------
公众号:TSparks
微信:shinelife
扫描关注我的微信公众号感谢
-------------