本帖最后由 梦幻的彼岸 于 2022-11-17 10:17 编辑
Threat Spotlight: Cyber Criminal Adoption of IPFS for Phishing, Malware Campaigns
翻译:梦幻的彼岸
- InterPlanetary File System(IPFS)是一种新兴的Web3技术,目前正被威胁者广泛滥用。
- 思科Talos已经观察到多个正在进行的活动,这些活动利用IPFS网络来托管其恶意软件有效载荷和网络钓鱼工具包基础设施,同时促进其他攻击。
- IPFS通常被用于合法目的,这使得安全团队更难区分其网络中的良性和恶意IPFS活动。
- 目前,多个恶意软件家族被托管在IPFS内,并在恶意软件攻击的初始阶段被检索。
- 企业应该熟悉这些新技术,以及威胁者如何利用这些技术来防御使用这些技术的新技术。
近年来,新的Web3技术的出现导致互联网上内容的托管和访问方式发生了巨大的变化。这些技术中的许多都集中在规避审查制度和分散对人们经常使用和访问的大部分内容和基础设施的控制。虽然这些技术在各种实际应用中都有合法用途,但它们也为攻击者创造了在网络钓鱼和恶意软件传播活动中利用它们的机会。在过去几年中,Talos观察到越来越多的网络犯罪分子利用诸如InterPlanetary文件系统(IPFS)等技术来促进恶意内容的托管,因为它们提供了相当于 "bulletproof hosting "的功能,并且对试图调节存储在那里的内容具有极强的抵御能力。 InterPlanetary 文件系统(IPFS)是什么?InterPlanetary 文件系统(IPFS)是一项Web3技术,旨在实现互联网上资源的分散存储。当内容存储在IPFS网络上时,它被镜像到参与网络的许多系统中,因此,当其中一个系统不可用时,其他系统可以为该内容的请求提供服务。 IPFS存储不同类型的数据,如与NFT相关的图像,用于渲染网页的资源,或可被互联网用户访问的文件。IPFS被设计成对内容审查有弹性,这意味着一旦内容被存储在IPFS网络内,就不可能有效地将其删除。 IPFS网关希望访问存储在IPFS中的内容的用户可以使用一个IPFS客户端,如这里提供的客户端,或者他们可以利用 "IPFS网关",它有效地位于互联网和IPFS网络之间,允许客户访问网络上的内容。这种功能类似于Tor2web网关提供的访问Tor网络中的内容,而不需要安装客户端。 任何人都可以使用一系列公开可用的工具建立一个IPFS网关。这张截图显示了在互联网上可获得的几个公共IPFS网关: 在IPFS内存储新的内容很简单,而且一旦存在,这些内容就会有弹性,不会被攻陷,这使得它对各种攻击者的吸引力越来越大,可以用来存放钓鱼网页、恶意软件有效载荷和其他恶意内容。
当系统使用IPFS网关访问存储在IPFS网络上的内容时,它们通常依赖于用于访问互联网上其他网站的基于HTTP/HTTPS的相同通信。IPFS网关可以被配置为以几种不同的方式处理传入的请求。在一些实现中,HTTP请求中指定的子域通常被用来定位IPFS网络上的请求资源,如下例所示,这是IPFS网络上托管的Wikipedia的一个镜像副本。该资源的IPFS标识符,或CID,在下面突出显示。 hxxps[:]//bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze[.]ipfs[.]infura-ipfs[.]io 在其他实施方案中,IPFS资源的位置被附加到被请求的URL的末尾,如以下例子所示: hxxps[:]//ipfs[.]io/ipfs/bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze 也有其他使用DNS条目处理请求的方法。不同的IPFS网关的具体实现方式也不同。浏览器甚至已经开始实现对IPFS网络的本地支持,在某些情况下不再需要使用IPFS网关。 IPFS在网络钓鱼活动中的应用IPFS目前被用来托管网络钓鱼工具包,这些网站是网络钓鱼活动通常用来收集和收获毫无戒心的受害者的凭证。在一个例子中,受害者收到了一个声称与DocuSign文件签署服务有关的PDF文件。下面是这样一个PDF的截图: 当受害者点击 "Review Document "链接时,他们会被重定向到一个看起来像是微软认证页面的页面。然而,该页面实际上是在IPFS网络上托管的。 用户会被提示输入一个电子邮件地址和密码。然后,这些信息通过HTTP POST请求被传送到攻击者控制的网络服务器,在那里可以被收集和处理,用于进一步攻击。 在过去的一年里,我们在网络钓鱼活动中观察到了几个类似的例子,因为攻击者认识到了在IPFS网络上托管其网络钓鱼工具包所带来的内容审核挑战。在这个案例中,PDF超链接指向一个IPFS网关,该网关对内容进行审核以保护潜在的受害者,并向试图浏览该链接的受害者显示以下信息 然而,内容仍然存在于IPFS网络中,只需更改用于检索内容的IPFS网关即可确认情况确实如此。 恶意软件活动中对IPFS的使用目前有各种威胁行为者在其恶意软件分发活动中利用IPFS等技术。它为恶意的有效载荷提供了低成本的存储,同时提供了对内容节制的弹性,有效地充当了攻击者的 "bulletproof hosting"。同样,使用普通的IPFS网关来访问IPFS网络内托管的恶意内容,与使用恶意域名来检索内容相比,组织更难阻止访问。我们已经观察到目前在野外利用IPFS的各种样本。
在整个2022年,我们观察到野外的样本数量继续增加,因为这成为攻击者更受欢迎的托管方法。下面是一张图表,显示了上传到公共样本库的依赖IPFS的独特样本数量的增加 特斯拉代理的恶意广告活动我们已经观察到正在进行的恶作剧活动在整个感染过程中利用了IPFS,最终检索到了恶意软件的有效载荷。在一个例子中,发给受害者的电子邮件自称是来自土耳其的一家金融机构,并声称与SWIFT支付有关,这是一个常用的国际货币交易系统。 该电子邮件包含一个ZIP附件,其中有一个PE32可执行文件。该可执行文件是用.NET编写的,其功能是为感染链的下一个阶段提供下载器。当执行时,该下载器会接触到一个IPFS网关,以检索一个在IPFS网络中托管的数据块,如下图所示: 该数据包含一个混淆的PE32可执行文件,作为下一阶段的恶意软件有效载荷。下载器从IPFS网关获取数据并将每个字节存储在一个数组中。然后,它使用存储在可执行文件中的一个密钥值,将字节数组转换为下一阶段的PE32。
然后反射性地加载和执行,启动感染过程的下一阶段,在这种情况下,这是一个名为Agent Tesla的远程访问木马(RAT)。 在另一个例子中,我们观察到在几个月的时间里,各种恶意软件有效载荷被上传到公共样本库。我们确定了三个不同的恶意软件集群,它们可能是由同一个威胁者创建的。代码层面的问题表明,许多样本在被上传时正在进行积极的开发,可能是为了测试检测能力。 在所有三个集群中,初始有效载荷的功能是加载器,操作类似,然而,每个集群中IPFS网络上托管的最终有效载荷是不同的。我们观察到的最终有效载荷包括一个基于Python的信息窃取器、可能使用msfvenom生成的反向shell有效载荷,以及一个旨在破坏受害者系统的批处理文件。 最开始的加载器所有这些案例中使用的加载器功能相似,有时托管在Discord内容交付网络(CDN)上,这种做法在以前的恶意软件分销商中越来越常见,这里也有描述。所使用的文件名称表明,它们可能是以 "Minecraft "等视频游戏的作弊器和破解器为幌子进行传播的。在大多数情况下,加载器没有被打包,但我们确实观察到使用UPX打包的样本。
当执行时,加载器首先使用以下命令在%APPDATA%内创建一个目录结构: C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft && mkdir Network 然后,该恶意软件试图使用cURL命令从合法的软件供应商那里检索Python 3.10。 这是值得注意的,因为选择直接利用cURL可能会大大减少潜在受害者的数量,因为直到Windows 11才将其作为一个本地命令行工具添加到Windows。用来启动下载的命令行语法如下所示: 一旦ZIP存档文件被检索,它将被解压缩到先前使用PowerShell“Expand-Archive”cmdlet创建的目录中。 C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && powershell Expand-Archive python-3.10.4-embed-amd64.zip -DestinationPath %appdata%\Microsoft\Network 恶意软件然后试图检索感染链中的最终有效载荷,将其存储在网络目录中,使用文件名“Packages.txt”。加载器检索Hannabi Grabber的示例如下所示,Hannabi Grabber是用Python编写的信息窃取程序。 然后,加载器使用attrib.exe实用程序在前面创建的目录以及检索到的Python ZIP归档文件和最终负载上设置系统和隐藏标志。 C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network\python-3.10.4-embed-amd64.zip C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network\Packages.txt 最后,加载器调用新下载的Python可执行文件,并将最终有效负载作为命令行参数传递,执行感染过程的下一阶段。 C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && python.exe Packages.txt 在某些情况下,恶意软件还被观察到通过在以下位置向Windows注册表中添加条目来实现持久性: HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
HKLM\Software\Microsoft\Windows\CurrentVersion\Run 在我们分析与这个加载器相关的样本时,我们注意到正在使用的IPFS网关不再为请求服务,但是,Talos通过另一个IPFS网关手动获取下一阶段的有效负载进行分析。 反向shell在利用此加载器的一个集群中,我们观察到IPFS网络中承载的有效负载是一个Python脚本,其中包含一个大型base64编码的blob以及负责解码base64的Python代码。请注意,下面的屏幕截图是为节省空间而编辑的,因为base64编码blob相当大。 Base64包含多层Base64编码的blob,每一层都包装在负责对其进行解码的Python代码中。在对所有层进行解码之后,以下是经过去模糊处理的反向shell有效负载。 在进行分析时,C2服务器不再为TCP/4444上的请求提供服务。 具有破坏性的恶意软件在我们分析的另一个集群中,我们观察到IPFS中托管的最终有效载荷是一个Windows批处理文件,如下所示: 当批处理文件被检索到时,它被储存在网络目录中,使用文件名 "Script.bat"。 这个批处理文件负责以下的破坏性行为:
- 删除系统中的快照(shadow copies )。
- 删除存储在C:\Users(通常与用户配置文件相关)的目录内容。
- 遍历系统中所有挂载的文件系统,并删除存储在它们上面的内容。
幸运的是,在分析的样本中,加载器不适当地尝试调用批处理文件,如下所示 C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && powershell -Command start script.bat -Verb RunAs Hannabi Grabber与该加载器相关的最后一组恶意软件负责检索和执行一个名为Hannabi Grabber的基于Python的信息窃取器。在我们分析的样本中,检索到的Python版本并不包含脚本成功执行所需的模块,导致感染过程失败,然而,考虑到窃取器中存在的大量功能,我们对其进行了分析,以确认其在通过不同机制传播的情况下的检测能力。 Hannabi Grabber是一个用Python编写的全功能的信息窃取器。它利用Discord Webhooks进行C2和数据窃取。它目前的特点是支持从受害者系统上可能存在的各种应用程序中窃取信息。它从受感染的机器上收集调查信息,通过IPInfo服务获得系统的地理位置,拍摄屏幕截图,并最终将这些数据以JSON格式传输给攻击者控制的Discord服务器。 下面列出了该窃取器支持的许多各种应用程序 除了之前列出的应用程序外,该恶意软件还支持从Chrome浏览器中检索密码和cookie数据,如下图所示:
类似的功能也存在,以可能存在于系统中的Mozilla Firefox浏览器数据为目标。
该信息窃取器对Discord和Roblox数据特别感兴趣。它有几个机制,可以检查 Discord Token Protectors 的存在,如 DiscordTokenProtector、BetterDiscord 等。如果发现,该恶意软件将试图绕过它们,从受害者那里获得Discord tokens。下面是这些检查的一个例子: 被收集的应用程序数据被存储在%TEMP%目录内的一个目录结构中,该目录由恶意软件创建,名为 "RedDiscord"。在窃取数据之前,恶意软件在RedDiscord目录下创建了一个名为 "Hannabi-<USERNAME>.zip "的ZIP存档。该恶意软件首先传输信标(beacon)信息,然后将试图窃取新创建的ZIP存档。 Hannabi Grabber拥有大量信息窃取恶意软件常见的功能。通常情况下,攻击者会试图利用PyInstaller或Py2EXE将其Python编译成PE32文件格式,然后再分发给受害者。而在这种情况下,攻击者选择在感染过程中包含一个Python安装过程,并直接利用Python来窃取受害者的敏感信息。 总结最近出现了许多新的Web3技术,试图为用户提供有价值的功能。随着这些技术不断被用于合法目的,它们也开始被敌人利用。我们继续观察到恶意软件和网络钓鱼活动的数量增加,这些活动利用IPFS等技术来托管恶意软件感染中使用的恶意组件,以及用于收集敏感认证数据的网络钓鱼工具包等等。
我们预计这种活动将继续增加,因为更多的威胁者认识到,IPFS可用于促进bulletproof hosting,对内容审核和执法活动具有弹性,并为试图检测和防御可能利用IPFS网络的攻击的组织带来问题。各组织应了解这些新出现的技术是如何在整个威胁环境中被积极使用的,并评估如何最好地实施安全控制,以防止或检测其环境中的成功攻击。
|