项目开发中依赖了很多第三方开源工具,对于其版本,漏洞等因为时间或者是数量太多而无法关注到,Dependency-Track解决这些问题。
Dependency-Track 是一个开源组件分析平台,是开放网络应用安全项目(OWASP)的一项倡议。它旨在持续提供对应用程序组件及其相关风险的可见性。该工具帮助开发团队识别、管理和减少由第三方和内部组件引入的风险。
安装
docker-compose(推荐)
打开连接https://dependencytrack.org/docker-compose.yml
,复制其中内容到已有的docker-compose.yml中
dtrack-apiserver:
添加container_name: dtrack-apiserver
在environment块下添加
- ALPINE_DATABASE_MODE=external
- ALPINE_DATABASE_URL=jdbc:mysql://localhost:3306/dtrack?autoReconnect=true&useSSL=false&sessionVariables=sql_mode='ANSI_QUOTES,STRICT_TRANS_TABLES,ONLY_FULL_GROUP_BY,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
- ALPINE_DATABASE_DRIVER=com.mysql.cj.jdbc.Driver
- ALPINE_DATABASE_USERNAME=root
- ALPINE_DATABASE_PASSWORD=mysqlpassword
我这里使用的mysql8
数据库配置可参考
volumes改为
volumes:
- ./dependency-track:/data
dtrack-frontend:
添加container_name: dtrack-frontend
environment:下
- API_BASE_URL=http://ip:8081 #改为实际地址
保存后使用以下命令进行启停
docker-compose down
docker-compose up -d
需要注意: 对于两个服务的端口需要确认,防止和现有的业务端口冲突
其他安装方式
可参考 https://github.com/DependencyTrack/dependency-track
生成报告
- 登录
http://ip:8082/login
,默认初始账户和密码是 admin / admin - 创建项目
- 进入项目 - 成分 - 上传SBOM,选择已经生成的sbom.xml(生成参考附录)文件,稍等一会后刷新页面,即可看到结果
相关内容
sbom文件生成
以上只是简单的了解dtrack其用途和作用,更多功能需要去深入探索。