简介
早在21年5月份左右我们已经发现"powerghost"病毒,并进行了分析,该病毒过多阶下载执行、内网横移渗透,最终可实现DDOS攻击、挖矿、等类型攻击,整体流程如下:
病毒发现
发现异常行为
分析流量时发现内网部分终端在某站点下载powershell脚本,目的地址是国外地址,同时在威胁情报上查看到地址已被标记为恶意地址,可以确定是恶意脚本。
病毒样本捕获
在捕获恶意时,通过查看响应包发现响应包中的内容不全,无法完整获取病毒样本。通过请求日志可以获取到病毒样本下载地址为http://111.90.140.59:443/vercheck.ps1
当直接访问病毒样本下载地址时显示404,通过以往经验大致可以判断出攻击者做了一些限制。仔细观察请求数据包,发现请求数据包中不存在UA。
使用BP抓包更改成和流量中相同的请求包,最终拿到病毒样本。
病毒样本解密
拿到本都样本后,代码做了混淆,分析发现有split的分割运算符,通过做解密得到hex编码。
通过hex解码后得到病毒代码,看到这个病毒代码有点像poweshell的代码。
分析发现代码使用了DeflateStream实现数据压缩,通过在线解压缩网站(https://www.multiutil.com/deflate-to-text-decompress/)实现对压缩代码还原。
病毒样本分析
判断当前运行环境,
连接C2服务器,
依次为关闭关闭defender实时保护功能,关闭defender杀毒软件,关闭defender行为监控,关闭defender文件程序扫描,关闭defender进程实时扫描。
开启rpc等相关服务,
判断是否做了持久化的操作,
从owa.conf1g.com和box.conf1g.com中随机选取一个域名进行使用1.1.1.1和8.8.8.8进行解析并返回对应的ip地址。如果没有解析成功,就从域名中随机挑选一个作为连接地址,如果解析成功:
如果已经存在持久化,并且从服务器下载相关版本号与本地进行对比,
根据对应的系统版本,加载不同shellcode。
下载资源p32/64.ps1(同样该脚本进行代码混淆、压缩加密)体积约为1.8MB,会携带三个核心payload字符串。主体代码进行本地策略修改、持久化设置、核心字符串payload解析调用。
本地特定端口查询以及系统日志任务关闭。
计划任务设置。设置条件包括三个,任一即可:系统启动、每20分钟、每30分钟。
核心组件模块payload资源调用,设置运行相关参数。可知当前版本为2.7。
手动解析$miiiiii、$fffffff、 $ssssssss三个资源,其功能如下。
$miiiiii | Mimikatz,横移组件,用于网内密码爬取。 |
$fffffff | 内存反射加载注入组件,清除老版本木马组件,下载执行最终攻击木马。 |
$ssssssss | 计划任务创建组件,下载执行。提供后续下载所用C&C。 |
通过WMI事件过滤机制实现持久化驻留代码如下。
WMI触发执行代码如下。开启RPC远程功能,为横移渗透铺垫。然后发起远程TCP连接请求。
解密的$ssssssss可见后续资源交互URL。hxxp://185.128.41.90/vercheck.ps1。
停止与任何目的地建立到TCP / 3333,TCP / 5555,TCP / 7777和TCP / 14444的连接的每个进程。疑似干掉其他挖矿进程。
用于横移登录的实现函数test-ip如下。
在渗透组件程序运行5小时(18000秒)后,收集登录凭据信息如下。
IOC信息
http://111.90.140.59:443/vercheck.ps1
http://111.90.140.59:443/w/p32.ps1
http://111.90.140.59:443/w/p64.ps1
http://185.128.41.90/vercheck.ps1
185.128.41.90
111.90.140.59
owa.conf1g.com
box.conf1g.com
(来源:freebuf)
(原文链接:https://www.freebuf.com/articles/endpoint/319817.html)
发表评论