업데이트로 돌아가기
New releaseAug 23, 2026

vex8s v0.5.0

스캔에 Kubernetes 컨텍스트를 적용하여 취약점을 억제

공유

Vex8s

vex8s (이 로고는 AI로 생성되지 않았습니다)

Vex8s는 컨테이너 취약점을 Kubernetes 설정과 연관시켜 클러스터에서 실제로 악용 가능한 CVE를 파악하여 VEX 문서를 생성합니다.

참고로, 이 프로젝트는 실험적입니다. 사항이 빠르게 변경될 수 있습니다.

작동 방식

이 프로젝트는 취약점 분류와 securityContext 분석을 결합하여 Kubernetes 워크로드 내에서 알려진 CVE의 악용 가능성을 평가하는 것을 목표로 합니다.

vex8s-logic

다음 개념을 기반으로 합니다.

  • 각 CVE는 하나 이상의 취약점 클래스 (CWE)로 분류됩니다.
  • CVE 설명은 내장된 ML 모델에 의해 처리되어 악용 범주를 예측합니다.
  • CWE와 예측된 악용 범주를 결합하여 CVE가 완화 가능한지 결정합니다.
  • 악용 범주는 해당 CVE를 차단하거나 영향을 줄일 수 있는 Kubernetes 설정 집합에 매핑됩니다.
  • Kubernetes 매니페스트를 파싱하여 컨테이너 설정을 검사하고 관련 설정이 적용되었는지 평가할 수 있습니다.
  • 두 분석을 결합하여 시스템은 주어진 워크로드 구성에서 CVE가 악용 가능한지 결정할 수 있습니다.
  • CVE 완화가 가능한 경우, 이를 최종 VEX 문서에 추가합니다.

더 깊이 있는 내용은 이 문서를 참조하십시오: 환경 인식 취약점 억제: Kubernetes Security Context와 VEX 활용

설치

릴리스 페이지에서 최신 바이너리를 다운로드하거나 직접 빌드할 수 있습니다.

make build

사용법

vex8s는 현재 VEX 문서 생성을 위해 2가지 방식을 지원합니다.

  • 수동 모드(passive-mode): trivy 또는 grype로 이미 생성된 취약점 보고서를 전달합니다.
  • 능동 모드(active-mode): trivy 또는 grype 엔진을 사용하여 이미지를 적극적으로 스캔한 후 결과를 기반으로 문서를 생성합니다.

수동 모드 (권장)

trivy 사용:

# generate vulnerability report.
trivy image --format json --output nginx.trivy.json nginx:1.21.0

# generate VEX document by processing vulnerability report.
vex8s generate --manifest examples/nginx.yaml --report nginx.trivy.json --output nginx.vex.json

# scan again with VEX document to suppress vulnerabilities.
trivy image --vex nginx.vex.json --show-suppressed nginx:1.21.0

동일한 작업을 grype로도 수행할 수 있습니다.

# generate sbom report.
grype --output cyclonedx-json --file nginx.grype.json nginx:1.21.0

# generate vulnerability report.
grype sbom:./nginx.grype.json --output json --file nginx.grype-vr.json

# generate VEX document by processing vulnerability report.
vex8s generate --manifest examples/nginx.yaml --report nginx.grype-vr.json --output nginx.vex.json

# scan sbom with VEX document to suppress vulnerabilities.
grype sbom:./nginx.grype.json --output table --vex nginx.vex.json --show-suppressed

능동 모드

trivy 사용:

# scan the image and automatically generate VEX document.
vex8s generate --manifest examples/nginx.yaml --scan.engine trivy --output nginx.vex.json

# scan again with VEX document to suppress vulnerabilities.
trivy image --vex nginx.vex.json --show-suppressed nginx:1.21.0

동일한 작업을 grype로도 수행할 수 있습니다.

# generate sbom report.
grype --output cyclonedx-json --file nginx.grype.json nginx:1.21.0

# scan the image and automatically generate VEX document.
vex8s generate --manifest examples/nginx.yaml --scan.engine grype --output nginx.vex.json

# scan sbom with VEX document to suppress vulnerabilities.
grype sbom:./nginx.grype.json --output table --vex nginx.vex.json --show-suppressed

참고 자료

이 프로젝트는 Akihiro Suda의 프로젝트인 vexllm에서 영감을 받았습니다.

카테고리