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

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


                 意攻击者, 其目标涵盖源代码仓库、软件包管理器、构建产物、开发者账户凭证以及                             CI/CD  流水线配置. 这表明
                 攻击者策略性地选择能够深度嵌入并利用软件构建与分发渠道的节点, 极大地扩展了攻击的潜在影响面.
                    ● 矛盾内部的不可调和性. 效能杠杆与安全风险均源于同一组技术要素, 从开源、产业再到用户的传播路径
                 与攻击技术的基础篡改、产业演化、成品攻击呈现同源、同构性. 这些手段往往内生于研发流程本身                                  (如利用合
                 法工具链功能), 规避传统检测, 并借助自动化构建与分发机制实现恶意载荷的快速、广泛传播, 对下游产业用户
                 造成大规模影响. 这两者之间形成了一体两面的矛盾体, 无法自我调和.
                    ● 矛盾产生的多维破坏性与信任瓦解. 开源软件被产业界的不断采纳, 源于产业对开源生态产品开放性, 安全
                 性, 兼容性的信任. 软件供应链攻击不仅造成了严重的技术后果、重大经济损失, 更深层次地侵蚀了产业界与用户
                 对软件供应链生态的信任基础. 这种信任危机对软件研发协作模式、开源生态可持续性及数字化经济的正常运转
                 构成严峻挑战.
                  4   产业研发视角下的开源软件供应链攻击分类演化

                    如图  3  所示, 本节从产业研发流程视角审视, 基于一条从开源共建生态、产业闭源研发, 到成品终端用户的分
                 析框架, 深刻揭示了软件供应链攻击利用“自我强化”与“自我反噬”内生矛盾的关键技术特征. 基于此框架, 产业组
                 织的开源软件供应链攻击可概念化为开源共建威胁产生、产业闭源研发攻击演化传播及成品使用攻击发作这                                       3
                 个阶段. 攻击者通过渗透研发流水线的信任链与自动化机制, 在任意阶段植入恶意载体: 在开源共建威胁产生阶
                 段, 利用结构性弱点实施身份欺骗、权限劫持或源码/依赖污染, 于源头隐秘植入恶意功能或制造可利用的安全缺
                 陷; 在产业闭源研发攻击演化传播阶段, 代码提交和代码评审等编码行为是触发闭源研发                            CI/CD  流水线的第   1  个
                 动作. 代码提交后恶意包/有漏洞包经由依赖解析、构建流水线集成或镜像仓库分发传播, 攻击者可同步劫持
                 CI/CD  工具链、篡改构建脚本或注入恶意配置实现深度嵌入, 并随着                  CI/CD  测试环境部署、测试执行、生产环境
                 的准备和部署而将恶意软件自动化扩散到所有环境中; 并在正式版本发布后流入下游. 伴随着产业软件的开源或
                 者专有分发渠道的传播, 在成品使用攻击发作阶段, 恶意负载经环境条件触发激活, 执行系统完整性破坏、敏感数
                 据窃取或持久化访问建立.

                                         传                                           传      成品使用
                      开源共建威胁引入           播             产业闭源研发攻击演化传播                  播      攻击发作
                                            源码篡改          构建污染/         分发渠道信任滥用
                                                       大模型持续集成攻击
                     开源生态中的
                     社会工程学攻击                                        类库     镜像库              终端攻击链
                                                                                            动态初始化
                                                                  CI
                     发布或冒充流行项目
                                              编码     构建    BVT测试                            多阶段载荷
                                                                                            释放躲避检测
                                   恶意开源组件                                       恶意产业产品
                     开源代码中的
                     投毒与后门利用                                                        CD
                                                    预发环境      SVT    自动/手动   冒烟测试           隐蔽C2通道
                                                     部署       测试      生产部署                 构建攻击链发作
                     大语言模型
                     数据投毒
                                                        CI/CD流水线工具链攻击

                                        图 3 产业研发视角的开源软件供应链攻击演化分类

                  4.1   开源共建威胁产生阶段
                    开源社区作为软件供应链的核心源头, 其开放性与高度协作的特点使其成为攻击者重点瞄准的对象. 攻击者
   87   88   89   90   91   92   93   94   95   96   97