SBOM을 사용한 의존성 스캔
SBOM을 사용한 의존성 스캔에 대해 설명합니다.
히스토리 GitLab 17.4에서 기본 브랜치에 한해 실험 기능 으로 도입 되었습니다. dependency_scanning_using_sbom_reports 라는 기능 플래그 를 사용하며 기본적으로 비활성화되어 있습니다. GitLab 17.5에서 GitLab Self-Managed에 활성화 되었습니다. GitLab 17.9에서 실험 기능에서 베타로 변경 되어 모든 브랜치를 지원하며, Cargo, Conda, Cocoapods, Swift에 대해 최신 의존성 스캔 CI/CD 템플릿에서 기본적으로 활성화 됩니다. GitLab 17.10에서 dependency_scanning_using_sbom_reports 기능 플래그가 제거되었습니다. GitLab 18.5에서 베타에서 GitLab.com 한정 제한적 제공으로 변경 되었으며, 새로운 V2 CI/CD 의존성 스캔 템플릿 이 함께 제공됩니다. dependency_scanning_sbom_scan_api 라는 기능 플래그 를 사용하며 기본적으로 비활성화되어 있습니다. GitLab 18.10에서 dependency_scanning_using_sbom_reports 기능 플래그가 기본적으로 활성화 되었습니다. GitLab 19.0에서 정식 출시 되었습니다. CycloneDX 소프트웨어 자재 명세서(SBOM)를 사용한 의존성 스캔은 애플리케이션의 의존성에서 알려진 취약점을 분석합니다. 모든 의존성이 스캔 대상이며, 전이 의존성 도 포함됩니다. 의존성 스캔은 흔히 소프트웨어 구성 분석(SCA)의 일부로 여겨집니다. SCA에는 코드가 사용하는 항목을 점검하는 여러 측면이 포함될 수 있습니다. 이러한 항목에는 대개 애플리케이션 및 시스템 의존성이 포함되며, 이는 직접 작성한 항목이 아니라 거의 항상 외부 출처에서 가져온 것입니다. 의존성 스캔은 애플리케이션 수명 주기의 개발 단계에서 실행할 수 있습니다. CI/CD 파이프라인에서 새 의존성 스캔 분석기를 사용하면 프로젝트 의존성이 탐지되어 CycloneDX SBOM 보고서에 기록됩니다. 보안 결과는 소스 브랜치와 대상 브랜치 사이에서 식별되고 비교됩니다. 결과와 심각도는 머지 리퀘스트에 나열되므로, 코드 변경이 커밋되기 전에 애플리케이션의 위험에 선제적으로 대응할 수 있습니다. 보고된 SBOM 컴포넌트의 보안 결과는 새 보안 어드바이저리가 게시될 때 지속적 취약점 스캔 에서도 CI/CD 파이프라인과 별개로 식별됩니다. GitLab은 의존성 스캔과 컨테이너 스캔 을 모두 제공하여 이러한 모든 의존성 유형을 포괄합니다. 위험 영역을 최대한 넓게 다루려면 모든 보안 스캐너를 함께 사용하기를 권장합니다. 이 기능들의 비교는 의존성 스캔과 컨테이너 스캔 비교 를 참고합니다. 새 의존성 스캔 분석기에 대한 의견은 이 피드백 이슈 에 남깁니다. 의존성 스캔 활성화 # 프로젝트에서 의존성 스캔을 활성화합니다. 사전 요구 사항 # 모든 GitLab 인스턴스 공통 사전 요구 사항은 다음과 같습니다. 프로젝트에 대한 Developer, Maintainer 또는 Owner 권한