概述
1.基本概念
软件成分分析(SCA,Software Composition Analysis)是一种对二进制软件的组成部分进行识别、分析和追踪的技术。专门用于分析开发人员使用的各种源码、模块、框架和库,以识别和清点开源软件(OSS)的组件及其构成和依赖关系,并识别已知的安全漏洞或者潜在的许可证授权问题,把这些风险排查在应用系统投产之前,也适用于应用系统运行中的诊断分析。在开源软件日益盛行的今天,开源安全威胁成为企业组织无法回避的话题,与此同时,应用交付规模和频率的正在快速增长,软件成分分析对于安全合规风险管控和安全态势感知都是必不可少的能力。
2.基本原理
SCA 的目标是第三方基础组件/可执行程序/源代码等类型的以二进制形式存储的文件,包括但不限于源代码片段或 Package,可执行的二进制组件/程序,基础 lib,tar/tgz 压缩文件,镜像/镜像层,广义的软件构建过程等等。因此,所有以二进制形式存储的文件皆可以是其分析目标。通过对软件汇编代码指令、代码结构、控制流图、函数调用关系等特征值对比,分析出二进制代码成分以及代码之间的相似性。
3.使用的技术
SCA 的方法不局限于具体的软件开发语言技术栈,即不关注是 Java、Python、C/C++、Golang 或者是 Node,还是 Docker(OCI)Image ,或者是广义的构建过程,而是从文件层面关注目标的各组成文件本身,以及文件与文件之间的关联关系以及彼此组合成目标的过程细节。简而言之,SCA 是一种跨开发语言的二进制文件分析技术。
4.关键评估指标
SCA关键评估指标,包括:
1) 是否具备漏洞和配置扫描功能
2) 能否将开源组件指纹与CVE漏洞信息库关联
3) 能否与SAST/DAST/IAST扫描集成
5.国内外相关产品
5.1国内主要厂商信息概览
国内厂商包括∶中科天齐、北大库博、泛联新安、开源网安、啄木鸟、默安科技、悬镜安全、海云安、思客云、鸿渐科技、棱镜七彩。这些厂商都有自己的核心产品,其中背靠中科院计算技术研究所、北大、国防科技大学的中科天齐、北大库博和泛联新安在人才储备、研发实力和产品全面性方面都有着不俗的表现,并且都能满足关键评估指标。
5.2外国头部厂商信息概览
国外头部厂商包括∶Synopsys、Veracode、Checkmarx、HCL software、Micro Focus、Rapid7、Contrast Security、WhiteHat Security。这些头部厂商基本上是"一站式"供应者,提供工具种类比较齐全,每个厂商都有各个擅长的领域,并且在领域内有"拳头"产品。
最后
以上就是整齐白羊为你收集整理的什么是SCA(软件成分分析)1.基本概念2.基本原理3.使用的技术4.关键评估指标5.国内外相关产品的全部内容,希望文章能够帮你解决什么是SCA(软件成分分析)1.基本概念2.基本原理3.使用的技术4.关键评估指标5.国内外相关产品所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复