近日消息,安全企业JFrog在一份报告中揭露了一种新型攻击策略——“Revival Hijack”。在这类攻击中,黑客盯上了已被撤除的PyPI库,通过重新注册相同的包名并上传植入恶意代码的新版本,利用用户对库状态变化的疏忽,实现隐蔽而有效的入侵。这一发现再度强调了开发者在依赖管理中验证软件包来源的重要性,以防成为此类攻击的受害者。
研究人员对下载超过 10 万次或运营超过半年的包进行了统计,发现这种冒名顶替式的攻击手法共计影响了 12 万个 PyPI 包。之所以这种冒名顶替式的攻击手法“如此常见”,是因为“许多开发者经常下架包”,据称“每月有超过 300 个包被下架”,从而给予黑客可乘之机。
为了防止黑客利用这种攻击手法,研究人员试图接管了一些已下架的包名,并上传版本号为 0.0.0.1 的空包以避免现有用户的 CI / CD 环境自动拉取和更新。然而即使采取了这些措施,根据研究人员统计,这些被接管的空包在几天内下载量仍达到数千次、三个月后总下载量超过 20 万次,这表明 Revival Hijack 的影响极为广泛。
目前该安全公司已将这一问题通报给 PyPI 团队,不过 PyPI 团队回应称他们早在 2022 年 7 月就已初步讨论过相关议题,但目前还需要进一步讨论解决办法。
研究人员强调, Revival Hijack 至今仍是极为有效的攻击手段,他们呼吁 PyPI 应制定严格政策,全面禁止重复使用相同的包名称,避免遭到黑客鸠占鹊巢。
文明上网,理性发言,共同做网络文明传播者