SBOM [Gemini] Defendency-check, Syft, Trivy

황제낙엽 2025.06.12 14:36 조회 수 : 0

sitelink1 https://github.com/anchore/syft 
sitelink2 https://owasp.org/www-project-dependency-check/ 
sitelink3 https://anchore.com/ 
sitelink4  
extra_vars5  
extra_vars6  

* Syft 는 테스트 해본 결과 프로젝트 내의 환경 메타 파일의 내용과 모든 바이너리 파일을 스캔하는 것으로 보인다. (program source file 내용을 scan 하지는 않음)


 

SyftOWASP Dependency-Check는 SBOM(Software Bill of Materials) 생성 및 활용에 있어 서로 다른 역할과 강점을 가지고 있으며, 상호 보완적인 관계를 맺고 있습니다.

Syft의 역할:

  • SBOM 생성 전문 도구: Syft는 소프트웨어 빌드 아티팩트(예: 컨테이너 이미지, 파일 시스템, 아카이브)를 스캔하여 포함된 모든 구성 요소와 그 종속성을 식별하고 SBOM을 생성하는 데 특화된 도구입니다.
  • 다양한 포맷 지원: CycloneDX, SPDX, 그리고 Syft 자체의 JSON 포맷 등 여러 표준 SBOM 포맷을 지원하여 다양한 툴체인 및 규정 준수 요구 사항과의 호환성을 제공합니다.
  • 광범위한 언어 및 생태계 지원: 파이썬, 자바, Go, Ruby 등 다양한 프로그래밍 언어와 그 패키지 관리자를 분석하여 종속성을 추출합니다.
  • 메타데이터 풍부: 각 패키지의 출처, CPE(Common Platform Enumeration) 식별, 라이선스 정보 등 풍부한 메타데이터를 SBOM에 포함합니다.
  • CI/CD 파이프라인 통합 용이: 빌드 프로세스의 일부로 SBOM을 자동으로 생성하고 관리하는 데 매우 효과적입니다.

OWASP Dependency-Check의 역할:

  • 취약점 분석 전문 도구: Dependency-Check는 애플리케이션 종속성에서 알려진 취약점을 식별하는 데 중점을 둔 오픈 소스 SCA(Software Composition Analysis) 도구입니다.
  • 취약점 데이터베이스 활용: NVD(National Vulnerability Database), Sonatype OSS Index, GitHub Advisories 등 다양한 취약점 데이터베이스와 연동하여 종속성의 취약점 여부를 확인합니다.
  • 다양한 구현 방식: 커맨드라인 인터페이스, 빌드 플러그인(Maven, Ant 등), Jenkins 플러그인 등 다양한 형태로 제공되어 기존 개발 워크플로우에 쉽게 통합할 수 있습니다.
  • 정확한 매칭: CPE 등을 활용한 정밀 매칭 및 퍼지 매칭을 통해 취약점을 식별합니다.

Syft와 Dependency-Check의 관계 및 상호 보완성:

Syft와 Dependency-Check는 각각 SBOM 생성취약점 분석이라는 핵심적인 기능을 수행하며, 서로의 강점을 활용하여 소프트웨어 공급망 보안을 강화할 수 있습니다.

  1. SBOM 생성 (Syft) -> 취약점 분석 (Dependency-Check 또는 다른 SCA 툴):

    • Syft로 정확한 SBOM 생성: Syft는 소프트웨어 구성 요소의 정확하고 포괄적인 목록을 포함하는 SBOM을 생성하는 데 탁월합니다. 이는 소프트웨어의 "재료 목록"을 만드는 것과 같습니다.
    • SBOM을 활용한 취약점 분석: 이렇게 Syft가 생성한 SBOM(특히 CycloneDX 또는 SPDX 포맷)은 Dependency-Check 또는 Anchore의 Grype, Trivy, Dependency-Track과 같은 다른 취약점 스캐너에 입력으로 사용될 수 있습니다. SBOM에 포함된 구성 요소 정보를 기반으로 해당 스캐너들은 알려진 취약점을 효율적으로 식별하고 보고합니다.
    • 이점: Syft는 SBOM 생성에 특화되어 있고, Dependency-Check는 취약점 분석에 특화되어 있으므로, 각 도구의 최적화된 기능을 활용하여 정확한 SBOM을 얻고 그 SBOM을 통해 심층적인 취약점 분석을 수행할 수 있습니다. 이는 "shift-left" 보안 접근 방식을 가능하게 하여 개발 초기 단계에서부터 취약점을 발견하고 해결할 수 있도록 돕습니다.
  2. 독립적인 사용:

    • 물론 두 도구는 독립적으로 사용될 수도 있습니다. Dependency-Check는 자체적으로 파일 시스템을 스캔하여 종속성을 추출하고 취약점을 분석할 수 있습니다. 하지만 Syft가 생성한 잘 구조화된 SBOM을 사용하면 Dependency-Check가 더 효율적으로 구성 요소를 식별하고 분석할 수 있는 기반을 제공할 수 있습니다.

요약하자면:

  • Syft: 소프트웨어의 모든 구성 요소와 종속성을 빠르고 정확하게 식별하고, 표준 SBOM 형식으로 내보내는 데 강점이 있습니다. 이는 소프트웨어의 "재료 목록"을 만드는 도구입니다.
  • OWASP Dependency-Check: SBOM 또는 직접 스캔을 통해 식별된 구성 요소에서 알려진 취약점을 찾아내고 보고하는 데 강점이 있습니다. 이는 "재료 목록"에 있는 것들이 어떤 보안 문제가 있는지 확인하는 도구입니다.

이 두 도구는 각자의 전문성을 바탕으로 상호 보완적인 관계를 가지며, 함께 사용될 때 소프트웨어 공급망 보안의 가시성과 제어를 크게 향상시킬 수 있습니다.


 

 

 

 

 

번호 제목 sitelink1 글쓴이 날짜 조회 수
공지 [계속 추가중] SBOM 용어 정의   황제낙엽 2025.04.10 96
공지 [계속 추가중] Keycloak 용어 및 설정 옵션 정의   황제낙엽 2024.02.02 654
97 FOSSLight 각 Scanner 들의 특징   황제낙엽 2025.06.13 0
96 FOSSLight Source Scanner 와 FOSSLight Scanner 의 License 정보 감지 관련 https://fosslight.org/fosslight-guide/scanner/2_source.html  황제낙엽 2025.06.12 0
» [Gemini] Defendency-check, Syft, Trivy https://github.com/anchore/syft  황제낙엽 2025.06.12 0
94 FOSSLight Hub 시스템 구축 방법 https://fosslight.org/hub-guide/advanced/1_developer.html  황제낙엽 2025.06.12 0
93 [ChatGPT] SBOM 도구 사용시 Xcode나 macOS 환경이 꼭 필요한 경우   황제낙엽 2025.06.12 0
92 FOSSLight Hub 가 제공하는 기능 https://github.com/fosslight/fosslight/b...DME_kor.md  황제낙엽 2025.06.11 0
91 [Gemini] FOSSLight 의 데이터 공유 정책 관련 https://fosslight.org/hub-guide/  황제낙엽 2025.06.11 0
90 ScanCode toolkit 분석 도구 기능 명세 https://github.com/aboutcode-org/scancode-toolkit/releases  황제낙엽 2025.06.10 0
89 OSS Review Toolkit (ORT) - Java 기반 무료 SBOM 생성 도구 (SAST / 메타데이터 기반) [1] https://github.com/oss-review-toolkit/ort  황제낙엽 2025.06.09 0
88 [ChatGPT] SBOM 분석 도구의 주요 유형   황제낙엽 2025.06.09 0
87 [ChatGPT] 정적 분석(SAST) 또는 메타데이터 기반 탐색 방식의 무료 sbom 생성 도구   황제낙엽 2025.06.04 0
86 SBOM용 Tools(FOSSLight, Syft, Trivy, Dependency-Track) 비교 분석   황제낙엽 2025.05.30 0
85 [ChatGPT] docker, fosslight hub, scanner, jenkins 시스템 구성에 대한 의견   황제낙엽 2025.04.14 32
84 [Gemini] SPDX, CycloneDX   황제낙엽 2025.04.10 29
83 [Gemini] SBOM 생성을 위해 FOSSLight를 사용하는 데 필요한 배경 지식   황제낙엽 2025.04.10 46
82 SBOM(Software Bill of Materials) & FOSSLight https://fosslight.org/ko  황제낙엽 2025.04.04 52
81 letsencrypt 인증서(PEM)를 Java KeySotre(JKS) 형식으로 변환하기 https://blog.naver.com/hsunryou/223630528327  황제낙엽 2024.11.12 172
80 OpenSSL 설치   황제낙엽 2024.11.12 123
79 서버의 인증서 파일을 갱신후 브라우저의 인증서 뷰어에서 새 인증서 정보가 조회되지 않을 경우   황제낙엽 2024.08.23 111