软件供应链安全分析报告
1. 概述
当前,软件供应链安全仍然是网络安全中的重要方向。奇安信代码安全实验室发布了《2024中国软件供应链安全分析报告》。软件由自主开发的代码与第三方代码集成后形成混源代码,通过编译、连接等过程构建为软件产品。软件供应链模型中的每个阶段都可能引入安全问题,从而导致最终软件供应链安全事件的发生。
2. 软件供应链安全攻击手段
过去一年中,软件供应链安全攻击手段依然多样且频繁。以下是几个典型案例:
- 2023年10月:黑客组织通过域名仿冒和星标劫持技术向开源包管理器PyPi植入恶意包,目标包括Telegram、AWS和阿里云等热门平台。
- 2023年12月:GitHub和HuggingFace平台发现1500多个不安全的API访问令牌,部分令牌可帮助攻击者获取Meta公司的大语言模型仓库完全读写权限。
- 2024年2月:谷歌的开源构建和测试工具Bazel存在供应链安全漏洞,可能导致攻击者创建后门并影响Bazel用户的生产环境。
- 2024年3月初:机器人平台Top.ggDiscord遭受大规模供应链投毒攻击,攻击者通过伪造的恶意Python软件包窃取用户敏感数据。
- 2024年3月底:XZUtil工具库被植入恶意后门漏洞,影响了OpenSSH的安全性。
- 2024年5月:第三方承包商未充分保护系统导致英国军队数据泄露。
3. 国内企业软件供应链安全状况
与往年相比,国内企业自主开发软件的源代码高危缺陷密度明显下降,开源软件引入的安全风险状况有所改善。
- 源代码高危缺陷密度:2023年,国内企业自主开发源代码的高危缺陷密度为0.52个/千行,较之前三年有明显下降。
- 开源软件漏洞:平均每个项目使用了166个开源软件,数量再创新高,但存在已知开源软件漏洞的项目占比为68.1%,较去年有所下降。
- 具体编程语言:Java语言项目占比达67.7%,但仍保持较高比例。
4. 开源软件生态发展与安全状况
开源软件在现代软件开发中持续发挥重要作用。
- 开源项目数量:2022年底至2023年底,主流开源软件包生态系统中的开源项目总量增长了44.7%。
- 开源软件源代码安全:2023年,2248个开源项目的源代码中发现安全缺陷5108161个,其中高危缺陷355721个,整体缺陷密度为16.50个/千行,较去年有所下降。
- 典型安全缺陷:输入验证、跨站脚本、资源管理等缺陷的检出率较高,但NULL引用类缺陷的检出率有所下降。
5. 开源软件公开报告漏洞状况
- 大型开源项目漏洞:截至2023年底,CVE/NVD、CNNVD、CNVD等公开漏洞库中共收录64938个开源软件相关漏洞,其中2023年新增7107个漏洞。
- 漏洞增长:LinuxKernel在2023年公开报告漏洞数量增长最多,达到607个。
6. 典型软件供应链安全风险实例
- 主流操作系统:多个主流操作系统存在供应链攻击风险。
- PHP软件:PHP软件供应链中存在严重安全漏洞。
- 国产数据库:某国产数据库供应链攻击实例分析。
总结与建议
尽管国内企业在软件供应链安全方面取得了一定进展,但仍需持续关注和改进。建议企业加强代码审查、使用安全编码规范,并定期更新开源软件版本以减少安全风险。