什么是SCA(软件成分分析)

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。这些头部厂商基本上是"一站式"供应者,提供工具种类比较齐全,每个厂商都有各个擅长的领域,并且在领域内有"拳头"产品。

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值