NIST SSDF(Secure Software Developement Framework)는 안전한 소프트웨어 개발을 위한 지침으로, 공급망 보안 영역을 아래 네 가지로 정의하고 있다.
프로그램을 수정 후 개발 및 검증 시 사용됐던 테스트 케이스로 다시 실행하여 오류의 재발 여부 확인
회귀테스트(Regression Testing)는 기존에 개발 및 검증에 사용된 테스트 케이스를 소프트웨어 변경 후 다시 실행하여 기존 기능이 정상적으로 작동하는지 확인하는 테스트이다. 새로운 결함이 발생했는지, 기존 결함이 해결되었는지 등을 모두 점검한다.
구조적 취약성이나 적절한 안전 장치의 부재와 같은 잠재적 위협을 식별하고, 이를 나열하여 대응책의 우선순위를 지정하는 과정
Threat modeling(위협 모델링)은 시스템의 구조적 취약성, 위협, 위험요소를 식별하여 체계적인 목록을 작성하고, 이에 대한 위험도 평가 및 우선순위 지정, 대응책 도출까지 포함하는 보안 활동이다.
STRIDE, PASTA, LINDDUN 등 다양한 방법론이 있으며, 보안 아키텍처 설계 시 핵심 과정이다.
Microsoft에서 개발한 위협 모델링 프레임워크이다.
아래의 6가지 주요 공격 유형을 정의해 위협을 분류하고 분석한다.
Process for Attack Simulation and Threat Analysis의 약자이다.
7단계의 프로세스 기반 위협 모델링으로, 보안 위험도와 비즈니스 영향도를 함께 고려한다.
1단계 - 목표 정의
2단계 - 기술 범위와 시스템 분석
3단계 - 애플리케이션(시스템) 분해
4단계 - 위협 분석
5단계 - 취약점 및 약점 분석
6단계 - 공격 시나리오 모델링
7단계 - 위험 및 영향 분석
Privacy 중심 위협 모델링 프레임워크로 벨기에의 대학에서 개발했다. LINDDUN은 시스템의 데이터 흐름(DFD)을 분석해, 각 과정에서 발생할 수 있는 프라이버시 위협을 진단하고 관리, 대응책을 수립한다.
개인정보보호 관련 위협을 7가지로 분류했다.
SBOM은 소프트웨어 구성요소의 이름, 버전, 공급자, 작성자, 작성 시간 등 최소한의 필수 정보를 포함해야 한다. SBOM의 주요 목적은 소프트웨어에 포함된 컴포넌트와 그 상세 정보의 투명한 공개성에 있다.
SBOM이 중요한 이유는 소프트웨어 투명성을 강화해준다는 점이 있다. 내장된 모든 부품을 식별해 보안/법적 리스크를 줄일 수 있다. 또한 각 구성요소를 공개된 취약점인 CVE 등과 즉시 대조하여 신속하게 보완할 수 있다. 또한 오픈소스 및 외부 코드의 도입/유통 과정을 추적함으로써 위험도를 관리할 수 있다는 장점이 존재한다.
예를 들어, 신규 CVE가 발표된다면 SBOM을 통해 자사 소프트웨어에 해당 컴포넌트가 포함되어 있는지 신속히 확인 후 조치가 가능하다. 또한 인수 합병, 공급망 점검 등의 과정에서도 필수 자료로 활용될 수 있다.