早在90年代,互联网上的恶意软件、黑客攻击等并没有这么疯狂,但病毒和一些蠕虫已经开始出现,虽然有些非常危险,不过绝大多数都是没事的。搞怪程序或其他具有非破坏性有效载荷的类似程序都是那个时代的一部分。许多人并不是真正的恶意软件编写者,而是熟练的开发人员,他们希望通过开发诸如打开CD-ROM或在屏幕上显示不同角色等行为的小型软件,让人们有时间吓唬人或开个玩笑。不幸的是,这些无辜软件其中的一类变成了严重的危害——PUA。在本文中,我们将定义PUA,描述其固有风险及如何被恶意软件利用。
一、何为PUAs
PUA是“Potentially Unwanted Application”的首字母缩写。这是AV供应商用来标记可被恶意用户滥用的特定应用程序。从这个意义上讲,这些程序并非恶意,本身也不一定有风险。关键在于如何使用和造成的后果。
二、为什么要小心PUAs
答案很简单,系统管理工具和具有类似功能的其他工具也可以归入PUA。当用户使用这些软件(从系统管理到密码恢复)时,确实很有效。当非专业人士有特定需求时,这些工具非常有用,可以节省时间。
但实际上这种情况很少见。大多数情况下,用户只利用这些程序提供的一小部分功能。相反,它们通常用于在攻击或感染机器时为恶意行为者提供更强大的功能。
此外,攻击者有时会使用从Internet下载的第三方工具(而不是自己创建的工具),并将其作为集成组件嵌入到攻击框架中,增加其恶意载荷。一些攻击者足够聪明,以压缩(Packers)、加密(Crypters / Protectors)或混淆(Obfuscators)的形式修改原始工具,其目的是隐藏逻辑、代码及动作。这些策略使得PUA足够强大从而可以规避检测,由此增加其在目标网络中的驻留时间,这是该“规避”策略的主要目的之一。因为攻击发现的周期越长,就能带来越多利益。
三、热门系统管理工具
NirSoft是一个提供系统管理工具的网站,包括以不同形式(例如浏览器、邮件客户端、远程访问客户端、无线网络、路由器等)专注于密码恢复的子工具集。这些工具通常被反病毒(AV)供应商标记为PUA。另一个具有类似工具集的热门网站是Security Xploded。
在NirSoft网站上,截至本文发布时,共有28个与“Password Recovery Utilities”相关的工具。
对于不熟悉这些工具的人,下面是对其中一个工具的描述,称为“Network Password Recovery”。其官方说明为:
Windows允许保存密码,以便在每次连接远程服务器时使用它。此实用程序可恢复系统上存储的当前登录用户的所有网络密码。只要知道最后一次登录密码,它还可以恢复存储在外部驱动器凭据文件中的密码。
下面是从官方网站上获取的图片,该图显示了在本地计算机运行此特定工具后收集的凭据信息。
图1. Network Password Recovery – 收集的数据
这些工具具有灵活和强大的功能,特别是NirSoft工具(攻击者的首选之一),包括对命令行参数的支持,因此可以通过外部脚本(批处理文件、WSH、VB、JavaScript等等)或程序(直接来自launcher或dropper)轻松管理它们。这些工具还可以生成不同格式的输出文件(例如,txt,csv,xml,html,KeePass等)以供后续处理。一旦攻击者使用其中一些工具发动攻击,他们就会以某种方式运行它,收集数据并将其传输到C&C服务器。
2015年10月18日,NirBlog的网站(nirsoft.net的官方博客)上发布了一篇博客文章,该工具的作者分享了他对AV供应商如何将他的工具视为恶意工具以及未正确通知客户这些工具的担忧,特别是password-recovery,不应该这样标记。在同一篇博文中,他分享了一个表格,显示有多少供应商将他的工具检测为恶意工具。尽管博文从开发人员的角度看似乎是有效的,但从AV供应商的角度来看,这个论点并不完全适用。很明显,AV供应商必须始终以可疑的方式警告任何已知或可疑行为的部件。根据NirSoft的假阳性报告,AV供应商在2004年开始将密码恢复工具标记为PUA。
想象一下这样一个假设场景:机器遭到入侵,攻击者上传netcat到受影响的机器,这个工具不仅以网络测试和故障排除为目的,而且通常还会被攻击者用作后门以供后续访问。该工具通常被标记为PUA,因为其功能的性质很容易被滥用。如果受感染系统的所有者安装了AV,没有注意到并警告用户他的系统上存在该工具,那么该用户将有合法权利指责AV供应商未正确注意/阻止该程序。毕竟,如果用户知道使用PUA的上下文,大多数AV软件都能有将用户选择的程序列入白名单的功能,但如果没有明确标识为授权,程序必须被视为PUA。
四、PUA武器化
最近,在著名的Emotet银行木马中发现了一个活跃的活动,它使用了免费系统工具但目的不明。 US-CERT今年(2018年)发布了针对这个特定版本的Emotet的警报,提到其使用了NirSoft Password-Recovery工具。
常见的恶意软件多年来一直在这样做,但随着时间的推移,更多的威胁参与者和组织正在出现,并且这些工具的使用正在增加。例如,BitDefender发现了由Netrepser组织发起的针对性攻击,这是众所周知的众多威胁组织之一,他们在发起的攻击中使用第三方组件(部分来自上述NirSoft工具集)。
五、NirSoft工具集及检测
在FortiGuard研究实验室中,我们经常会看到在恶意软件在沙盒执行过程中存在这些工具,通常是在第二阶段,由主(启动程序)恶意软件的外部组件控制的释放文件。每个AV供应商都使用自己的命名约定,对于NirSoft的password-recovery类,我们使用以下内容:Riskware / ChromePass,Riskware / PstPassword,Riskware / NetPass和Riskware / Dialupass等。
下面的饼图显示了与2018年11月26日下载的Password-recovery工具相关的所有样本和相关检测类别(未打包或保护)。
图 2. NirSoft Password-Recovery Tools
基于这些数据,人们可以看到“Riskware / NetPass”类的流行程度很高,其中包括三个工具:“Network Password Recovery”,“IE PassView”和“Opera PassView”。
通过利用恶意软件分析系统,我们还确定了使用上述工具的不同恶意软件样本,但其内容经过修改以规避检测。查找样本之间的关系并非易事,但是,有许多方法可以使用某些信息来获取它们,无论是通过文件名、原始文件名(通过解析可执行文件的VERSIONINFO资源的内容)、启动程序/释放的二进制文件中的URL,以及Common AV签名匹配等。
在一个样本调查期间,我们发现其中一个样本是独立样本(MD5:0fd18e3cc8887dc821a9f8c4e481a416),这是一个.NET程序样本,显然与攻击行动或组织无关。但是,这是一个很好的例子,因为它使用NirSoft工具用于恶意目的。如前所述,攻击者并不总是下载外部工具并将其实施到他们自己的攻击框架中。相反,他们试图通过隐藏代码来隐藏它们,使恶意软件分析人员难以检测或分析。
RDG Packer Detector,这个特定的样本受到名为“Enigma Protector”的商业工具的保护,该工具主要用于颁发一许可并防止软件盗版,从而保护可执行文件。但是,恶意软件编写者也使用它来保护他们的工具。
图3.受Enigma Protector保护的恶意软件样本
一旦恶意软件被执行,它就会释放工具并通过提供命令行参数来执行,保存收集的数据(例如mspass.exe / stext <destination_file.txt>)供以后使用。
在下图中,可以看到在恶意软件执行期间如何执行“WebBrowserPassView.exe”,“mspass.exe”和“ProduKey.exe”。
图4.使用三个Password-Recovery工具的恶意样本
如果我们与恶意软件同处一台计算机上,并且仅运行“WebBrowserPassView”,则该工具将在浏览器中显示存储的凭据,这是其预期行为。
图5. Firefox浏览器中的存储凭据
但是,一旦收集活动完成,恶意软件就会将信息传输给C&C服务器。在下图中,可以看到HTTP请求中使用的参数及其相关值,其中“u =”是URL,“p =”是密码,“l”是登录名。
图6.将存储的浏览器凭据传输到C&C服务器
为了确认此恶意软件有多少凭据窃取例程,有多少是基于密码恢复工具,哪些是由恶意软件作者开发的,我们解压缩样本检查其中的真实代码,以便识别它们并确认此恶意软件能够执行的其他操作。我们发现该恶意软件仅使用了三个NirSoft工具,但该恶意软件作者还开发了其他例程来窃取来自其他流行网络和即时消息客户端的凭据,例如:CoreFTP,FileZilla和SmartFTP等。
图7.恶意软件样本所针对的应用程序
此恶意软件对NirSoft工具的主要用途属于与密码相关的类别。但是这个特定的示例还使用了一个名为“ProductKey”的附加系统工具,其描述为:“恢复丢失的Windows产品密钥(CD-Key)和Office 2003/2007产品密钥。”。
图8.显示软件序列信息的ProduKey工具
此工具已被Fortinet Antivirus检测为“Riskware / ProductKey”,收集的数据用于将密钥泄露给攻击者的C&C,大概是用于用户识别。这是一个明显的例子,说明如何使用功能强大的应用程序直接从计算机恢复序列号(因为软件许可证丢失了),但是在恶意用户手中可以用于完全不同的目的。
此恶意软件样本会传输前面提到的工具收集的数据。用户收集的数据不仅结合了恶意软件本身收集的信息,还结合了ProduKey输出,包括:当前用户、Windows版本和Windows序列号,如下图所示。它显示了发送到C&C服务器的HTTP请求的网络捕获数据,确认攻击者可以为同一目标捆绑不同类的工具,在本例中,将密码恢复与其他系统相关工具结合使用。
图9. 传输操作系统序列号信息
六、总结
使用独立系统工具一直是IT行业中许多人的默认选项,尤其是IT支持人员。这些工具提供了一种在处理自动化,恢复或简单地在使用计算机时的简捷方法。
事实上,NirSoft和类似工具在其原始形式中并不是恶意的,但是一旦将它们安装在计算机上,特别是在企业环境中,它们的存在可能有潜在风险,具体取决于计算机所有者及其在使用系统时的日常活动,因为它们可以很容易的被用于非法目的。
PUA很容易被恶意软件修改的原因是具有内置的灵活性,特别是在自动化方面,这使得攻击者能够以最小代价轻松地开发出复杂的威胁工具,集成到攻击者工具包中恶意使用。
诸如Emotet等高级恶意软件威胁以及越来越多的网络犯罪团体利用这些工具,相关威胁肯定会继续出现。几乎可以肯定的是,恶意软件开发人员和犯罪组织将在未来很长一段时间内继续将这些工具纳入其攻击框架中。