挖矿病毒及应对措施
危害
1.黑客通过挖矿程序窃取机密信息,比如机密文件、关键资产的用户名和密码等,导致资产遭受更进一步的资产损失。
2.黑客控制主机作为“肉鸡”攻击互联网上的其他单位,违反网络安全法。
3.黑客利用已经控制的机器,作为继续对业务系统区域渗透的跳板,产生更严重的网络安全攻击事件。
原因排查
一旦发现服务器被挖矿,应该首先查看挖矿进程所属的用户,根据挖矿进程的运行用户去排查该用户下是否还运行着其它进程,确定这些进程是否有上述经常被黑客利用的漏洞。如果有常见的漏洞,则应该重点对此进行排查找到原因
为什么会中挖矿病毒呢?
“挖矿病毒”一般因为疏于安全防护而感染:
■ 垃圾邮件:用户点击了钓鱼邮件并运行了含病毒的附件。
■ 软件捆绑:用户下载运行了非官方的破解软件。
■ 漏洞传播:用户的操作系统或软件存在漏洞,黑客利用漏洞植入挖矿病毒。
■ 网页挖矿:用户访问了来历不明的网页,该网页被植入挖矿脚本,浏览器会运行脚本进行挖矿。
挖矿病毒判断
挖矿木马占用系统资源进行挖矿行为,一般电脑会有以下特征
- 系统响应缓慢
- CPU/显卡使用率过高
- 内存/带宽占用高
挖矿常用手段
- 未授权访问或弱口令:Redis 未授权访问、Docker API 未授权访问、Hadoop Yarn 未授权访问、NFS 未授权访问、Rsync 弱口令、PostgreSQL 弱口令、Tomcat 弱口令、SSH 弱口令、Telnet 弱口令、Windows 远程桌面弱口令
- 远程命令执行漏洞:WebLogic XML 反序列化漏洞、Jenkins 反序列化、Jboss 远程代码执行、Spring 远程代码执行、ElasticSearch 命令执行、永恒之蓝、Struts2 系列漏洞、常见 CMS 的远程命令执行漏洞
- 新爆的高危漏洞:一般每次爆发新的高危漏洞,都会紧跟一波大规模的全网扫描利用和挖矿
清除挖矿木马(入侵排查过程)
及时隔离主机
部分带有蠕虫功能的挖矿木马在取得本机的控制权后,会以本机为跳板机,对同一局域网内的其他主机进行已知漏洞的扫描和进一步利用, 所以发现挖矿现象后,在不影响业务的前提下应该及时隔离受感染主机,然后进行下一步分析
删除文件、阻断与矿池通讯
执行以下命令查看挖矿进程的执行文件链接 |
执行以下命令查看是否存在业务范围之外的可疑通信地址和开放端口 |
执行以下命令清除恶意矿池地址 |
清除定时任务
大部分挖矿进程会在受感染主机中写入定时任务来完成程序的驻留,当安全人员只清除挖矿木马时,定时任务会再次从服务器下载挖矿进程或者直接执行挖矿脚本,导致挖矿进程清除失败
crontab -l |
清除启动项
有的挖矿进程为了实现长期驻留,会向系统中添加启动项来确保系统重启后挖矿进程还能重新启动,所以在清除时还应该关注启动项中的内容如果有可疑的启动项,也应该进行排查,确认是挖矿进程后,对其进行清除
kill 挖矿进程
对于单进程挖矿程序,直接结束挖矿进程即可。但是对于大多数的挖矿进程,如果挖矿进程有守护进程,应先杀死守护进程再杀死挖矿进程,避免清除不彻底 在实际的清除工作中,应找到本机上运行的挖矿脚本,根据脚本的执行流程确定木马的驻留方式, 并按照顺序进行清除, 避免清除不彻底
清除公钥文件
在用户 home 目录的 .ssh 目录下放置 authoruzed_keys 文件,从而免密登录该机器也是一种常见的保持服务器控制权的手段。在排查过程中应该查看该文件中是否有可疑公钥信息,有的话直接删除,避免攻击者再次免密登录该主机
cat .ssh/authorized_keys |
Windows系统清除木马
通过CPU占用情况排查可疑的挖矿进程。
执行以下命令,查看挖矿进程的磁盘文件、进程启动命令的参数。
wmic process where processid=xxx get processid,executablepath,commandline,name #xxx表进程pid |
结束挖矿进程,清除挖矿文件。
执行以下命令,检查主机连接的可疑网络端口。
netstat -ano | findstr xxx # xxx 表可疑的网络端口 |
- 执行以下命令,检查服务器中hosts文件是否存在挖矿程序的矿池地址。
type C:\Windows\System32\drivers\etc\hosts |
- 执行以下命令,排查是否存在挖矿程序设定的计划任务。
schtasks /query |
refer
[**挖矿程序处理最佳实践**](https://help.aliyun.com/document_detail/161236.html#:~:text=非云安全中心用户处理挖矿程序(Windows系统) 1 执行以下命令,通过CPU占用情况排查可疑的挖矿进程。… 2 执行以下命令,查看挖矿进程的磁盘文件、进程启动命令的参数。… 3 结束挖矿进程,清除挖矿文件。,4 执行以下命令,检查主机连接的可疑网络端口。… 5 执行以下命令,检查服务器中hosts文件是否存在挖矿程序的矿 … 6 执行以下命令,排查是否存在挖矿程序设定的计划任务。)











