导语:一般情况下,用户都不会怀疑受信任的开发人员或供应商会在安装软件或更新时发起攻击。用户一般认为,只要软件供应商值得信赖,那他们的产品也一定没有安全问题。而攻击者正是利用了这个心理,发起了所谓的“供应链攻击”。
随着网络安全防护技术的提高,攻击者要想再利用原来的攻击技术来获得成功,就越来越难了。为此,黑客也正在琢磨着提高他们攻击成功率的方法,例如,利用用户对软件供应商的信任。
一般情况下,用户都不会怀疑受信任的开发人员或供应商会在安装软件或更新时发起攻击。用户一般认为,只要软件供应商值得信赖,那他们的产品也一定没有安全问题。而攻击者正是利用了这个心理,发起了所谓的“供应链攻击”。在安装软件或更新时,用户时刻都要仔细检查源代码站点,以确保它是合法的。只有这样,才能让代码放心的在我们的计算机上运行。随着开发人员对软件和网页的防护能力越来强,所以在过去几年中,黑客已越来越多的利用这种供应链信任来传播恶意软件。
在不到一周的时间里(10份的第二周),研究人员新发现了两起新的利用供应链进行攻击的事件。
第一个涉及到VestaCP,一个系统管理员用来管理服务器的控制面板界面。Censys执行的互联网扫描显示,目前有超过132000个未过期的TLS证书可以保护VestaCP用户。根据安全公司Eset上周四发布的一篇帖子,有未知的攻击者破坏了VestaCP服务器并利用他们的访问权限对可下载的安装程序进行了恶意更改。
注:Censys是一款用以搜索联网设备信息的新型搜索引擎,安全专家可以使用它来评估他们实现方案的安全性,而黑客则可以使用它作为前期侦查攻击目标、收集目标信息的强大利器。
供应链攻击过程
Eset恶意软件研究员Marc-ÉtienneM.Léveillé告诉本文的作者:
VestaCP安装脚本被攻击者修改后,可以在安装成功后向vestacp.com报告生成的管理员凭证。我们并不确切知道这种情况是何时发生的,但修改后的安装脚本在5月31日至6月13日期间,已经出现在了GitHub上的源代码管理中。
目前,对这个攻击还在进一步研究中,在调查完成之前,仍然不清楚攻击是如何发生的。根据Léveillé的初步调查结果,黑客最有可能通过利用VestaCP软件或用于传播它的服务器中的关键漏洞开始的,这使得攻击者可以自行控制攻击过程。也就是在此期间,攻击者将密码嗅探函数添加到安装源代码中。此时,VestaCP软件已经包含了从用户服务器向vestacp.com网站发送统计信息的代码。
Léveillé认为恶意代码只是添加了一些难以解密的代码行,这些代码行导致密码被包含在其中。然后,攻击者利用他们对VestaCP网络的控制来检索被盗密码。研究人员说,虽然这种方法更复杂,但安全检测方案更难在源代码中检测到恶意代码。对此,Leveille说,攻击者可能会使用密码通过其安全shell界面登录服务器。
使用SSH,攻击者就可以用ChachaDDoS感染服务器,ChachaDDoS是一种相对较新的恶意软件,用于对其他网站进行拒绝服务攻击。该恶意软件提供了各种高级功能,包括防止管理员在服务器上查找和分析它的方法。Chacha运行在32位和64位ARM,x86,x86_64,MIPS,MIPSEL和PowerPC上。在10份的23号,安全公司Sophos的研究人员公布了一个新发现的DDoS僵尸网络,他们称之为Chalubo,几乎可以肯定它运行的是Eset描述的Chacha恶意软件。
对VestaCP供应链的攻击最少有14天了(按10月24截止),因为源代码中记录时间是14天。类似的帖子显示,VestaCP用户早在4月初就报告了服务器遭到黑客攻击,这比Eset列出的5月31日早了近两个月。类似这样的讨论表明,在6月13日恶意修改的代码从源代码中删除之后,影响VestaCP用户的攻击仍在继续。
利用ClipboardHijacking软件潜入PyPI
第二个供应链攻击涉及一个恶意软件包,该软件包已被插入到了广泛使用Python编程语言官方存储库中。被称为“Colourama”的软件包看起来与Colorama类似,Colorama是Python存储库中下载量最多的20个合法模块之一。 doppelgängerColourama软件包包含合法模块的大多数合法函数,但与Colorama有一个显着区别:Colourama添加的代码在Windows服务器上运行时安装了这个Visual Basic脚本。它会不断监控服务器的剪贴板,以获取用户将要支付加密货币的线索。恶意脚本触发后,该脚本会将支付信息从剪贴板中包含的钱包地址转移到攻击者拥有的钱包。
这已不是Python的官方PyPI存储库第一次被滥用来执行此类社交工程攻击。2016年,一名大学生的本科论文使用了同样的技术,让未经授权的Python模块在17000多个独立的域中执行了超过45000次,其中一些域属于美国政府和军事组织。一年后,PyPI再次被包含恶意(但相对良性)代码的代码包所攻击。
在过去的六个月里,隐藏在PyPI的ClipboardHijacking软件已被下载了171次(不包括镜像站点),其中有55次是在9月份。被感染的服务器不仅必须删除恶意的Colourama模块,还必须进行注册表更改以清除Visual Basic脚本。
勒索软件 NotPetya
根据目前所掌握的证据,两个新发现的供应链攻击都没有发生大规模的感染。但这并不代表供应链攻击的威力不大,在2017年爆发的NotPetya攻击,已被专家形容为一种网络战争。在出现数小时之内NotPetya就蔓延到了乌克兰以外,感染到全世界的计算机,从宾夕法尼亚的医院到塔斯阿尼亚岛的巧克力工厂的无数设备都被攻击到,给每一家都造成了9位数的损失。病毒甚至还传播回俄罗斯,给国营石油公司俄罗斯石油造成打击。据美国白宫估计,其结果就是超过100亿美元的总损失。它是通过M.E.Doc的合法更新模块开始传播的,这是一种在乌克兰广泛使用的税务会计应用程序。研究人员表示,最初的攻击可能需要访问M.E.Doc源代码并控制公司的网络,不过随后的应用程序版本中的一套传播工具让其全球范围内迅速传播。
在2017年,另一个恶意软件又爆发了,这个爆发也是利用的供应链发起的,利用的是许多人用来管理硬盘驱动器的CCleaner实用程序。这次攻击首先感染了用于开发和传播该实用程序的网络,然后,攻击者使用他们的后台控制,感染了注入恶意代码CCleaner版本的227万台计算机。奇怪的是,在这些被感染的计算机中,只有大约40台计算机获得了第二阶段的有效载荷,这些计算机托管在12家公司的网络中,包括三星(Samsung)、华硕(Asus)、富士通(Fujitsu)、索尼(Sony)和英特尔(Intel)。
供应链攻击在将来会更加普遍,如果可能的话,用户应该考虑扫描所有下载的安装程序和更新,并密切关注其名称的变化,以确保它们与自己要安装的合法模块相匹。