GitHub 高风险漏洞报告及其影响
关键收获
- Checkmarx 研究人员发现 GitHub 存在“高严重性”漏洞,黑客可借此控制代码仓库。
- 漏洞通过重命名技术(Repo Jacking)来利用,可能危害超万款软件包。
- GitHub 已修补该漏洞,现已不可再利用。
- 开源软件作为攻击目标的原因及应对措施。
Checkmarx 的研究人员报告称,GitHub 上存在一个“高风险”的漏洞,这可能使攻击者获得对 GitHub仓库的控制权,并可能感染所有依赖于该仓库的应用程序以及其他代码,注入恶意代码。
根据研究人员周三发布的,通过一种称为的技术,攻击者可以利用架构中的逻辑“隐藏”缺陷,控制 GitHub 仓库,这使重命名的用户容易受到此类攻击。
研究人员指出,所有在 GitHub 上被重命名的用户名都易遭此漏洞攻击,包括超 10,000 个在 Go、Swift 和 Packagist包管理器上的软件包。
“这意味着成千上万的软件包可以被立即劫持,并开始向数百万用户和许多应用程序提供恶意代码,”研究人员如是写道。
GitHub 在 Checkmarx 报告后已修复该漏洞,目前不再易受攻击。
持续演变的网络攻击方法
Checkmarx 的安全研究员及团队负责人 Aviad Gershon 解释称,早在今年,他的团队就目睹了黑客利用 Repo Jacking技术,显示出恶意行为者将继续演变其方法,以寻找最简单的方式利用可信的开源包,从而达到最大影响。
“安全界需要主动合作,找到并修补这些漏洞,以免被攻击者利用,”Gershon
说。他补充道,“随着交付时间的压力不断增加,应用安全和开发团队的工作变得更加复杂,而低代码开发的普及使得隐藏恶意代码的攻击面呈指数增长。”
包括数百万终端用户的大量项目依赖于开源库和代码仓库,因此这些仓库对威胁行为者非常具有吸引力,Vulcan Cyber 的高级技术工程师 MikeParkin 如此表示。他称,如果攻击者能够控制一个 GitHub仓库,并在被广泛使用的可信项目中插入恶意代码,那么他们能够以较小的额外努力感染数以万计甚至数百万的主机。
“这对于一些较旧但依然被广泛使用的项目尤其如此,因为维护者减少,恶意插入的代码可能会被忽视,”Parkin 说。“这里报告的 GitHub
问题可能是相当严重的,之前也有示例显示仓库被劫持以传播恶意代码。”
腐蚀开放源代码模型对坏行为者的吸引
周三,Blackberry 的研究也显示,超过 80% 的美国和北美组织在过去一年内收到过关于其软件供应链的漏洞或攻击通知,尽管只有 10%
指出开源对其代码的安全性影响最大。
据 SC Media报告,问题的一部分在于现今互联网的,据显示,98% 的应用程序使用了开源代码。Chainguard 的首席执行官兼联合创始人 Dan Lorenc将其形容为冰山:在水面上漂浮着一小部分互联网,而底下则是大量的开源代码。
更吸引网络犯罪分子的是开源开发模型本身:一种以共享和代码重用为特点的协作方法。Sonatype 发现在过去三年中,针对开源的攻击平均增长了 700%
,同时,网络安全社区当时也亲身体验到了开源漏洞的影响。例如,流行的 Java 日志记录包 Log4j 的[漏洞](