真题解析

题目

你可以使用浏览器打开一个额外的标签页来访问 Trivy 的文档

Task

使用 Trivy 开源容器扫描器检测 namespace kamino 中 Pod 使用的具有严重漏洞的镜像。

查找具有 HighCritical 严重性漏洞的镜像,并删除使用这些镜像的 Pod。

解析

获取 Pod 信息

kubectl get pod -n kamino
NAME     READY   STATUS             RESTARTS         AGE
alpine   0/1     CrashLoopBackOff   56 (3m30s ago)   4h25m
nginx    1/1     Running            0                4h27m
node     0/1     CrashLoopBackOff   56 (31s ago)     4h22m

挨个过滤镜像地址并进行扫描

kubectl get pod alpine -n kamino -o yaml | grep "image:"
  - image: alpine:3.14
    image: docker.io/library/alpine:3.14

trivy image -s "HIGH,CRITICAL" docker.io/library/alpine:3.14
kubectl get pod nginx -n kamino -o yaml | grep "image:"
  - image: nginx
    image: docker.io/library/nginx:latest

trivy image -s "HIGH,CRITICAL" docker.io/library/nginx:latest
kubectl get pod node -n kamino -o yaml | grep "image:"
  - image: node:19-alpine3.18
    image: docker.io/library/node:19-alpine3.18

trivy image -s "HIGH,CRITICAL" docker.io/library/node:19-alpine3.18

删除使用漏洞镜像启的 Pod

# 根据上方扫描结果删除对应的 Pod
kubectl delete pod xxx -n kamino

Last updated