MASTG-TECH-0132: 通过创建 SBOM 对 iOS 依赖项进行软件组成分析 (SCA)
如果您使用 SwiftPM,可以使用 cdxgen以 CycloneDX 格式创建软件物料清单 (SBOM)。目前,不支持 Carthage 和 CocoaPods。您可以要求开发团队提供 SBOM 文件,也可以自己创建。为此,请导航到您要扫描的 Xcode 项目的根目录,然后执行以下命令
$ cdxgen -o sbom.json
创建的 SBOM 文件需要经过 Base64 编码,并上传到 dependency-track进行分析。
$ cat sbom.json | base64
$ curl -X "PUT" "https://:8081/api/v1/bom" \
-H 'Content-Type: application/json' \
-H 'X-API-Key: <YOUR API KEY>>' \
-d $'{
"project": "<YOUR PROJECT ID>",
"bom": "<BASE64-ENCODED SBOM>"
}'
如果生成的 JSON 文件太大,另请查看上传 SBOM 的替代方案。
如果您使用的是 Visual Studio Code (vscode) Docker 容器的默认设置,请转到 dependency-track的前端,即 https://:8080。打开您上传了 SBOM 的项目,以验证是否存在任何易受攻击的依赖项。