본문 바로가기

POST/Tech

슬기로운 SBOM 사용법

Designed by Sophia

 

SBOM (Software Bill of Materials), 소프트웨어 자재명세서에 대해 들어보셨나요? 최근 국가정보원과 과기정통부에서 소프트웨어 공급망 보안 가이드라인을 발표하면서 국내에서도 변화하는 환경에 맞춰 미리 준비를 해야할 필요가 커지고 있습니다. 그동안 몇차례 SBOM에 대해 포스팅을 했었지만, 오늘은 SBOM 생성 후 관리나 관리방안에 대해 이야기해 보려고 합니다.

SBOM은 무엇이며 왜 중요한가?

SBOM은 Software Bill of Materials의 약자로 소프트웨어 구성요소를 나타내는데, 흔히 제품의 성분표기와 유사하다고 이해하면 됩니다. 식품에서 성분 표시를 확인하여 알러지가 있는 사람은 해당 식품을 피하는 등 정보 기반의 의사결정이 가능해집니다.

 

[구글 이미지 캡처, 식품 성분표기 예시]

 

SBOM는 소프트웨어를 구성하는 모든 요소를 표기하며, 라이브러리, 프레임워크, 기타 의존성 등을 모두 포함하며, 사용자가 소프트웨어 구성요소에 대하여 명확하게 파악이 가능하며 다음의 장점을 얻을 수 있습니다. 

 

  • 향상된 컴플라이언스: 점차 늘어나는 규제 기관의 요구 사항을 충족하기 위해 SBOM 제출이 필수화되고 있습니다.
  • 강화된 보안: SBOM을 통해 소프트웨어 구성 요소 내의 취약성을 식별할 수 있습니다. 사용하고 있는 구성 요소의 버전과 이로 인해 발생할 수 있는 취약성을 정확히 파악함으로써 위험 노출 정도를 빠르게 평가하고 악용당하기 전에 취약성 패치를 적용하는 등 보안 조치를 취할 수 있습니다.
  • 라이선스 관리: SBOM은 모든 소프트웨어 구성 요소에 대한 라이선스 정보 추적을 지원하여 각 라이센스의 사용 조건을 준수하는 데 도움을 줄 수 있습니다.

SBOM 유효성 검사

SBOM은 자동으로 프로세스되고 분석될 수 있어야하며, machine-read 가 가능해야 합니다. 생성된 SBOM을 제대로 활용하려면 다음의 몇가지 조건이 충족되어야 하며, 이를 위해 유효성을 확인해 볼 필요가 있으며, 모든 구성 요소가 정확하게 표현되고 최신 버전인지 확인하는 프로세스입니다. 유효성을 확인할 때 다음의 항목에 대해 검토해보아야 합니다.

 

  • 투명성: 모든 소프트웨어 구성요소에 대한 가시성 및 벤더가 제공하는 정보에 대한 의존성 최소화
  • 효율적인 의사소통: 소프트웨어 공급망에 참여하는 모든 관계자 간의 효율적인 정보 교환을 보장하고 협업 강화
  • 감사 지원: 소프트웨어 구성요소에 대한 정확한 추적이 가능해지며, 컴플라이언스 준수와 재고 관리의 필수 요소
  • 보안 취약성 사전 예방: SBOM 유효성 검사를 통해 모든 구성요소가 최신버전과 취약점 보유 여부를 확인할 수 있어 잠재적 보안 위협에 사전 대응 가능

SCA와 SBOM 관리 연동

SCA(소프트웨어 구성 분석)은 소프트웨어를 스캔하여 컴플라이언스 위반 사항과 심각한 보안 취약성을 찾아냅니다. 특히 오픈소스 및 타사 구성 요소를 집중적으로 검토하여 라이센스 및 품질 기준을 SDLC(소프트웨어 개발 생명주기) 전체에서 준수하도록 보장합니다.

  • SCA를 이용하여 SBOM 검증: SBOM의 정확성을 재평가하여 보안 리스크 관리 효율화
  • 컴플라이언스 및 보안 상호 검증: SBOM과 SCA 결과 비교를 통해 문제 파악
  • SCA 검사 보완: SBOM 정보를 활용하여 데이터베이스나 운영체제 등 복잡한 영역의 보안 강화

SBOM과 SCA를 함께 활용하면 소프트웨어 공급망 전체를 종합적으로 파악할 수 있어 사전에 위험과 취약성을 관리할 수 있습니다. 이 전략적인 접근 방식은 규제 기준을 준수하는 것은 물론 잠재적인 위협으로부터 소프트웨어를 보호하는 데에도 도움이 됩니다.

출처: Sonatype, The essential duo of SCA and SBOM management

 

SBOM 통합 및 모니터링

SBOM을 SDLC에 효과적으로 통합하기 위해서는 다음을 고려해야 합니다.

 

  • SBOM 생성 자동화: CI/CD 파이프라인에 SBOM 생성 통합하고 빌드 단계별로 SBOM 자동 생성
  • 품질 게이트 설정: CI/CD 파이프라인 내부에서 SBOM을 스캔 자동화를 통해 중요 취약성 및 라이센스 문제 감지 및 알림
  • QA 단계의 컴플라이언스 모니터링: 릴리스 전 보안 및 컴플라이언스 검증을 위한 QA 단계 SBOM 활용

적극적인 SBOM 모니터링은 취약성 관리에 중요합니다.

 

  • 포괄적인 SBOM 아카이브: 모든 소프트웨어, 특히 운영 중이거나 고객에게 제공된 소프트웨어의 SBOM 보관
  • 장기 보관: 각 소프트웨어 버전별로 SBOM을 저장하여 컴플라이언스 유지 및 취약성 신속 대응
  • 위험 관리: 취약성 발견 시 위험 관리 프로토콜 실행
  • 제 3자 SBOM 모니터링: 써드파티 SBOM 모니터링을 통한 제로-데이 취약성 및 공급망 공격 신속 대응
  • 지속적인 프로덕션 모니터링: 프로덕션 소프트웨어에 대한 지속적 SBOM 모니터링을 통해 신규 발견되는 취약성 신속 파악 및 해결

Sonatype SBOM Manager

Sonatype SBOM Manager는 소프트웨어 포트폴리오 전체의 SBOM 관리를 간소화하도록 설계된 최고 수준의 도구입니다.

Sonatype은 오픈소스 커뮤니티에 깊이 뿌리 내려 있으며, SBOM 도구 오픈소스 기여, Maven Central 유지 관리, SBOM 중요성 인식 등을 바탕으로 업계 최고의 SBOM 관리 도구입니다. SBOM Manager를 활용하면 다음의 혜택이 있습니다.

 

  • 간편한 수집: 다양한 소스에서 SBOM을 원활하게 수집하여 소프트웨어 포트폴리오의 완벽한 그림을 얻을 수 있습니다.
  • 중앙 저장소: 원본 및 보강된 버전을 포함하여 모든 SBOM에 대한 안전하고 체계적인 저장소를 유지 관리하여 언제든지 쉽게 액세스, 검색 및 감사할 수 있습니다.
  • 강력한 검색 기능: Sonatype의 데이터, 분석 및 지속적인 모니터링과 함께 사용하면 SBOM 컬렉션 전체에서 특정 구성 요소, 라이센스 데이터 또는 취약성을 빠르게 찾아 귀중한 시간과 리소스를 절약할 수 있습니다.
  • 취약성 데이터 보강: Sonatype의 최고 수준 취약성 데이터로 SBOM을 보강하고 VEX(Vulnerability Exploitability eXchange) 항목을 추가하여 SBOM에 중요한 보안 정보를 포함시킬 수 있습니다.
  • 한 곳에서 라이센스 관리: 소프트웨어에 적용되는 오픈소스 라이센스를 추적하고 라이센스 요구 사항을 준수하십시오.
  • 듀얼 포맷 배포: CycloneDX 및 SPDX 포맷 모두에서 SBOM을 생성 및 배포하여 가장 광범위한 도구 및 워크플로와의 호환성을 보장합니다.

SBOM Manager는 기존 개발 도구와 완벽하게 통합되도록 설계되었습니다. 이를 통해 기존 워크플로에 직접 SBOM 생성 및 관리를 통합하여 중단을 최소화하고 효율성을 극대화할 수 있습니다.

 

출처: Sonatype, Streamline your SBOM management with SBOM Manager

SBOM Manager 사용 사례

SBOM Manager는 모든 규모의 기업에게 다양한 사용 사례를 제공합니다.

 

  • SBOM 감사: SBOM 감사 시 SBOM Manager는 소프트웨어 구성 요소에 대한 즉시 이용 가능한 종합 기록을 제공하여 프로세스 간소화 및 감사 피로 감소
  • 컴플라이언스 점검: SBOM Manager는 모든 구성 요소와 관련 위험의 명확한 가시성을 제공하여 규정 준수 유지
  • 취약성 관리: 소프트웨어 구성 분석(SCA)을 처음 사용하는 경우 SBOM은 SBOM Manager의 기능과 함께 Sonatype의 뛰어난 취약성 및 구성 요소 데이터를 활용하여 소프트웨어 내의 취약성 사전 식별 및 해결 SBOM은 무엇이며 왜 중요한가?

 

SBOM Manager에 대한 상세한 소개를 받고 싶다면 Sonatype 한국총판 오에스씨코리아에 문의주세요

 

 

 

원문링크:

I have an SBOM, now what?

Streamline your SBOM management with SBOM Manager

The essential duo of SCA and SBOM management

 

 

 

참고링크:

소프트웨어 구성 분석(SCA)와 소프트웨어 자재명세서(SBOM)

SBOM 톺아보기 - SBOM의 구성요소, 표준 및 포맷

 

소나타입, 공개되지 않았던 450만건 오픈소스 취약점 발표