SCA
SCA(Software Composition Analysis),也就是软件成分分析技术,是一种对软件的组成成分进行识别分析和追踪的技术。
使用SCA的目的是分析软件的组成成分,检测软件的组成成分中是否含有已知漏洞和许可证风险。
SCA工具在检测后一般都会提供一个详细的清单,列出被检测目标的所有依赖组件的 名称版本、位置以及依赖关系。更进一步的,还会识别出依赖组件的许可证类型、包含的已知漏洞、缺陷并能够提供修复建议。
目前的SCA主要分为三种,通过IAST能够实现的主要是运行时SCA,此外还有主要检测源代码中的特征文件的源码SCA;检测开发的最终文件二进制文件的二进制SCA。
运行时SCA
运行时SCA的检测对象是运行中的应用,例如各类Web 应用后端,App Server 等。
IAST基于插桩Agent,分析获取项目中所有引用到的第三方组件,将软件成分数据回传到服务端,通过软件成分分析引擎,对第三方组件的版本风险、安全漏洞、开源许可证风险进行评估和分析,最终可视化展现软件成分的详细清单。
运行时SCA只会报告当前正在使用的组件,如果只是代码copy进去,而没有真实引用的组件是不会报告漏洞的,这就排除了冗余组件,提高了检测的精准度,更方便我们确定组件漏洞修复的优先级,帮助用户完全掌握第三方组件的安全风险,更好地评估对第三方组件的修复方案。
运行时SCA不需要源代码,实现的难度较低,但是使用难度较高,需要插桩,涉及到插桩就必须要区分开发语言,语言支持成本是比较高的。
目前完全开源的洞态IAST,运行时SCA还支持第三方组件多层依赖检测、中文漏洞描述、开源许可证风险评估,还可提供快速修复方案,感兴趣的朋友可以尝试自己部署开源版洞态IAST来亲自体验一下运行时SCA能力。
好了,今天的IAST百科全书就到这里。
视频链接:IAST百科全书第15期:什么是运行时SCA?IAST如何做到?_哔哩哔哩_bilibili
关于IAST的更多落地实践
包括很多SCA的落地实践案例
可以扫码看看洞态IAST的落地实践案例
近期评论