随着网络安全防护技术的提高, 攻击者要想再利用原来的攻击技术来获得成功, 就越来越难了. 为此, 黑客也正在琢磨着提高他们攻击成功率的方法, 例如, 利用用户对软件供应商的信任.
一般情况下, 用户都不会怀疑受信任的开发人员或供应商会在安装软件或更新时发起攻击. 用户一般认为, 只要软件供应商值得信赖, 那他们的产品也一定没有安全问题. 而攻击者正是利用了这个心理, 发起了所谓的 "供应链攻击". 在安装软件或更新时, 用户时刻都要仔细检查源代码站点, 以确保它是合法的. 只有这样, 才能让代码放心的在我们的计算机上运行. 随着开发人员对软件和网页的防护能力越来强, 所以在过去几年中, 黑客已越来越多的利用这种供应链信任来传播恶意软件.
在不到一周的时间里(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 脚本 https://hastebin.com/raw/idamexogib . 它会不断监控服务器的剪贴板, 以获取用户将要支付加密货币的线索. 恶意脚本触发后, 该脚本会将支付信息从剪贴板中包含的钱包地址转移到攻击者拥有的钱包.
这已不是 Python 的官方 PyPI 存储库第一次被滥用来执行此类社交工程攻击. 2016 年, 一名大学生的本科论文使用了同样的技术, 让未经授权的 Python 模块在 17000 多个独立的域中执行了超过 45000 次, 其中一些域属于美国政府和军事组织. 一年后, PyPI 再次被包含恶意 (但相对良性) 代码的代码包所攻击.
在过去的六个月里, 隐藏在 PyPI 的 ClipboardHijacking 软件已被下载了 171 次(不包括镜像站点), 其中有 55 次是在 9 月份. 被感染的服务器不仅必须删除恶意的 Colourama 模块, 还必须进行注册表更改以清除 Visual Basic 脚本.
根据目前所掌握的证据, 两个新发现的供应链攻击都没有发生大规模的感染. 但这并不代表供应链攻击的威力不大, 在 2017 年爆发的 NotPetya 攻击, 已被专家形容为一种网络战争. 在出现数小时之内 NotPetya 就蔓延到了乌克兰以外, 感染到全世界的计算机, 从宾夕法尼亚的医院到塔斯阿尼亚岛的巧克力工厂的无数设备都被攻击到, 给每一家都造成了 9 位数的损失. 病毒甚至还传播回俄罗斯, 给国营石油公司俄罗斯石油造成打击. 据美国白宫估计, 其结果就是超过 100 亿美元的总损失. 它是通过 M.E.Doc 的合法更新模块开始传播的, 这是一种在乌克兰广泛使用的税务会计应用程序. 研究人员表示, 最初的攻击可能需要访问 M.E.Doc 源代码并控制公司的网络, 不过随后的应用程序版本中的一套传播工具让其全球范围内迅速传播.
在 2017 年, 另一个恶意软件又爆发了, 这个爆发也是利用的供应链发起的, 利用的是许多人用来管理硬盘驱动器的 CCleaner 实用程序. 这次攻击首先感染了用于开发和传播该实用程序的网络, 然后, 攻击者使用他们的后台控制, 感染了注入恶意代码 CCleaner 版本的 227 万台计算机. 奇怪的是, 在这些被感染的计算机中, 只有大约 40 台计算机获得了第二阶段的有效载荷, 这些计算机托管在 12 家公司的网络中, 包括三星 (Samsung), 华硕(Asus), 富士通(Fujitsu), 索尼(Sony) 和英特尔(Intel).
供应链攻击在将来会更加普遍, 如果可能的话, 用户应该考虑扫描所有下载的安装程序和更新, 并密切关注其名称的变化, 以确保它们与自己要安装的合法模块相匹.
来源: http://netsecurity.51cto.com/art/201811/586195.htm