欢迎访问本站!

首页科技正文

ALLBET官网娱乐平台开户(www.aLLbetgame.us):一步一步剖析勒索软件Darkside(下)

admin2021-07-2982勒索软件

IPFS

www.ipfs8.vip)是FiLecoin致力服务于使用FiLecoin存储和检索数据的官方权威平台。IPFS官网实时更新FiLecoin(FIL)行情、当前FiLecoin(FIL)矿池、FiLecoin(FIL)收益数据、各类FiLecoin(FIL)矿机出售信息。并开放FiLecoin(FIL)交易所、IPFS云矿机、IPFS矿机出售、租用、招商等业务。

,

在本文中,我们继续从手艺角度为读者深入剖析勒索软件Darkside。

一步一步剖析勒索软件Darkside(上)

一步一步剖析勒索软件Darkside(中)

线程流动:sub_4095AB

该线程首先会解密以下信息:

 

图77

Darkside勒索软件的版本也被解密,如下所示:

 

图78

然后,该软件将解密另一个JSON结构,将用于网络内陆机械的数据:

 

图79

之后,该历程会检查驱动器的类型,并寻找DRIVE_REMOVABLE(0x2)、DRIVE_FIXED(0x3)和DRIVE_REMOTE(0x4):

 

图80

GetDiskFreeSpaceExW函数用于检索目的驱动器的信息,如存储容量和可用空间:


图81

NtDuplicateToken被用来复制一个现有的令牌,并获得一个新的接见令牌的句柄(0xC = TOKEN_DUPLICATE | TOKEN_IMPERSONATE | TOKEN_QUERY 和 0x2 = TokenImpersonation): 

图82

然后,通过挪用ZwSetInformationThread例程来修改线程的模拟令牌,如图83所示(0x5 = ThreadImpersonationToken):


图83

同时,该勒索软件还会检索与当前线程相关的用户名,以及内陆机械的NetBIOS名称:


图84


图85

另外,机械的当前语言是从“LocaleName”值中检索的,如下图所示:


图86

NetGetJoinInformation用于获取内陆皮算机的联接状态信息:


图87

通过查询“ProductName”值可以提取Windows的产物名称,通过查询“ProductID”值可以提取Windows产物ID,详细如下图所示:


图88


图89

该恶意软件组织了以下JSON,其中包罗要传输给C2服务器的数据:

 

图90

最终数据如下JSON花样所示:

 

图91

上面的数据将通过自界说加密算法举行加密:


图92

 

图93

加密运算的效果是base64编码的,如下所示:

 

图94

 

图95

下面的函数用于天生2个随机的4字节值,这些值将用于网络通讯。现实上,该恶意软件是使用诸如RDRAND和RDSEED之类的指令来天生随机数(若是支持的话)的,我们将下文对其举行更深入的解读(它也用于天生Salsa20矩阵):

 

图96

网络请求的参数具有以下结构:random_number1=base64(encryptionresult)&random_number2=visit_uid:

 

图97

InternetOpenW函数是使用恶意软件解密的用户署理作为参数挪用的:


图98

InternetConnectW用于毗邻到端口443上的一个C2服务器(Baroquetees[.]com):


图99 

然后使用HttpPopenRequestW例程确立HTTP请求句柄,如图100所示:


图100

此外,这里另有一个对InternetSetOptionW API的挪用,该API用于设置句柄的平安标志(0x1f=INTERNET_OPTION_SECURITY_FLAGS):


图101

然后,该恶意软件使用HttpSendRequestW将POST请求发送到C2服务器:


图102


图103

服务器返回的状态代码可以使用HttpQueryInfoW API举行检索(0x13=HTTP_QUERY_STATUS_CODE):


图104

有趣的是,该勒索软件预期的并不是200状态代码,而是500(内部服务器错误)。若是状态代码不是500,它将使用第二个C2服务器Rumahsia[.]com,并重复上述所有步骤:

 

图105


图106

接下来,我们继续剖析主线程。

这个二进制程序将遍历机械上可用的卷,并使用CreateFileW例程来打开它们:


图107

DeviceIoControl被用来获取关于磁盘分区的类型、巨细和性子方面的信息(0x70048 = IOCTL_DISK_GET_PARTITION_INFO_EX):


图108

然后,使用CreateThread确立了一个新的线程:


图109

线程流动:sub_407558

该线程做的唯一流动是使用GetLogicalDriveStringsW API来检索内陆机械上的有用驱动器:


图110

若是卷没有与其相关联的驱动器号,那么该勒索软件就会挪用SetVolumeMountPointW API,如下图所示:


图111

该恶意程序的目的位以下类型的驱动器:DRIVE_REMOVABLE(0x2)、DRIVE_FIXED(0x3)和DRIVE_REMOTE(0x4):

 

图112

CreateFileMappingW函数被用来确立一个命名的文件映射工具(名称为“Local\job0-< Process Id>”则意味着该工具是在会话命名空间中确立的):


图113

然后,通过挪用MapViewOfFile例程(0xF001F=FILE_MAP_ALL_ACCESS),将文件映射的视图映射到历程的地址空间:


图114

同时,它还会建扬名为“local\\job0-< process id >-event”的命名事宜工具:


图115

该勒索软件行使3个参数启动自己,新历程将执行响应的加密操作:


图116

OpenMutexW用于打开名为“global\\t-job0-< process id >”的命名互斥锁(现在不存在):


图117

通过挪用OpenEventW API(0x1F0003=EVENT_ALL_ACCESS)打开前面确立的事宜工具,如图118所示:


图118

之后,它将确立一个与文件句柄无关的I/O完成端口,主线程将使用该端口向辅助线程发送待加密的数据:


图119

ALLBET官网娱乐平台开户

欢迎进入ALLBET官网娱乐平台开户(www.aLLbetgame.us),欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

使用CreateThread例程确立了两个差其余线程来处置文件的加密义务:


图120

确立用于赎金说明的README< RansomPseudoValue >.TXT文件,并填充到恶意软件加密的每个目录中:


图121

不外,该历程会阻止加密某些特定文件,如下图所示:


图122

对于扩展名包罗在前面解密的文件扩展名列表中的文件,也不会被加密:


图123

使用CreateFileW和ReadFile函数打开和读取每个目的文件:

图124


图125

修改文件扩展名,使其包罗< ransompseudovalue >,如下所示:


图126

同时,还会挪用CreateIoCompletionPort函数,将现有的I/O完成端口与FileHandle参数相关联:


图127

RSA公然指数和RSA模将用于Salsa20矩阵的加密历程,我们将在后面先容:


图128

该勒索软件会检查处置器是否支持RDRAND和RDSEED指令。若是支持的话,它将使用其中一个指令来天生56个随机字节,并将8个NULL字节添加到天生的缓冲区中。若是这些指令都不支持的话,该恶意软件将使用rdtsc指令天生确定性的时间戳,以用于提供一个64字节的Salsa20矩阵。

 

图129

 

图130

该线程给出了RSA-1024算法的自界说实现(它不依赖于Windows API)。简朴说,就是数据d通过公式(d^exponent)%modulus来天生响应的密文。原始模数的盘算是使用加法和减法举行的,下面显示的是部门实现代码:

 

图131

 

图132

Salsa20矩阵使用自界说RSA实现举行加密,如图133所示:

 

图133

然后,使用一个自界说的“哈希”函数进一步处置上述加密效果,从而天生一个16字节的输出效果:

 

图134

将被加密的文件内容追加到将发送到事情线程的缓冲区中:

 

图135

Salsa20矩阵也被添加到缓冲区中,它将被事情线程用来加密文件:


图136

线程流动:sub_405E7C(文件加密)

文件内容使用自界说的Salsa20实现举行加密,并用密文笼罩缓冲区中的明文:

 

图137

下面是自界说实现中的一个代码片断:

 

图138

先把加密的内容被写入原来的文件,然后写入加密的Salsa20矩阵和哈希值,如以下图所示:

 

图139


图140

对于这个线程的剖析到此竣事。下面,我们继续剖析主线程。

若是当前目录包罗“backup”,那么恶意软件就会将其删除:


图141

主线程通过挪用PostQueuedCompletionStatus例程将上述缓冲区(包罗要加密的文件内容等)发送给事情线程:


图142

我们还发现了一个函数,我们以为它是用来流传恶意软件到域控制器的(我们的环境中没有)。它将挪用DsGetDcNameW、DsGetDcOpenW和DsGetDcNextW等函数:

 

图143

Darkside使用NetShareEnum API枚举所有网络共享,并通过迄今为止形貌的主要加密例程对每个共享举行加密处置:

 

图144

线程流动:sub_4096A4

下面的JSON也会被线程解密:

 

图145

该文件通过挪用RegCreateKeyExW打开以下注册表项:


图146

通过挪用RegQueryValueExW函数检索产物ID:


图147

盘算机GUID是从注册表中提取的,它是示意盘算机的唯一标识符:


图148


图149

加密完成后,该恶意软件会向C2服务器发送加密统计信息,如:受害者ID、uid、加密文件数、加密文件巨细、跳过文件数和运行时间。最后的JSON结构如下所示:

 

图150

如前所述,缓冲区是用自界说算法加密的,而且是经由base64编码的。发送到C2服务器的请求如下图所示:


图151

若是启用了自删除功效,Darkside将使用shellexecutew删除自身:


图152


图153

正如我们在剖析最先时所指出的那样,这个二进制程序可以用差其余参数运行:

◼1个参数:filename,示意只对指定的文件举行加密

◼2个参数:“-path” directory,示意只对指定的目录举行加密

◼3个参数:“-work”worker0job0-< process id >,这是由初始历程发生的,前面已经讲过了

在处置快捷方式文件(.lnk文件)时,该勒索软件会以差其余方式处置差其余情形。简朴来说,它希望从这个链接中提取文件的完整路径。为此,它会使用{000214F9-0000-0000-C000-0000000046}(IShellLinkW接口)的CLSID来挪用CoCreateInstance API:


图154

不幸的是,Scylla在这里无法带来辅助,由于它不能为我们提供响应的方式。我们发现接下来的两个函数挪用可以提取文件/目录的路径:


图155


图156

上面提取的文件像也将举行加密处置:

 

图157

参考资料

MSDN: https://docs.microsoft.com/en-us/windows/win32/api/

Fakenet: https://github.com/fireeye/flare-fakenet-ng

Any.run: https://any.run/report/0a0c225f0e5ee941a79f2b7701f1285e4975a2859eb4d025d96d9e366e81abb9/e7a712f5-961a-45b4-a7e5-a0f7196113a5

VirusTotal: https://www.virustotal.com/gui/file/0a0c225f0e5ee941a79f2b7701f1285e4975a2859eb4d025d96d9e366e81abb9/detection

Analysis of Darkside Ransomware v1.8.6.2: https://chuongdong.com/reverse%20engineering/2021/05/06/DarksideRansomware/

Fireeye report: https://www.fireeye.com/blog/threat-research/2021/05/shining-a-light-on-darkside-ransomware-operations.html

https://gist.github.com/api0cradle/d4aaef39db0d845627d819b2b6b30512

https://forum.powerbasic.com/forum/user-to-user-discussions/source-code/25222-wmi-wrapper-functions

https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wmi/3485541f-6950-4e6d-98cb-1ed4bb143441

样本指标

C2域名:  baroquetees[.]com, rumahsia[.]com

SHA256: 0A0C225F0E5EE941A79F2B7701F1285E4975A2859EB4D025D96D9E366E81ABB9

确立的文件: README< RansomPseudoValue >.TXT, %PROGRAMDATA%\< RansomPseudoValue>.BMP, %PROGRAMDATA%\< RansomPseudoValue>.ico

服务名: < RansomPseudoValue >, Service display name:

注册表项: HKCR\< RansomPseudoValue >\DefaultIcon=%PROGRAMDATA%\< RansomPseudoValue>.ico

用户署理:  Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:79.0) Gecko/20100101 Firefox/80.0 (prone to False Positives)

本文翻译自:https://cybergeeks.tech/a-step-by-step- *** ysis-of-a-new-version-of-darkside-ransomware/

网友评论