一、概述
在过去一年里头,全球范围之内,勒索病毒攻击活动呈现出爆炸式的增长态势,给许许多多的组织以及个人带来了巨大无比的损失还有风险。和2022年相比较而言,全球勒索软件受害者的数量同比增长了55.5%,勒索赎金同比增长了64%,当中Lockbit针对英国皇家邮政所发起的勒索攻击创下了有史以来勒索赎金的最高纪录,达到了令人震惊的8000万美元。以上这些仅仅只是已经公开的数据,然而在被勒索之后出于声誉因素选择隐瞒的企业数量多得数都数不清。鉴于当下形势极其严峻,奇安信天穹沙箱在近日上线了勒索信提取功能,就此功能而言,它能够有效地识别以及提取勒索病毒运行期间所释放出来的勒索信,并且借助对勒索信内容展开分析,进而识别样本家族,以此为进一步守护用户资产安全提供保障,保驾护航。
二、勒索信现状调研
何种勒索病毒,在加密进程里或加密结束后,于显眼目录(一般是桌面)释放勒索信,所以勒索信是检测勒索病毒的关键特征的其中一个。天穹团队最近调研了涵盖Lockbit、Blackcat、DarkSide、Maze、WannaCry等家族或者变种的总共165封不一样类型的勒索信,归纳出了一些有价值的结论:
天穹沙箱把上述那些特征放进了勒索信检测功能里啦,接下来我们将要拿一个样本当作例子,去展示这个功能哟。
三、样本信息
该样本基本信息如下:
四、样本分析1、报告分析
开始时,先在分析页面投递样本,要留意,勒索病毒常常会生成计算密集型任务,为确保能跑出更多行为,我们可于高级选项里选Windows 11 x86 - 64分析系统,所选分析时间为2分钟,设置好了之后就能投递样本了。
图1 设置高级选项
查看标签,能看到静态引擎所识别的样本,是属于被称作BeastRansomware家族的一个勒索病毒。
图2 静态引擎标签
在深度威胁分析里的勒索软件检测当中能够看到,沙箱识别出样本家族是BeastRansomware,且从文件readme.txt里成功提取到了之包含勒索信的文件,与此同时还从那次提取到的勒索信里提取到了大量的邮箱地址。
图3 勒索软件检测
依据网络流量威胁检测,能够察觉到样本存有P2P下载,以及445端口扫描行为。
图4 网络流量威胁检测
2、动态行为
该样本的动态表现极为复杂,并且受到网络、分析时间等诸多因素的作用,仅仅依靠沙箱是没办法获取其全部行为的,所以以下内容会把沙箱报告与人工结合起来一同完成分析。
获取命令行参数
此样本于启动之后,会对字符串!!!CONFIG!!!以及!!!PASSWORD!!!进行解密,并且获取命令行参数:
图5 解密字符串并获取命令行参数
检测语言和区域
这个样本不会对随便哪一个主机进行无差别攻击,与之相反的是,它在发动攻击之前,会凭借判断系统区域以及语言设置,以此来防止出现误伤到其他主机的情况。
区域检查阶段之时,程序会呼叫GetLocaleInfoW去取得区域设置信息,并且跟解密之后的国家或者地区代码展开比对,要是检测到以下这些国家或者地区,那么就会主动地退出进程:
图6 检查系统区域设置
在语言检查的阶段之时,程序会去调用GetSystemDefaultUILanguage来获取系统默认所使用的UI语言标识符,要是检测到了以下这些语言,那么就会自动去退出程序。
图7 检测系统语言设置
在沙箱报告中,我们也可以看到地址位置收集行为:
图8 收集主机地址位置行为
进程防多开
样本会借助创建互斥体此举,来避免进程出现多开的情况,(BEAST HERE?)
图9 使用互斥体防止进程多开
于沙箱报告里,能够见到互斥锁的创建举动,并且变量名称是BEAST HERE?。
图10 创建互斥体行为
初始化秘钥和加密后缀
样本会借助调用CryptAcquireContextA,从特定的CSP(也就是密码服务提供者)那里,获得密钥容器句柄,这里所指的CSP乃是Microsoft Enhanced RSA and AES Cryptographic Provider,微软针对该CSP的描述如下:
Constant/valueDescription
MS_ENH_RSA_AES_PROV
“微软增强型RSA和AES加密提供程序”,拆分为:“微软”,“增强型”,“RSA”,“和”,“AES”,“加密”,“提供程序”。
微软,AES加密提供商的那个,Cryptographic的,Provider。
视窗操作系统XP版本之下,有着一个名为“Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)”的东西。
要是秘钥容器句柄获取遭遇失败,那么就会去尝试别的CSP,然而一般来讲都是能够获取成功的。
图11 获取秘钥容器句柄
在完成CSP请求之后,程序会依照顺序,从当前程序所处的目录,以及环境变量ALLUSERSPROFILE所配置的目录(C:\ProgramData),进行遍历,并且尝试去获取default.key文件,要是不存在的话,就会在C:\ProgramData目录之下生成default.key文件。
图12 查找default.key文件
生成的default.key内容如下:
图13 default.key
此外,还会生成加密后缀,其格式是:.{{8}-{4}-{4}-{4}-{12}}.BEAST,并且要解开在勒索信中的秘密:标点符号。
图14 生成加密后缀和解密勒索信
于沙箱报告里,能够见到样本寻觅且创立default.key,以及释放勒索信readme.txt的行径。
图15 查找并创建default.key
图16 释放readme.txt
提权与目录权限设置
样本会将权限提升到SeTakeOwnershipPrivilege权限,也就是具备对系统中任何文件的读写权限是这样的,关于此提权技巧,能够参考这里的测试代码:那里的Homework-of-C-Language/EnableSeTakeOwnershipPrivilege.cpp。
在图17当中,将权限提升至SeTakeOwnershipPrivilege。
在沙箱报告中,也可以看到此提权行为:
图18 改变进程权限
微软对该权限描述如下:
SE_TAKE_OWNERSHIP_NAME
跟着持续去获取计算机名称,再获取用户名,接着获取SID,随后开展创建以及设置DACL(Discretionary access control)的操作:
图19 获取计算机信息并创建DACL
去加载RstrtMgr.dll,接着借助GetProcAddress去获取那几个API,分别是RmStartSession、RmRegisterResources、RmGetList、RmEndSession,还要去获取环境变量%SYSTEMROOT%,也就是对应C:\Windows这个目录,而上述那些API是用来终止程序对文件的占用的。

图20 加载RstrtMgr.dll并获取API和环境变量
窗口创建
样本建成了一个窗口,其叫BEAST CLASS,把标题弄成Beast,在主窗口那儿弄了菜单,像File、Select和Exit这类,还弄了其他控件,像进度条和列表这些,并且注册了热键,设置了定时器,还有文件拖拽,这里面有个解密字符串是,BEAST | 按住ALT+CTRL时输入666以隐藏/显示这个窗口。利用热键ALT + CTRL,能够将该窗口进行隐藏或者展示,在默认情形下,窗口呈隐藏状态,借助特定的命令行参数,就能够让窗口变为可见。
图21 创建窗口
详细的窗口信息如下:
创建主菜单:
“文件夹”菜单,“工具”菜单,“帮助”菜单。
创建的按钮:
清空回收站
样本会调用SHEmptyRecycleBinW接口以将回收站清空,并且会凭借CheckTokenMembership来判断当下用户是不是属于管理员。
图22 清空回收站和判断管理员
删除卷影副本
样本会对COM组件进行初始化,与本机WMI建立连接,对代理的安全信息予以设置,之后经由WQL语句SELECT * FROM Win32_Shadow Copy去查询所有卷影副本的详细信息。
图23 查询卷影副本
获取卷影副本信息:
图24 获取卷影副本信息
经过最后一次的调用,DeleteInstance这个方法被用于删除卷影副本,而其产生的最终影响便是全部卷影副本都被删除了。
图25 删除卷影副本
终止进程和服务
样本会对进程以及服务展开遍历,会将agntsvc.exe进程予以终止,还会把AcronisAgent服务终止掉,前者所起的作用是避免进程占据资源从而对于文件加密产生影响。后者乃是为Acronis Cyber Protect软件所提供的勒索软件防护以及备份服务,在沙箱报告当中同样能够看到这两个行为。
图26 遍历进程列表
图27 遍历服务
网络行为
样本会去访问一个看起来疑似P2P的链接,链接是https//iplogger.com/1lKUz.torrent ,因为这个链接已经处于死亡状态,所以它所具有的作用是未知的:
图28 访问URL链接
另外,还察觉到了445端口扫描模块,它有可能被用于ms17 - 010(永恒之蓝)漏洞利用。
图29 445端口扫描
在沙箱报告中可以看到这两个行为:
图30 445端口扫描
图31 访问URL链接
文件加密
样本会去执行文件加密方面的操作,样本针对该操作定义了两个函数,第一个函数是用来对文件路径开展全盘遍历的,第二个函数是用于加密文件的,程序会按照当前计算机逻辑处理器的数量来决定线程数,其中在文件扫描的时候会运用6乘以逻辑处理器数目的线程,在文件加密的时候会运用2乘以逻辑处理器数目的线程。
图32 多线程遍历和加密文件
文件遍历与文件加密的通信运用了多生产者 - 多消费者模型,遍历线程身为生产者,会把符合要求的文件路径插入有锁链表,并且每次放入时会核查文件是否已然存在,以此避免重复插入,加密线程作为消费者,每次加密时会从链表头部取出一个路径,接着删除节点,最终经由路径访问文件去执行加密操作,整理设计流程如下所示:
图33 遍历-加密流程
有趣的是,样本直接借助临界区结构体里的数据结构来存储文件路径,临界区结构体被定义成RTL_CRITICAL_SECTION,而_RTL_CRITICAL_SECTION_DEBUG结构体含有一个Type变量和一个CreatorBackTraceIndex变量,两个变量都是WORD类型,样本把这两个变量合并成DWORD类型去存储文件路径指针,并且使用其他变量去存储头尾指针。
typedef struct _RTL_CRITICAL_SECTION {
PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
LONG LockCount;
LONG RecursionCount;
HANDLE OwningThread; // from the thread's ClientId->UniqueThread
HANDLE LockSemaphore;
ULONG_PTR SpinCount; // force size on 64-bit systems when packed
} RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION;
typedef struct _RTL_CRITICAL_SECTION_DEBUG {
WORD Type;
WORD CreatorBackTraceIndex;
struct _RTL_CRITICAL_SECTION *CriticalSection;
LIST_ENTRY ProcessLocksList;
DWORD EntryCount;
DWORD ContentionCount;
DWORD Flags;
WORD CreatorBackTraceIndexHigh;
WORD SpareWORD ;
} RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG, RTL_RESOURCE_DEBUG, *PRTL_RESOURCE_DEBUG;
样本插入节点和取出节点部分伪代码如下:
图34 插入与读取节点
最后,样本会去读取文件的内容,之后进行加密,在加密算法方面,主要运用的是AES与ChaCha20,新文件的后缀需符合上文所提及的加密后缀格式。
图35 文件加密
于沙箱报告里,我们同样能够见到诸多文件操作,在此处生成的全新文件,其后缀成为{B443118B - 1C7B - F0A4 - E14F - B6275672F44A}.BEAST。
图36 释放勒索文件
五、IOC
93084bd618f0f70b2307dc0c365989ea9953a77e encrypter-win32.exe
https[:]//iplogger.com/1lKUz.torrent 疑似P2P链接
注意:截止发稿时,该链接已死亡。
六、其他家族勒索信展示
天穹沙箱,除了能够支持文本格式的勒索信,以及检测Windows平台的勒索病毒之外,还具备支持渲染HTML格式勒索信的能力,并且能够检测Linux、MacOS平台的勒索病毒。另外,则有一些其他勒索家族报告在此予以展示:
Maze
安全哈希算法1:零一C四五六BB五九C一C二A六八二零八D三8D四BA五E三6D二九二一二A四F。
此番勒索信是一个HTML格式的文件,而天穹沙箱会自动把HTML文件给渲染成图片,以此来方便用户进行预览。
图37 Maze家族勒索信提取
Lockbit
哈希算法SHA1所对应的数值是,5CFDFA1AA620AD8DCF85685B0F8103441211E0ED。
臭名远扬的勒索家族,从2019年起就开始有活动,受其害的人多得数不清,在去年的时候,赎金达到了8000w美元,创下了最高的记录。
图38 Lockbit家族勒索信提取
某MacOS勒索病毒
安全哈希算法1:4371132451177999FDE66054FC84382A94F606C0。
描述:有一个存在于MacOS平台的勒索病毒,天穹沙箱具备支持各种平台进行勒索信提取的能力,这种支持并不限定于Windows平台。
图39 某MacOS勒索病毒勒索信提取七、 技术支撑与反馈
有多年深耕沙箱分析技术的星图实验室,致力于使沙箱更具易用性、更显智能。将沙箱打造为地表最强的动态分析沙箱,给每一位样本分析人员配备便捷使用的分析工具,一直都是我们所追求的目标。倘若各位同学于使用期间碰到任何问题,欢迎与我们取得联系。
天穹沙箱能够支持对14种CPU架构的虚拟机展开模拟,其环境数量在50多个,可全面覆盖PC、服务器、智能终端以及IoT设备的主流设备架构形态。在宿主机这一方面,除了Intel/AMD的x86架构CPU以及CentOS操作系统以外,天穹沙箱还支持海光、飞腾、鲲鹏等x86、ARM架构国产CPU以及银河麒麟、中科方德等信创操作系统。
天穹沙箱系统,通过云沙箱这种形式,借助引擎输出这种方式,利用数据接口这种途径,来服务公司各个业务部门,其中涵盖天眼,包含终端安全,涉及态势感知,有ICG这一部分,还有锡安平台,以及安服等。