CKS 题库 10、Trivy 扫描镜像安全漏洞
Task
使用 Trivy 开源容器扫描器检测 namespace kamino 中 具有严重漏洞的镜像 的 Pod。
查找具有 High 或 Critical 严重性漏洞的镜像,并删除使用这些镜像的 Pod 。
注意:Trivy 仅安装在 cluster 的 master 节点上, 在工作节点上不可使用。 你必须切换到 cluster 的 master 节点才能使用 Trivy
参考资料
https://kubernetes.io/zh-cn/docs/reference/kubectl/cheatsheet/#格式化输出
解答
切换集群
kubectl config use-context KSSC00401
查看namespace下pod 和image
kubectl get pods -n kamino -o=custom-columns="NAME:.metadata.name,IMAGE:.spec.containers[*].image"
提取镜像名并进行扫描
kubectl describe pod -n kamino | grep -i image: |awk '{print $2}' | sort -u
扫描并显示结果
for i in `kubectl describe pod -n kamino | grep -i image: |awk '{print $2}' | sort -u`; do trivy -q image -s HIGH,CRITICAL $i | grep -iEB3 "HIGH:|CRITICAL:" ; done
可以看到除了amazonlinux:2 其他镜像都存在高危漏洞, 对应之前的pod和images列表 删除包含漏洞的image即可
删除包含漏洞的pod
kubectl -n kamino delete pod tri111 tri222 tri333
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Hao DevSecOps!
评论



