文章目录
- 3.1 RHEL/CentOS
- 3.2 Debian/Ubuntu
- 3.3 Arch Linux
- 3.4 Homebrew
- 3.5 脚本安装
- 3.6 Docker
- 3.7 Helm
1. 简介
Trivy 是一个简单而全面的漏洞/错误配置/秘密扫描器,用于容器和其他工件。 检测操作系统包(Alpine、RHEL、CentOS 等)和特定语言包(Bundler、Composer、npm、yarn 等)的漏洞。此外,扫描Terraform 和 Kubernetes 等基础架构即代码 (IaC) 文件,以检测使您的部署面临攻击风险的潜在配置问题。 还扫描硬编码的秘密vyTrivyTrivyTrivy比如密码、API 密钥和令牌。 Trivy易于使用。只需安装二进制文件,您就可以扫描了。扫描所需要做的就是指定一个目标,例如容器的image名称
Trivy 检测到两种类型的安全问题:
- 漏洞
- 错误配置
Trivy 可以扫描四种不同的工件:
- 容器镜像
- 文件系统和Rootfs
- Git 存储库
- Kubernetes
Trivy 可以在两种不同的模式下运行:
- Standalone
- Client/Server
Trivy 可以作为 Kubernetes Operator 运行:
- Kubernetes Operator
2. 特征
全面的漏洞检测
- 操作系统包(Alpine、Red Hat Universal Base Image、Red Hat Enterprise
Linux、CentOS、AlmaLinux、Rocky Linux、CBL-Mariner、Oracle
Linux、Debian、Ubuntu、Amazon Linux、openSUSE Leap、SUSE Enterprise
Linux、Photon OS 和 Distroless) - 特定于语言的包(Bundler、Composer、Pipenv、Poetry、npm、yarn、pnpm、Cargo、NuGet、Maven
和 Go)
检测 IaC 错误配置
- 开箱即用地提供了多种内置策略:
- Kubernetes
- docker
- Terraform
- 支持自定义策略
简单
- 仅指定镜像名称、包含 IaC 配置的目录或工件名称
快速
- 第一次扫描将在 10 秒内完成(取决于您的网络)。随后的扫描将在几秒钟内完成。
- 与其他扫描程序在第一次运行时需要很长时间(约 10 分钟)获取漏洞信息并鼓励您维护持久的漏洞数据库不同,Trivy 是无状态的,不需要维护或准备。
简易安装
- apt-get install,yum install并且brew install是可能的(参见安装)
- 没有先决条件,例如安装数据库、库等。
高准确率
- 尤其是 Alpine Linux 和 RHEL/CentOS
- 其他操作系统也很高
DevSecOps
- 适用于Travis CI、CircleCI、Jenkins、GitLab CI 等 CI。
- 请参阅CI 示例
支持多种格式
- 容器图像
- Docker Engine 中作为守护进程运行的本地映像
- Podman (>=2.0) 中的本地图像暴露了一个套接字
- Docker Registry 中的远程镜像,例如 Docker Hub、ECR、GCR 和 ACR
- 存储在docker save/podman save格式文件中的 tar 存档
- 符合OCI 图像格式的图像目录
- 本地文件系统和 rootfs
- 远程 git 仓库
SBOM(软件物料清单)支持
- CycloneDX
- SPDX
- GitHub Dependency Snapshots
3. 安装
3.1 RHEL/CentOS
yum
rpm
3.2 Debian/Ubuntu
apt源
deb包
3.3 Arch Linux
pikaur
yay
3.4 Homebrew
3.5 脚本安装
3.6 Docker
linux
macOS
实例
3.7 Helm
使用发布名称安装图表my-release:
该命令以默认配置在 Kubernetes 集群上部署 Trivy。参数 部分列出了可以在安装期间配置的参数。
示例
下一篇我们开始讲:trivy【2】工具漏洞扫描
参考: