官方网址:https://tca.tencent.com/ (点击下方【阅读原文】可直达)
官方介绍:https://cloud.tencent.com/product/tcap
境内开源:https://cnb.cool/tca/code-analysis
境外开源:https://github.com/Tencent/CodeAnalysis
▼
软件成分分析(SCA)工具是一种用于识别和管理软件项目中开源和第三方组件的工具。它通过扫描代码库,生成软件物料清单(SBOM),帮助开发者了解所用组件的版本、许可证和已知漏洞。
SCA 工具能够自动检测和报告安全风险、合规性问题以及过时的依赖项,从而提高软件的安全性和合规性。这些工具在现代软件开发中尤为重要,因为它们帮助团队在快速迭代中保持对外部依赖的可见性和控制。
T-SCA(试用版)是一款基于源码扫描的开源组件分析工具,能够自动识别项目源码中使用的开源组件,生成详细的组件清单,并检测潜在的安全漏洞,使得开发者能够轻松管理和监控项目中的开源组件,确保软件开发过程的透明性和可靠性。
▼
TCA主要集成了srcAuditor的能力,这是SCA的一个模块,是面向源码的安全扫描工具,用于分析源码中软件成分,License/Copyright合规风险,安全漏洞,开源组件投毒风险,以及敏感信息泄漏等多维度风险。
静态包管理:
通过扫描包管理信息,比如 go.mod, pom.xml package.json 等存在于源代码或制品包中的包管理相关描述文件,识别软件成分。覆盖几乎所有主流编程语言。
语言 | SBOM | 依赖关系 | 间接依赖 |
---|---|---|---|
C/C++ (Conan) | 支持 | X | X |
Java | 支持 | 支持 | 支持 |
JavaScript | 支持 | 支持 | 支持 |
Python | 支持 | X | X |
Golang | 支持 | 支持 | X |
Rust | 支持 | X | |
C#(.deps.json) | 支持 | X | X |
C#(nuget) | 支持 | 支持 | X |
Ruby | 支持 | X | |
PhP | 支持 | X | |
Swift/Objective-C | 支持 | X | |
Dart | 支持 | X | |
Elixir | 支持 | X | |
ArkTS | 支持 | 支持 | X |
▼
开通知识库服务
进入腾讯云控制台的软件成分分析计费管理(https://console.cloud.tencent.com/bsca/billing),购买开通开源组件知识库服务
添加规则
进入TCA,根据指引创建团队、创建项目、接入代码库后,在分析方案-规则配置-自定义规则包-添加规则,工具筛选T-SCA(试用版)后添加:
添加配置
分析方案-环境变量里配置开通了知识库服务的腾讯云账号和密码,或者直接在扫描机器(需要用户自行接入)中配置,避免泄露:
TENCENT_CLOUD_SECRET_ID=xxxxx
TENCENT_CLOUD_SECRET_KEY=xxxxx
注意: 工具会在本地节点机中分析代码库,并连接腾讯云的开源组件知识库比对查询结果,并不会上传任何代码或片段
开始扫描
TCA需要团队自行接入扫描节点,使用SCA工具需要机器提前安装docker,然后节点配置tsca_beta,即可开始扫描。
扫描结果包含:组件信息、CVE、最低修复版本、组件详情链接