基础介绍

【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP

基础描述

  • Trivy是一个开源的容器镜像漏洞扫描器,可以扫描常见的操作系统和应用程序依赖项的漏洞。它可以与Docker和Kubernetes集成,帮助用户在构建和部署容器镜像时发现安全漏洞。Trivy支持多种漏洞数据库,包括Red Hat、Debian、Alpine等,可以根据用户的需求进行配置。Trivy还支持CI/CD集成,可以在构建过程中自动扫描镜像并生成报告。与Harbor集成需要使用Harbor Scanner Adapter for Trivy,可以通过配置Scanner Adapter将Trivy与Harbor集成,实现镜像的自动扫描和漏洞报告生成。

Trivy特点

  • 全面的漏洞检测:涵盖操作系统包、操作系统包、开发语言、错误配置、策略等内容。

  • 简单:仅指定镜像名称、包含IaC配置的目录或工件名称。

  • 快速:理想情况下可以在几十秒内完成扫描动作。

  • 易于安装:是一个简易的执行工具,可以通过apt-get install、yum install、brew install等方式安装,没有前置条件,如安装DB的,依赖库等。

  • 高精确度:特别是Alpine Linux和RHEL/CentOS,其他操作系统也高。

  • trivy官网https://aquasecurity.github.io/trivy/v0.47/

  • 开源地址https://github.com/aquasecurity/trivy

部署

  • trivy的安装方式比较多,rpm的形式安装,apt的形式安装,helm形式的直接集成到kubernetes内,也可以直接docker run 镜像的方式部署。

在线下载

wget https://github.com/aquasecurity/trivy/releases/download/v0.47.0/trivy_0.47.0_Linux-64bit.tar.gz

百度网盘下载

安装

  • 解压
tar -zxf trivy_0.47.0_Linux-64bit.tar.gz
  • 移入二进制目录
mv trivy /usr/bin/
  • 查看帮助信息
trivy --help

使用

扫描nginx镜像

trivy image nginx
  • 第一次会去远程下载安全漏洞加密数据库,下载完成后和本地镜像进行对比,输出结果
    【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP
  • 数据库缓存目录
/root/.cache/trivy

【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP

  • 根据不同的镜像类型下载不同的安全漏洞库

扫描结果解析

  • 打印nginx高危安全漏洞
trivy image -s HIGH nginx

【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP

  • 着重关注最后一列 Title,点击链接信息,查看漏洞详情
    【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP
  • 如 安全漏洞 CVE-2022-22576 详细描述信息
    【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用-LMLPHP

json格式输出

trivy image -s HIGH nginx -f json -o ng-trivy.json
  • 基于JSON格式,后续可进行可视化展示。

总结

12-05 06:41