Page 98 - 《软件学报》2026年第7期
P. 98

胡帅 等: 产业研发视角下的开源软件供应链攻击问题研究                                                     2783


                 已成为攻击者重点投毒与控制的目标. 与构建系统污染主要操控“组件拉取逻辑”不同, 工具链攻击聚焦于流水线
                 基础设施的篡改与操控, 攻击者通过渗透             CI 环境本身获取构建系统控制权限, 从而实现对整个制品生成流程的隐
                 蔽劫持与远程控制. 在这一过程中, 攻击者通常利用               CI/CD  系统中的高权限环境、配置不当的代理程序、第三方
                 插件漏洞或密钥管理缺陷实施入侵. 一旦攻破工具链核心组件, 攻击者即可操作构建脚本、任务配置及环境变量
                 等关键执行路径, 注入后门逻辑或篡改构建逻辑, 最终生成携带恶意代码的污染制品. 同时, CI 系统所存储的敏感
                 凭据  (如访问令牌、部署密钥、私有仓库地址) 常被用于二次渗透企业内部系统, 进一步扩大攻击范围.
                    更为严重的是, 一旦攻击者掌握          CI/CD  工具链的控制权限, 即可将恶意逻辑写入企业内部制品仓库、容器镜
                 像仓库或二进制分发渠道, 从而污染后续所有构建、测试与部署流程. 研究表明, 攻击者可在 CI 脚本中嵌入条件
                 触发逻辑, 使后门代码仅在特定构建用户、操作系统或编译参数下激活, 从而提升其在工业环境中的生存能力                                   [44] .
                 此类污染路径通常绕过常规审计, 尤其在缺乏构建产物签名验证机制时, 攻击者可低成本实现长期、持续且深度
                 的控制. 典型案例包括 2021 年的       Codecov  攻击, 攻击者通过篡改 Bash Uploader 脚本, 在   CI 构建过程中持续获取
                 用户环境变量与认证信息, 受影响企业涵盖              Twilio、HashiCorp  等  [71] . 2023 年, 美国联邦调查局  (Federal Bureau of
                 Investigation, FBI)、网络安全和基础设施安全局     (Cybersecurity and Infrastructure Security Agency, CISA) 与美国国
                 家安全局   (National Security Agency, NSA) 联合发布报告指出, 俄罗斯对外情报局       (Foreign Intelligence Service of
                 the Russian Federation, SVR) 利用  JetBrains TeamCity  持续集成平台中的远程代码执行漏洞  (CVE-2023-42793) 对
                 全球数百台服务器实施渗透, 攻击者不仅远程控制构建流程, 还访问企业制品管理系统与源代码仓库                               [117] .
                    值得注意的是, CI/CD    工具链攻击在开源共建生态与企业研发环境中呈现不同特征. 在开源社区中, 攻击者通
                 常通过社会工程学手段劫持开发者身份或贡献权限; 而在企业内部环境中, 由于权限隔离与审计机制更为严格, 攻
                 击者更多依赖工具链组件漏洞、配置失误或密钥泄露完成入侵. 实践表明, 即便在受控研发环境下, 当构建权限集
                 中或插件生态复杂且未受审计时, CI/CD          工具链仍可能成为攻击链的关键突破口.
                    综上所述, CI/CD   工具链攻击代表了供应链安全体系中“以构建系统为中枢, 向下游制品发起多点扩散”的典
                 型上游投毒路径. 其成功不仅影响构建产物的完整性与可信性, 更对软件系统生命周期安全构成系统性威胁. 针对
                 该类风险, 亟需实施最小权限原则、强化插件完整性校验、构建脚本审计, 并在制品层引入签名验证与追溯机制,
                 从而实现从构建入口到交付终端的全流程可信保障.
                  4.2.4    分发渠道信任滥用
                    开源社区在完成软件发布后, 会依据软件包、镜像、研发框架等不同形式, 通过软件仓库、镜像仓库等分发
                 媒介进行传播. 目前, 国内外不同编程语言和技术生态中, 主流分发渠道相对集中                        (表  5), 多数由产业界主导运营,
                 少部分由产业基金会负责管理. 这种由权威组织主导的模式在提供高效流通路径的同时, 也为其托管的软件构建
                 了一种基于平台、流程和推荐机制的隐性信用背书. 用户在使用这些平台时, 往往默认其分发的软件版本具备合
                 法性与完整性, 而不再对来源与内容进行深度核验. 然而, 这种默认信任机制在便利软件传播的同时, 也可能为恶
                 意代码的传播提供隐性支撑.

                                                 表 5 开源软件主流分发渠道

                  年份              名称                 语言      工具             功能                产业组织
                  2002   Python Package Index (pypi.org)  Python  pip       包管理            Python软件基金会
                  2003  Maven Central (maven.apache.org)  Java  mvn         包管理             Apache基金会
                  2008       GitHub (github.com)     综合       Git   项目管理、代码管理、 CI/CD          微软公司
                  2009        npm (npmjs.com)      JavaScript  npm          包管理           GitHub、微软公司
                  2009  阿里云 (developer.aliyun.com/mirror/)  综合  综合         镜像管理               阿里云
                  2013    DockerHub (hub.docker.com)  Docker容器  docker   容器镜像管理              Docker公司
                  2013        Gitee (gitee.com)      综合       Git   项目管理、代码管理、 CI/CD          开源中国
                  2016    Hugging Face (huggingface.co)  大语言模型  大模型       大模型管理            Hugging Face公司
                  2022     魔搭社区 (modelscope.cn)   大语言模型      大模型          大模型管理            ModelScope社区
   93   94   95   96   97   98   99   100   101   102   103