安全研究人员Alex Birsan攻破了数家知名公司的防御系统并利用一个软件供应链问题将文件上传到它们的服务器上。这个问题可能会被滥用,在受害者不知情或未经其许可的情况下感染服务器。据悉,受影响的公司包括苹果、微软、Netflix、PayPal、Shopify、特斯拉、Yelp以及其他许多可能下载了其有效内容的科技公司。
据了解,Alex Birsan在一些开源生态系统的设计中使用了一个问题,他非正式地称之为“依赖混淆”。
去年,当Birsan看到一个来自PayPal内部使用的npm包的manifest文件时他想到了这个黑客想法。他发现,有些清单文件包并不存在于公共npm存储库中而是由PayPal私人创建。它们为公司使用并储存。
这名研究人员随后想知道,他是否可以使用假冒的包来感染服务器,据悉这些包的名称跟私人包类似但由公共主机托管。然后,他开始寻找其他私有的内部软件包,这些软件包并不存在于公共开源存储库中。后来,他在包括npm、PyPI和RubyGems在内的开源存储库上使用相同的名称创建了自己的版本。不过Birsan表示,其创建的这些包是用于安全研究项目的,并未包含任何有用的代码。
结果他发现,使用依赖包的应用会优先考虑托管在公共开源存储库中的公共包,而非私人构建的。在某些情况下,具有更高版本的包将被优先考虑,无论它们被托管在哪里。这就是他的假冒包能够到达不同公司的服务器的原因。受害者不知道发生了什么,Birsan也不需要设计任何黑客手段来说服员工下载他的软件包。“成功率简直非常惊人。”
Birsan表示,苹果向其确认,通过npm包技术在苹果服务器上远程执行代码是可能的。
眼下,这些公司都得到了有关这项研究的通知并为找到漏洞向Birsan支付了漏洞赏金。据了解,Birsan从自己的研究中至少赚了13万美元,其中有4万美元来自微软的4万美元,3万美元来自苹果。
领取专属 10元无门槛券
私享最新 技术干货