观成科技:Play勒索软件组织加密流量分析

1.概述

近年来,勒索软件组织的作业链条逐渐从“加密数据->收取赎金”转变到“数据窃取->加密数据->暗网披露窃取数据大小和内容描述->收取赎金”[1]。勒索软件组织在获取到受害者的访问权限后,不会立刻进行勒索,而是进行横向移动、数据窃取等操作,从受害环境中窃取大量敏感、机密信息,用于二次勒索。当受害者不愿意支付赎金时,攻击者会在网络上进行数据泄露来威胁受害者支付赎金。这种攻击模式被称为“双重勒索”。为了达到数据窃取这一目的,多数勒索软件组织采用商业工具或开源工具,少数勒索软件组织选择自研工具。通过对这些商业工具和开源工具进行检测,我们可以提前在窃密阶段拦截勒索软件组织的攻击,而对自研工具进行检测,还可以识别具体的勒索软件组织。

Play勒索软件组织是现今非常活跃的勒索软件组织之一,该组织采用双重勒索模式进行攻击,在窃取受害者敏感数据后才对受害者系统进行加密。Play勒索软件组织从2022年6月至今,对包括美国、加拿大、英国、德国、葡萄牙、丹麦、瑞典、以色列、韩国、中国台湾、新西兰在内多个国家和地区的约300多个企业及关键基础设施进行了攻击。2023年11月,安全公司Adlumin称Play勒索软件疑似出售勒索服务,开始向勒索软件即服务(RaaS)模式转型。

Play勒索软件组织在窃密过程中,使用了自研武器Grixba、免费工具NetScan进行信息收集,使用商业工具SystemBC实现SOCKS5反向代理功能进行内网攻击,使用商业工具CobaltStrike实现命令与控制功能。观成科技瞰云加密威胁智能检测系统能够对Play勒索软件组织使用的自研工具Grixba、商业工具SystemBC和CobaltStrike进行有效检测。

2.技战术总结

Play勒索软件组织常见攻击过程如下图所示。

图 2‑1 勒索软件组织攻击示意图

攻击者通过漏洞利用获取到受害单位对外服务器的访问权限,通过该服务器进行信息收集,得到域控服务器地址,完成权限提升。随后在内网中进行横向移动,拿到内网其他主机的访问权限,部署远控木马和窃密木马,收集内网主机上的机密数据发送给C&C服务器,最后加密内网中主机与服务器的文件。

表 1: Play勒索软件组织技战术总结

攻击意图

攻击方式

通信方式

攻击工具

影响范围

窃密、勒索、赎金

漏洞利用、有效账户、钓鱼邮件

加密通信

自研、开源、商业

Windows平台

通过公开窃密数据和加密数据这两种方式向受害者勒索赎金。

通过VPN漏洞、Microsoft Exchange漏洞和ProxyNotShell漏洞获取访问权限。

1.通过TCP加密隧道与服务器进行通信;

2.通过SSH加密协议向服务器传输窃密数据。

1.Play勒索软件通过自研工具Grixba进行信息收集;

2.使用商业木马SystemBC和CobaltStrike;

3.使用大量开源工具如WinSCP、Plink进行窃密活动;

目前只针对Windows平台进行勒索

Play勒索软件组织在不同攻击阶段使用的工具如下图所示。

图 2‑2 攻击过程中使用的工具

Play勒索软件组织常利用漏洞(如CVE-2018-13379、CVE-2020-12812、CVE-2022-41040、CVE-2022-41082等)、钓鱼邮件和有效账户获取初始访问权限,然后通过AdFind 工具获取活动目录,使用NetScan、Grixba进行网络扫描,收集信息,配合使用 GMER、IOBit和PowerTool等工具禁用杀毒软件并且删除日志记录。Play勒索软件组织使用CobaltStrike进行命令与控制操作,通过SystemBC、Empire、PsExec和RDP进行内网横向移动,并使用WinRAR压缩内网中敏感数据,利用WinSCP和Plink将数据窃取到远程服务器,最终通过AES和RSA算法加密文件,并将文件后缀修改为“.play”,完成窃密+勒索的攻击过程。[2]

3.工具分析
    1. 信息收集:Grixba

表2:Grixba样本信息

SHA256

453257c3494addafb39cb6815862403e827947a1e7737eb8168cd10522465deb

Grixba是Play勒索软件组织自主研发的一种网络扫描工具,用于枚举域中所有用户和计算机。Grixba通过WMI、WinRM、远程注册表和远程服务来枚举软件和服务器。Grixba会检查安全软件、备份软件、远程管理工具等是否存在并将收集到的信息保存到CSV文件中,压缩为ZIP文件。

图 3‑1 Grixba支持的操作

图 3‑2 Grixba的扫描过程

Grixba的操作共分为两个阶段,扫描阶段和信息收集阶段。扫描阶段通过ping操作判断主机是否存活,用GetHostEntry函数来获取主机名。信息收集阶段通过远程注册表、远程服务和WMI等进行操作。

图 3‑3 ICMP数据0x20

图 3‑4 获取主机名

图 3‑5 访问远程注册表

图 3‑6 通过WMI收集信息

Grixba进行网络扫描时产生的流量具有较为明显的特征,正常Windows ping操作中ICMP的载荷为“abcdefghijklmnopqrstuvwabcdefghi”,长度为32字节,而Grixba的ping操作中数据长度为2字节,值为16进制的“20 20”,该值硬编码在样本中。

图 3‑7 ICMP包中的数据

Grixba的扫描操作会依次生成如下协议的流量。

协议

操作

ICMP

ping

NBNS

查询主机名

SMB

查询远程注册表

DCERPC

WMI操作

图 3‑8 ICMP和NBNS

图 3‑9 SMB和DCERPC

    1. 代理:SystemBC

SystemBC是一种使用C语言编写的恶意软件,完整版SystemBC具有三种功能,一是将受害主机转变为SOCKS5代理,二是下载VBS、BAT、EXE等文件并执行,三是加载shellcode并执行。Play勒索软件在攻击活动中使用的SystemBC删减了功能二和三,只保留了SOCKS5代理功能。

表3: SystemBC样本信息

SHA256

86e4e23f9686b129bfb2f452acb16a4c0fda73cf2bf5e93751dcf58860c6598c

C2

137.220.49.66

通信加密算法

RC4

字符串加密算法

XOR

通信加密密钥

D4 AC DA CB 2D 35 AB 3B 0D C4 C4 48 FE B7 C8 42 C9 4D AE D5 35 9C 73 E7 F3 5E 79 8E 4D 06 B8 EF 43 8E D6 39 90 93 1A 61 9B 00 00 00 00 00 00 00 00 00

字符串加密密钥

D4 AC DA CB 2D 35 AB 3B 0D C4 C4 48 FE B7 C8 42 C9 4D AE D5 35 9C 73 E7 F3 5E 79 8E 4D 06 B8 EF 43 8E D6 39 90 93 1A 61 9B

  1. 代理实现过程

样本会收集计算机名和卷序列号,加密后发送给C&C服务器。C&C服务器会下发开启代理的指令,样本接收到指令后与C&C服务器建立加密的SOCKS5隧道。C&C服务器默认开启443端口与受害机进行加密SOCKS5通信,开启4001~49151端口与攻击者进行SOCKS5通信。攻击者会连接C&C服务器上的SOCKS5代理,并发起数据请求,该请求由C&C服务器通过加密的SOCKS5通道发送给受害机,受害机获取到数据响应后通过加密的SOCKS5通道返回给C&C服务器,服务器解密后再发送给攻击者。

图 3‑10 反向代理实现过程

  1. 通信数据解密

SystemBC使用RC4算法加密与C&C服务器通信的数据。密钥为“D4 AC DA CB 2D 35 AB 3B 0D C4 C4 48 FE B7 C8 42 C9 4D AE D5 35 9C 73 E7 F3 5E 79 8E 4D 06 B8 EF 43 8E D6 39 90 93 1A 61 9B 00 00 00 00 00 00 00 00 00”,共50字节。

  1. 上线包解密

上线包共100字节,包含系统版本、用户名和卷序列号。

图 3‑11 上线包

图 3‑12 上线包结构

图 3‑13 上线包解密

  1. 控制指令解密

C&C服务器下发给SystemBC的数据格式如下图所示,数据长度是数据部分的长度,地址类型包括“1”、“3”和“4”,1代表地址是域名,2代表地址是IP,3代表地址是IPv6。

图 3‑14 控制指令

图 3‑15 控制指令格式

图 3‑16 地址类型

头部数据和其余数据是分开加密的,解密时需要先解密4字节的头部数据,再解密剩余的数据部分。

图 3‑17 头部单独解密

图 3‑18 数据单独解密

  1. SOCKS5通信解密

SystemBC接收到指令后,加密SOCKS5协议的数据发送给C&C服务器,建立SOCKS5代理。

图 3‑19 加密的SOCKS5协议数据

图 3‑20 代理数据解密

  1. 字符串解密

SystemBC使用XOR算法对字符串进行解密,密钥为“D4 AC DA CB 2D 35 AB 3B 0D C4 C4 48 FE B7 C8 42 C9 4D AE D5 35 9C 73 E7 F3 5E 79 8E 4D 06 B8 EF 43 8E D6 39 90 93 1A 61 9B”。在对字符串进行解密时,密钥起始数据偏移通过“(要解密的数据地址-0x404000)%0x28”得到。

图 3‑21 字符串XOR解密

4.产品检测

观成科技瞰云加密威胁智能检测系统可成功对Play勒索软件组织使用的自研工具Grixba、商业工具SystemBC和CobaltStrike进行检测。

图 4‑1 Play勒索软件自研工具Grixba告警截图

图 4‑2 商业木马SystemBC告警截图

图 4‑3 商业木马CobaltStrike告警截图

5.总结

Play勒索软件组织在攻击过程中多以开源工具和商业工具为主,少量使用自研工具。自研工具如Grixba流量特征明显,商业工具如CobaltStrike、SystemBC具有时间和空间侧的可检测特征,在流量侧对这些工具进行检测,有助于在攻击初期提前发现攻击活动,防止机密数据被加密勒索,有效减少数据和财产损失。而开源SSH工具如WinSCP和Putty本身无恶意行为,利用它们进行数据窃取,会加大检测难度。观成科技安全研究团队会在SSH窃密流量检测方面持续发力,不断强化检测能力,覆盖勒索软件组织产生的更多加密流量。

6.参考链接
  1. 《从八个方面认识勒索攻击和危害》之二:勒索攻击的两种典型模式

https://www.antiy.cn/About/news/20211103.html

  1. An In-Depth Look at Play Ransomware

https://explore.avertium.com/resource/an-in-depth-look-at-play-ransomware

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/662248.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【ONE·Git || 基本用法入门】

总言 主要内容:主要介绍Git中常用的指令。   PS:多人协作与企业开发模型使用,此部分内容不作博文总结。             文章目录 总言1、初识Git1.1、版本控制器1.2、git安装 2、基本操作2.1、Git本地仓库2.1.1、创建Git本地仓库&…

【算法工程师】(三年面试五年模拟版)总结

写在前面: WeThinkIn (公主号) 学习经验分享 目录 1、机器学习基础 2、深度学习基础 2.1 1*1卷积的作用 注:卷积核的个数对应输出的通道数(channels),比如输入6*6*64,卷积核1…

Keil5 ~STM32报错Solutions#1

一、error: #268: declaration may not appear after executable statement in block

朋友圈定时发送设置

人日常中不可缺少的一件事,同时也是企业用来触达客户的重要渠道,下面一起来了解下微信朋友圈怎么定时发送呢?

生态农业:引领未来农业新篇章

生态农业,正以其独特的魅力和创新理念,引领着未来农业发展的新篇章。在这个充满变革的时代,我们需要更加关注农业的可持续发展,而生态农业正是实现这一目标的重要途径。 生态农业产业的王总说:生态农业强调生态平衡和可…

五种不寻常的身份验证绕过技术

身份验证绕过漏洞是现代web应用程序中普遍存在的漏洞,也是隐藏最深很难被发现的漏洞。 为此安全防护人员不断在开发新的认证方法,保障组织的网络安全。尽管单点登录(SSO)等工具通常是对旧的登录用户方式的改进,但这些技术仍然可能包含严重的…

Ubuntu22.04之解决:Flameshot无法截图问题(二百三十五)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

qt中实现多语言功能

qt中实现多语言功能 原理: 其本质就是生成ts文件,然后使用Linguist软件手工翻译,再生成qm文件,最后在主程序的开始加载不同的qm文件,实现多语言。 步骤: 修改程序文件 在pro文件中加入说明 TRANSLATI…

Android环境下Mesa初始化流程重学习之eglCreateContext

Mesa初始化流程重学习之eglCreateContext 引言 没有啥好说的了,直接上手撸代码!总得找点事情干不是!我打工我快乐!我奋斗,我快乐! 一. 核心结构体之间的关联 二. eglCreateContext流程分析 eglCreateContext(...)//s…

docker-compose jira、bugzilla

一、jira 同这篇文章: linux docker 部署破解版本jira:8.4.0——测试体验(非商用)_jira docker-CSDN博客 直到构建完破解版本的镜像就可以了~ 二、bugzilla 1. 拉取镜像: 官网镜像搜索bugzilla,第一个就是: 直接…

OLED写入指令和数据

1.OLED写命令 写命令/数据的代码 / * 1. start() 2. 写入 b0111 1000 0x78 3. ACK 4. cotrol byte: (0)(0)000000 写入命令 (0)(1)000000写入数据 5. ACK 6. 写入指令/数据 7. ACK 8. STOP */ void Oled_Write_Cmd(char dataCmd)5.1.4 OLED的寻址模式 如何显示一个点&#x…

信息系统项目管理师0136:工具与技术(8项目整合管理—8.9结束项目或阶段—8.9.2工具与技术)

点击查看专栏目录 文章目录 8.9.2 工具与技术 8.9.2 工具与技术 专家判断 结束项目或阶段过程中,应征求具备如下领域相关专业知识或接受过相关培训的个人或小组的意见,涉及领域包括:管理控制;审计;法规与采购&#xf…

实验八 单区域OSPF路由协议配置

一、实验目的 掌握 OSPF 动态路由协议的配置、诊断方法。 二、实验步骤 1、 运行Cisco Packet Tracer软件,在逻辑工作区放入三台路由器、两台工作站PC及一台笔记本,分别点击各路由器,打开其配置窗口,关闭电源,分别加…

小红书广告如何推广?投放费用是多少?

小红书以其独特的社区文化和用户粘性,成为了众多品牌争相推广的热门平台,如何在小红书上有效推广广告,让品牌信息精准触达目标用户,成为了众多营销人员关注的焦点,云衔科技为企业提供专业的开户和代运营服务。 一、小…

音乐传奇告别之作:《杰作》未解之谜❗❗

坂本龙一的《杰作》不仅是一部音乐会纪录电影,更是他赠予世界的一封深情告别信。 这部影片精心收录了这位音乐巨匠生前最后一场钢琴独奏音乐会的珍贵瞬间, 其中涵盖了《圣诞快乐,劳伦斯先生》、《末代皇帝》、《水》等二十首令人陶醉的经典…

爬虫的福音-移动蜂窝代理

在爬虫与反爬虫斗争愈演愈烈的情况下,各大网站和 App 的风控检测越来越强,其中一项就是 IP 封禁。 为了解决 IP 封禁的困扰,一个有效的方式就是设置代理,设置代理之后,爬虫可以借助代理的 IP 来伪装自己的真实 IP 地址…

SpringBoot 之基础(一)

文章目录 SpringBoot 基础基本概念创建 SpringBoot 项目编码编写启动类写 Controller运行 / 测试properties 和 yml关闭 Spring banner日志spring-boot 默认的日志格式 解决 start.spring.io 不能访问不使用 spring boot 的 parent pom SpringBoot 基础 Spring Boot 是由 Pivo…

探析GPT-4o:技术之巅的跃进

如何评价GPT-4o? 简介:最近,GPT-4o横空出世。对GPT-4o这一人工智能技术进行评价,包括版本间的对比分析、GPT-4o的技术能力以及个人感受等。 随着人工智能领域的不断发展,GPT系列模型一直处于行业的前沿。最近,GPT-4…

[数据集][图像分类]家庭场景下的家具分类数据集1010张101类别

数据集类型:图像分类用,不可用于目标检测无标注文件 数据集格式:仅仅包含jpg图片,每个类别文件夹下面存放着对应图片 图片数量(jpg文件个数):1010 分类类别数:101 类别名称:[“bath_bath”,“bath_heated_t…

Python开发:简单的密码爆破工具

当我们进行在线密码破解时,使用 BurpSuite 以及 wfuzz 足以应对大部分网站应用场景。但是在遇到一些特殊情况时我们还是需要自己来开发密码爆破工具,本文将介绍如何使用Python开发一款简单的密码爆破工具。 0x01 背景介绍 密码破解 记得有大佬曾经说过…