Vulnerability and Misconfiguration Scanning
Trivy 可以扫描漏洞与有问题的设定档
在这个容器的时代,如何让你的Image保持一定的安全性?最好尽量挑选官方原厂出来且经过认证的Image,另外加上使用Image Scanner会越来越显的重要。
官方github : https://github.com/aquasecurity/trivy
选择Trivy的原因:
Github Repo | Star | Language |
---|---|---|
Trivy | 8.7k | golang |
Clair | 8.2k | golang |
Anchore | 1.3k | python |
以上数据统计到 台湾时间 2021-10-07
trivy image ${YOUR_IMAGE}
ex: 用alpine image测试扫描功能
trivy image alpine:3.14.2
以下为扫描结果
trivy image ${YOUR_IMAGE} -f json
因为trivy会限制你的每天更新次数,所以需要更新时再下指令更新到本机
trivy image --skip-update ${YOUR_IMAGE}
选定一个trivy版本,要RUN --download-db-only 是因为之後就不用每次使用此image都要更新漏洞资料库罗,若要更新再重新build一个image即可。
FROM aquasec/trivy:0.19.2
RUN trivy image --download-db-only
以下提供我的Drone Pipeline设定档案给各位参考
使用 --skip-update 避免被锁住更新,因为trivy官方有限制每天更新次数。
kind: pipeline
type: docker
name: image-scan
steps:
- name: scan-using-images
image: rain123473/trivy:latest
commands:
- trivy image --skip-update
我这里是设计在你的git repo内build个tag就可以触发更新trivy的漏洞资料库了,至於更新的频率可以自行调整,我的话是每天更新一次就好罗。
kind: pipeline
type: docker
name: image-scan
steps:
- name: update-trivy-database
when:
ref: refs/tags/*
image: alpine:3.14.2
commands:
- docker build --no-cache --pull --force-rm -t "rain123473/trivy:${DRONE_TAG}" -f trivy-build.dockerfile .
- docker push "rain123473/trivy:${DRONE_TAG}"
- docker tag "rain123473/trivy:${DRONE_TAG}" "rain123473/trivy:latest"
- docker push "rain123473/trivy:latest"
- docker rmi "rain123473/trivy:${DRONE_TAG}"
privileged: true
volumes:
- name: docker
path: /var/run/docker.sock
volumes:
- name: docker
host:
path: /var/run/docker.sock
以上这样子就将trivy导入CI/CD流程内罗,各位在玩玩看吧~
前言 昨天我们完成了登入 今天我们一样登入roni来建立roni的技能吧!! 目标 ajax应用 验...
接下来要写自我介绍页, 自我介绍页使用 routes/web.php 里面的 Route::grou...
分领域後 除了每周二的课程 每周四也会有老师指定的演示 本周我是负责jQuery 以下是我的不专业整...
点击进入React源码调试仓库。 本篇是详细解读React DOM操作的第壹篇文章,文章所讲的内容发...
最後一天~~~ 压轴当然是要最好玩的东西啦,讲完今天的内容,大家就可以在介面上自由的创作了! ♠♣今...