两名网络安全研究人员在一家大型公司的软件供应链中发现了一个严重漏洞,因此获得了50500美元的漏洞赏金。该漏洞针对的是一家最近被收购的公司,暴露了一个可能产生广泛影响的漏洞。
这对搭档Lupin(Roni Carta)和Snorlhax有着合作的历史;最近他们将注意力转向了经常被忽视的业务收购领域。他们注意到,这些整合经常会带来安全漏洞,因为新收购的实体可能并不总是遵守与母公司相同的严格安全标准。这一洞察指导他们寻找“改变游戏规则”的漏洞。
他们首先详细检查了被收购公司的在线状态,包括其代码存储库和软件包注册表。研究人员采用了先进的技术,将JavaScript文件转换为抽象语法树(AST),并进行了Docker镜像分析,以识别依赖关系并发现可能的缺陷。通过这项调查,他们找到了与此次收购相关的DockerHub组织。
真正的突破发生在研究人员下载并检查Docker映像之后。他们在里面发现了该公司后端系统的完整源代码。但故事并没有就此结束,因为研究人员发现了更多敏感信息。
根据Lupin的技术博客文章,两人发现图片中仍包含一个“.git”文件夹。在该文件夹中,他们找到了GitHub Actions(GHS)的授权令牌。如果利用此令牌,攻击者就能够操纵公司的构建管道。该令牌可能允许他们注入恶意代码、篡改软件版本,甚至访问其他存储库。
进一步调查发现,Docker镜像已删除.npmrc配置文件,但研究人员意识到镜像的早期层仍可能保留该文件的痕迹。他们利用Dive和Dlayer等工具探索这些层,最终找到一个私有npm令牌。此令牌提供对目标公司私有软件包的读写访问权限。
该团队意识到,他们现在有一条途径可以将恶意代码插入其中一个私有软件包,然后公司的开发人员、管道和生产系统会自动获取这些代码。由于这些是私有软件包,攻击将绕过安全扫描,使他们能够破坏各个级别的系统,从而导致大规模数据盗窃和数据泄露。
近几个月来,软件供应链漏洞已影响到数千家企业。针对Snowflake Inc.、Blue Yonder和MOVEit Transfer等公司的网络攻击不断被利用,影响到全球组织。
好消息是,两人记录了他们的发现,并向受影响公司的安全团队展示了该漏洞的影响。他们的报告概述了攻击者如何使用中毒的npm包来获取机密、渗透到内部系统并破坏CI/CD管道。因此,该公司向研究人员颁发了50500美元的漏洞赏金,以承认该漏洞的严重性。
这起事件表明,当多个被忽视的漏洞结合在一起时,攻击可能会得逞。在这种情况下,问题源于软件供应链漏洞和新收购公司的安全漏洞。该团队指出,确保构建过程的每个部分都很重要,从代码本身到所涉及的组件和外部软件包。这是一个保护软件开发流程并不简单的示例;它需要仔细关注每一个细节。
评论已关闭。