Industry Issue

Black Duck으로 SBOM 작성

Software Risk Analysis
작성자
관리자
작성일
2024-06-14 10:24
조회
81

Black Duck으로 SBOM 작성

 

애플리케이션 보안에서 중요한 것은 개발에 얼마나 많은 인력이 참여했는지에 관계없이 애플리케이션을 만드는 데 사용된 각 구성 요소의 공급망을 평가하는 것입니다. 공급망의 링크가 모호한 경우 애플리케이션이 취약한 위험 정도를 자신있게 평가하기 어려울 수 있습니다. 

SBOM(Software Bill of Materials)을 구축함으로써 개발 조직은 조직 및 소비자에게 특정 애플리케이션과 관련된 위험을 더 잘 이해하는 데 중요한 정보를 제공합니다. 그러면 보안 위반 및 정책 위반을 방지하고 이에 대응할 수 있는 더 나은 상황에 있게 됩니다.

 

SBOM을 통해 표준 충족 및 신뢰 구축

Black Duck을 사용하면 사용자가 SPDX 및 CycloneDX와 같은 형식으로 SBOM을 신속하게 구축하고 내보낼 수 있으므로 소프트웨어 공급망을 보다 쉽게 ​​보호할 수 있습니다. 이러한 표준화된 SBOM 형식은 행정 명령 14028(EO 14028)에 언급된 대로 NIST 표준을 준수하는 데 필요한 정보를 제공합니다. 이 행정 명령은 소프트웨어 보안과 관련하여 정부와 민간 부문 간의 투명성을 높이기 위한 것입니다. 이러한 투명성을 달성하기 위한 단계 중 하나는 공급업체가 제품 구매자에게 SBOM을 기계가 읽을 수 있는 표준 형식으로 제공하도록 요구하는 것입니다.

행정 명령은 미국 연방 정부가 조달하고 운영하는 소프트웨어에만 적용되지만 SBOM 요구 사항과 같은 특정 양상이 전체 소프트웨어 개발 산업에 걸쳐 사실상의 표준이 될 것이라고 예상할 수 있는 이유가 있습니다. 오늘날 가장 정확하고 규정을 준수하는 SBOM을 생성할 준비를 갖추는 것은 소비자의 신뢰를 얻는 데 있어 중요한 단계입니다. 

 

타사 SBOM 가져오기

SBOM 내보내기에 대해 논의하기 전에 먼저 완전하고 정확한 SBOM에는 모든 애플리케이션 종속성이 포함된다는 점을 인식해야 합니다. 즉, 개발팀의 오픈소스 라이브러리뿐만 아니라 타사 및 사용자 지정 구성 요소도 포함되어야 합니다. 오픈소스가 최신 애플리케이션의 대다수를 구성하고 있지만, 많은 개발팀은 여전히 ​​라이브러리, SDK, 드라이버 등과 같은 공급업체가 제공하는 구성 요소에 크게 의존하고 있습니다. 완성된 애플리케이션과 함께 제공되는 SBOM에서 이러한 구성 요소가 고려되지 않으면 공급망 위험에 대한 완전한 가시성을 확보할 수 없습니다. 좋은 소식은 대부분의 공급업체가 이러한 구성 요소에 대해 SBOM을 제공할 것으로 합리적 기대를 할 수 있다는 것입니다. 그러나 귀하는 이 소프트웨어의 소비자로서 이러한 SBOM에서 제공되는 정보를 효과적으로 활용하고 해당 정보를 귀하가 생성하는 SBOM에 포함되도록 하기 위한 도구와 프로세스가 필요합니다. 

Black Duck SCA를 사용하면 팀에서 타사 SBOM을 가져올 수 있으므로 포함된 구성 요소를 관련 프로젝트에 추가하고 지속적으로 위험을 분석하며 애플리케이션 수명 주기의 일부로 생성된 모든 보고서 또는 SBOM에 추가할 수 있습니다. 또한 오픈 소스 KnowledgeBase에 아직 존재하지 않는 사용자 정의 구성 요소의 경우 Black Duck은 자동으로 관련 구성 요소를 생성하고 향후 스캔에서 이를 식별합니다. Black Duck을 통해 개발 및 보안팀은 공급망에 대한 완전한 가시성을 구축하여 효과적으로 위험을 관리하고 애플리케이션 구성을 소비자에게 전달할 수 있습니다.  

 

Black Duck을 사용하여 SBOM 내보내기

사용자가 Black Duck으로 프로젝트나 애플리케이션을 스캔하면 식별된 모든 소프트웨어 구성 요소를 표시하는 대시보드가 ​​제공됩니다. 이 목록에는 각 구성 요소의 라이선스 및 관계에 대한 정보가 포함되어 있습니다. 가장 간단한 용어로 SBOM은 소프트웨어의 구성 요소 목록이므로 이 대시보드는 이러한 목록을 생성하는 가장 직관적인 지점입니다. 사용자는 "Report" 탭으로 이동하여 SBOM 생성 옵션을 선택하고 원하는 형식을 선택하기만 하면 됩니다. 그러면 몇 초 안에 프로젝트에 대한 SBOM이 생성되고 다운로드할 준비가 됩니다.

아래 스크린샷은 다섯 번의 클릭만으로 샘플 애플리케이션에 대한 SBOM 생성 방법을 보여줍니다.

 



 

구성 요소 대시보드는 데모 애플리케이션인 Insecure Bank용입니다. 어떤 종속성이 식별되었는지, 해당 종속성이 애플리케이션에 어떻게 도입되었는지, 어떤 라이선스가 이와 연관되어 있는지에 대한 정보를 볼 수 있습니다. 문제가 있는 Log4j 버전도 발견한 것 같습니다.

 





 

생성된 보고서 또는 SBOM은 보고서 탭에 저장됩니다. 이는 단일 정보 소스를 제공하는 데 도움이 되며 시간이 지남에 따라 이러한 SBOM의 델타를 더 쉽게 추적할 수 있습니다.

 



 

SPDX 또는 CycloneDX를 선택하는지 여부에 관계없이 SBOM의 결과는 JSON 파일이 됩니다. 이는 표준과 기계 가독성을 유지하는 데 도움이 됩니다. 사용할 수 있는 JSON 뷰어는 셀 수 없이 많습니다. 다음은 친절하게 형식을 지정해 준 Firefox의 SBOM 결과 보기입니다. 이 스니펫에서는 문제가 있는 Log4J 구성 요소와 관련 라이선스와 같은 추가 정보를 볼 수 있습니다.

 

SBOM 생성 이후에는 무엇이 나오나요?

SBOM을 생성했거나 받은 경우 이를 사용하여 무엇을 할 수 있을까요? 이는 문제가 있는 Log4j 구성 요소에 대한 예제를 다시 살펴보면 대답할 수 있는 질문입니다. 비록 우리 대부분이 지난 12월에 공개된 Log4j 제로데이 취약점에 대해 들어봤지만, 아직 모르는 척 합시다. SBOM의 스크린샷을 보면 Apache Log4j 2.17.0이 있지만 관련 위험에 대한 정보는 표시되지 않습니다.

SBOM 생성 도구를 선택하고 소프트웨어 공급망 위험 관리 전략을 수립할 때 주요 고려 사항 중 하나는 해당 SBOM을 작동시키는 방법입니다. SBOM 자체는 가시성을 확보하고 위험을 완화하는 데 중요한 측면이지만 위험을 전달하지는 않습니다. VEX(Vulnerability Exploitability eXchange)와 같은 추가 정보의 채택이 증가함에도 불구하고 SBOM과 관련 위험 사이의 점을 실제로 연결하는 유일한 방법은 SCA 솔루션을 사용하는 것입니다.

 



 

최고의 SBOM 구축

귀하의 SBOM은 종속성을 식별하는 데 사용되는 방법, 관련 위험을 해결하는 데 사용되는 도구 및 이를 위해 활용되는 소스만큼만 신뢰할 수 있습니다. Black Duck이 어떻게 지속적으로 혁신하여 각 영역에서 선두를 달리고 있는지 확인하고 팀이 모든 소프트웨어 공급망 위험을 관리할 수 있도록 지원하려면 새로운 Supply Chain Edition 출시에 대한 블로그를 참조하세요.

- 이 블로그는 Patrick Carey에 의해 사실 확인되었습니다.

 

Black Duck 더 알아보기 CLICK!!!

 

원문 게시일: 2024.04.20

원문 기고자: Mike McGuire

출처: https://www.synopsys.com/blogs/software-security/building-sbom-with-black-duck.html

/about-us/inquiry/
https://www.youtube.com/@softflow2018
https://blog.naver.com/softflow_group
#