ozeranskii/image-vuln-scanner
GitHub: ozeranskii/image-vuln-scanner
一款基于 Trivy 和 Grype 的 Kubernetes 镜像漏洞扫描 CLI 工具,解决命名空间级批量检测问题。
Stars: 1 | Forks: 0
# 镜像扫描器
一个使用 Trivy 和 Grype 扫描 Docker 镜像漏洞的 CLI 工具。
## 安装
### 前置条件
在开始之前,请确保已安装以下依赖项:
1. **Python 3.8+**:您可以从 [官方网站](https://www.python.org/downloads/) 下载 Python。
2. **Poetry**:Poetry 是 Python 的依赖管理和打包工具。您可以按照 [此处](https://python-poetry.org/docs/#installation) 的说明进行安装。
3. **kubectl**:`kubectl` 是用于与 Kubernetes 集群交互的命令行工具。您可以按照以下说明安装。
4. **Trivy 或 Grype**:这些是漏洞扫描器。以下是各自的安装说明。
### 安装项目依赖
使用 Poetry 安装依赖项和软件包:
```
poetry install
```
这将安装 pyproject.toml 中列出的所有必需依赖项,并为项目创建虚拟环境。
#### 安装 kubectl
要使用该工具,您需要安装并配置 `kubectl` 以访问您的 Kubernetes 集群。要安装 kubectl,请按照[此处](https://kubernetes.io/docs/tasks/tools/)的说明操作。
macOS 上使用 Homebrew 的示例安装命令:
```
brew install kubectl
```
### 安装 Trivy 和 Grype
请确保您的系统上已安装 Trivy 和 Grype:
#### Trivy
Trivy 是一款功能全面且易于使用的容器漏洞扫描器。要安装 Trivy,请按照[此处](https://github.com/aquasecurity/trivy#installation)的说明操作。
macOS 上使用 Homebrew 的示例安装命令:
```
brew install aquasecurity/trivy/trivy
```
#### Grype
Grype 是一款用于容器镜像和文件系统的漏洞扫描器。要安装 Grype,请按照[此处](https://github.com/anchore/grype#installation)的说明操作。
macOS 上使用 Homebrew 的示例安装命令:
```
brew tap anchore/grype
brew install grype
```
## 用法
要使用此 CLI 工具,您需要指定 Kubernetes 命名空间、标签选择器、输出文件以及扫描器类型(`trivy` 或 `grype`)。
示例命令:
```
poetry run image-vuln-scanner --namespace production --label-selector stack=python --output-file scan_results.json --scanner-type grype
```
## CLI 参数
- `--namespace`(必需):要扫描的 Kubernetes 命名空间。
- `--label-selector`(必需):用于过滤资源的选择器标签。
- `--output-file`(可选):保存扫描结果的输出文件。
- `--scanner-type`(必需):要使用的漏洞扫描器(`trivy` 或 `grype`)。
- `--max-concurrent-tasks`(可选):最大并发任务数(默认为 4)。
标签:Angular, CLI 工具, DevOps 安全, Docker, Grype, kubectl, Pandas, Poetry, Python CLI, Web截图, 依赖管理, 安全防御评估, 安全防护, 容器安全, 容器漏洞检测, 开源安全工具, 活动识别, 逆向工具, 逆向工程平台, 镜像扫描, 镜像漏洞