사이버 공격과 방어의 실무
SBOM(소프트웨어 자재 명세서)을 만들어 관리하는 주된 목적으로 올바른 것은?
- A제품에 포함된 라이브러리 등의 구성 요소와 버전을 목록으로 만들어, 구성 요소의 취약점이 공표되었을 때 영향을 받는 제품을 바로 찾는다
- B소프트웨어의 소스 코드를 암호화해 두고, 제품을 구입한 사용자를 포함한 제3자가 프로그램의 내용을 읽지 못하도록 보호한다
- C제품을 만드는 데 사용하는 반도체나 전자 부품의 목록으로부터 부품 조달에 드는 비용과 납기를 계산하여 생산 계획을 세운다
정답과 해설 보기
정답: A. 제품에 포함된 라이브러리 등의 구성 요소와 버전을 목록으로 만들어, 구성 요소의 취약점이 공표되었을 때 영향을 받는 제품을 바로 찾는다
현재의 소프트웨어는 많은 오픈 소스 라이브러리나 타사의 구성 요소를 조합하여 만들어지며, 구성 요소가 다시 다른 구성 요소에 의존하는 경우도 많습니다. SBOM은 이러한 구성 요소의 이름, 버전, 공급자, 의존 관계 등을 기계가 읽을 수 있는 형식(SPDX나 CycloneDX 등)으로 정리한 목록입니다. 2021년 12월에 공표된 Log4j의 취약점(Log4Shell)처럼 널리 쓰이는 구성 요소에서 심각한 취약점이 발견되었을 때, SBOM이 있으면 어느 제품의 어느 버전이 영향을 받는지를 빠르게 조사할 수 있습니다. 미국에서는 2021년 5월의 대통령령으로 정부에 납품하는 소프트웨어에 대해 SBOM 제공을 요구하는 방침이 제시되었습니다.