目录
挖矿木马简介
挖矿流程
挖矿木马应急响应
一. 隔离被感染主机
二. 确定挖矿进程
三. 挖矿木马清除
1、阻断矿池地址的连接
2、清除挖矿定时任务、启动项等
3、禁用可疑用户
4、定位挖矿木马文件的位置并删除
5、全盘杀毒、加固
挖矿木马简介
挖矿:
每隔一个时间点,比特币系统会在系统节点上生成一个随机代码,互联网中的所有计算机都可以去寻找此代码,谁找到此代码,就会产生一个区块。而比特币的发行是基于奖励的,每促成一个区块的生成,该节点便获得相应奖励,这样大家就有动力投入资金去维护整个交易网络的正常运行。这个寻找代码获得奖励的过程就是挖矿。但是要计算出符合条件的值需要进行上万亿次的哈希运算,这个过程需要大量的算力,于是部分黑客就会通过入侵服务器的方式来控制别人的计算机帮助自己挖矿。
挖矿木马:
攻击者通过各种手段将挖矿程序植入受害者的计算机中,在受害者不知情的情况下利用其计算机的算力进行挖矿,从而获取利益,这类非法植入用户计算机的挖矿程序就是挖矿木马。挖矿木马一般为自动化扫描、攻击、部署挖矿进程的脚本,攻击者首先将挖矿脚本放在远程主机上,通过常见或最新爆出的可命令执行的自动化漏洞利用脚本获得主机的控制权后,登陆主机,利用wget或curl直接下载远程挖矿进程部署脚本,执行脚本进行挖矿进程的部署、隐藏、持久化和痕迹清除等工作。挖矿木马为了能够长期在服务器中驻留,会采用多种安全对抗技术,如修改任务计划、修改防火墙配置、修改系统动态链接库等,使用这些技术手段严重时可能造成服务器业务中断。
算计(哈希率):
是比特币网络处理能力的度量单位。即为计算机(CPU)计算哈希函数输出的速度。比特币网络必须为了安全目的而进行密集的数学和加密相关操作。 例如,当网络达到10Th/s的哈希率时,意味着它可以每秒进行10万亿次计算。
在通过挖矿得到比特币的过程中,我们需要找到其相应的解m,而对于任何一个六十四位的哈希值,要找到其解m,都没有固定算法,只能靠计算机随机的hash碰撞,而一个挖矿机每秒钟能做多少次hash碰撞,就是其“算力”的代表,单位写成hash/s,这就是所谓工作量证明机制POW(Proof Of Work)。
挖矿流程
- 通过已知漏洞获得主机控制权;
- 下载远程挖矿脚本;
- 删除本机中可能存在的其他挖矿进程;
- 生成特征文件避免重复感染;
- 判断主机系统类型和位数,隐藏并运行挖矿进程;
- 如果有GPU则进行GPU挖矿;
- 挖矿进程的驻留与持久化;
- 部分有蠕虫功能的脚本还会以当前主机为跳板,利用已知漏洞和弱口令进行局域网扫描,以控制更多主机;
- 清除痕迹。
挖矿木马应急响应
如何判断遭遇挖矿木马攻击:
- 被植入挖矿木马的计算机会出现CPU使用率飙升、系统卡顿、部分服务无法正常运行等现象。
- 通过服务器性能监测设备查看服务器性能,从而判断异常。
- 挖矿木马会与矿池地址建立连接,可通过查看安全监测类设备告警判断。
一. 隔离被感染主机
需要对挖矿木马事件进行初步判断,了解事态现状、系统架构、感染时间等,并确定感染面;还要及时提供临时处置建议,对已被挖矿的服务器/主机下线隔离,对未被挖矿的服务器/主机做好防护。挖矿木马会与矿池地址建立连接,可以利用安全监测类设备查看挖矿范围。
二. 确定挖矿进程
将被感染服务器/主机做完基本隔离后,就要确认哪些是挖矿木马正在运行的进程,以便执行后续的清除工作。
挖矿程序的进程名称一般表现为两种形式:
- 程序命名为不规则的数字或字母;
- 伪装为常见进程名,仅从名称上很难辨别。所以在查看进程时,无论是看似正常的进程名还是不规则的进程名,只要是CUP占用率较高的进程都要逐一排查。
三. 挖矿木马清除
1、阻断矿池地址的连接
挖矿程序有外连行为,应用安全设备阻断矿池地址,在网络层阻断挖矿木马与矿池的通信。
2、清除挖矿定时任务、启动项等
清除挖矿木马、清除可疑的定时任务、清楚可疑启动项等。
3、禁用可疑用户
由挖矿木马程序创建的用户,可能作为攻击跳板或用作其他攻击操作,当确认为异常用户后,
需及时禁用或删除。
4、定位挖矿木马文件的位置并删除
Windows系统:
使用netstat -ano系统命令可定位挖矿木马连接的PID,再通过tasklist命令可定位挖矿木马的进程名称,最后通过任务管理器查看进程,找到挖矿木马文件的位置并清除。
Linux系统:
使用netstat -anpt 命令查看挖矿木马进程、端口及对应的PID,使用ls -alh /proc/PID命令查看挖矿木马对应的可执行程序,最后使用kill -9 PID 命令可结束进程,使用rm -rf filename命令删除该文件。
5、全盘杀毒、加固
实施以上操作后,仍需继续观察是否还有反复迹象,是否还有进程或任务计划没有清理干净。
使用杀毒软件全盘杀毒,并对系统、应用做安全加固。