恶意第三方依赖避坑指南
密码学与安全
2023-10-09 v3
摘要
某些编程语言日益流行,刺激了生态特定的包仓库和包管理器的创建。此类仓库(如 npm、PyPI)充当公共数据库,用户可查询以检索各种功能的包,而包管理器在客户端自动处理依赖解析与包安装。这些机制增强了软件模块化并加速了实现。然而,它们已成为寻求大规模传播恶意软件的恶意行为者的目标。本工作中,我们展示了攻击者如何利用流行包管理器和语言的能力,在受害机器上实现任意代码执行,从而达成开源软件供应链攻击。基于对 7 个生态的分析,我们识别出 3 种安装时和 4 种运行时技术,并提供了描述如何降低消费第三方依赖风险的建议。我们将提供证明所识别技术概念验证。此外,我们描述了攻击者用于规避检测机制的逃避策略。
引用
@article{arxiv.2307.09087,
title = {The Hitchhiker's Guide to Malicious Third-Party Dependencies},
author = {Piergiorgio Ladisa and Merve Sahin and Serena Elisa Ponta and Marco Rosa and Matias Martinez and Olivier Barais},
journal= {arXiv preprint arXiv:2307.09087},
year = {2023}
}
备注
Proceedings of the 2023 Workshop on Software Supply Chain Offensive Research and Ecosystem Defenses (SCORED '23), November 30, 2023, Copenhagen, Denmark