보안 / 오픈소스

미 정부가 만든 ‘개발자가 알아야 할 SW 공급망 보호 가이드' 핵심 살펴보기

Chris Hughes | CSO 2022.09.19



오픈소스 소프트웨어(OSS)에 대해서 가이드는 내부 개발팀이 사용할 수 있는 OSS 구성요소를 다운로드, 스캔, 순환 검사하기 위해 전용 시스템을 사용할 것을 권장한다. NIST의 미국 사이버 보안 개선 행정 명령 가이드에서 이미 추천한 이 개념은 지속적 패키징(continuous packaging)이라고도 부른다. 

가이드에서 강조한 또 다른 대책은 안전한 개발 빌드 구성과 안전한 써드 파티 소프트웨어 툴체인 및 라이브러리를 사용한 개발자 환경 보안이다. 개발 시스템은 인터넷 액세스 없이, 사전에 승인된 툴과 소프트웨어만 설치된 상태로 엄격히 개발 목적으로만 사용되어야 한다. 가이드는 NIST의 국가 취약점 데이터베이스(NVD)를 기준으로 CVE를 위한 써드 파티 모듈을 검사할 것을 권장한다. 툴과 자동화는 이 프로세스를 원활하게 진행하는 데 도움이 될 수 있으며, 보안 종속성 분석기 및 이와 비슷한, 취약점 파악을 위한 툴을 사용하여 통합 개발 환경(IDE)의 일부로도 구현이 가능하다.

개발자 네트워크, 엔터프라이즈 네트워크 및 내부 빌드 환경을 포함한 빌드 환경을 강화하는 것도 중요하다. 이렇게 하면 인터넷과 외부 악성 행위자로부터 유입되는 위협을 완화하고 제품을 침해하기 위한 악성 활동이 발생하지 않았음을 확인하는 무결성 및 검증 수단을 구현할 수 있다.
 

ⓒ 미국 국방부

소프트웨어 구성요소는 조직 요구사항을 충족해야 한다. 따라서 SPDX 또는 사이클론DX(CycloneDX) SBOM 형식 같은 방법을 통해 검증된 신뢰할 수 있고 알려진 공급자, 그리고 정립된 취약점 보고 방법을 구현하고 취약점에 신속하게 대응하는 공급자로부터 받아야 한다.

소프트웨어 공급망 보호 가이드는 빌드 환경을 강화하는 데 그치지 않고 밀폐형 재생 가능 빌드를 사용할 것도 권장한다. 이는 완전히 선언된 빌드 단계, 변경 불가한 참조, 네트워크 액세스 없음, 그리고 타임스탬프 등에 대한 메타데이터 변화에 무관한 동일한 출력 및 아티팩트를 의미한다.

소프트웨어는 최종 구성에 대한 SBOM을 포함해 안전하게 고객에 제공되어야 한다. 그런 과정 속에 고객은 패키지 검증의 일부로 바이너리 분석 출력을 사용해 의도된 소프트웨어 구성요소만 포함돼 있는지 확인할 수 있다. 소프트웨어 패키지와 업데이트의 침해에 대처하기 위해 제품과 구성요소 모두 제품 배포, 구성요소 및 업그레이드에 해시와 디지털 서명을 사용할 수 있다. 또한 기업은 배포 시스템 자체의 침해를 완화하기 위한 조치도 취해야 한다. 여기에는 리포지토리 및 패키지 관리자에 보안 수단을 적용하는 것과 안전한 전송 계층 메커니즘을 사용하는 것 등이 포함된다.
 

소프트웨어 공급망 보호를 위한 기타 자료

가이드에는 SSDF에 기술된 특정 관행에 대한 다양한 개발자, 공급자, 고객 시나리오 간의 교차점을 제시한다. 또한 공급자, 써드 파티 공급자 및 최종 고객 간에 존재하는 종속성과 아티팩트 간의 매핑도 제공한다. SLSA 프레임워크 매핑은 가이드의 특정 권장사항이 L1부터 L4에 이르는 다양한 SLSA 수준에 어떻게 매핑되는지를 보여준다. 마지막으로, SDLC 전반에 사용되는 포괄적인 아티팩트 및 체크리스트 목록과 사이버 행정 명령, DoD 및 NIST 문서와 같은 유익한 참조 자료도 있고 OWASP와 같은 업계 단체도 있다.

NSA의 이번 가이드는 매우 중요한 자료이며, 소프트웨어 생산자 및 소비자 모두를 위한 소프트웨어 공급망 운영 계획안을 구축하는 곳에서는 특히 유용하게 활용할 것이다. 향후 나올 소프트웨어 공급자와 소비자와 관련된 가이드에도 관심을 기울여야 한다.
editor@itworld.co.kr
 
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.