[제138회 정보관리기술사 3교시 2번] 소프트웨어 공급망 보안 — SBOM·SCA·CI/CD 보안 강화

📌 원문 문제

최근 소프트웨어 공급망 공격이 증가하고 있다. 다음 내용을 설명하시오.
가. 소프트웨어 공급망 공격의 개념과 대표적 사례
나. SBOM(Software Bill of Materials)의 개념과 구성요소
다. SCA(Software Composition Analysis) 도구 활용 방안
라. CI/CD 파이프라인에서의 공급망 보안 강화 방안

출제 의도 분석

SolarWinds, Log4Shell, XZ Utils 사태 이후 소프트웨어 공급망 보안은 정보보안의 최우선 과제가 됐습니다. 미국 행정부 행정명령(EO 14028)에서도 SBOM 의무화를 명시했습니다. 개념 정의를 넘어 실제 CI/CD 파이프라인에 어떻게 적용하는지를 실무적으로 서술하는 것이 핵심입니다.

가. 소프트웨어 공급망 공격 개념과 사례

소프트웨어 공급망 공격(Software Supply Chain Attack)은 신뢰할 수 있는 소프트웨어 배포 경로(개발도구, 오픈소스 라이브러리, 업데이트 서버)를 침해하여 다수의 다운스트림 피해자에게 악성코드를 전파하는 공격입니다.

사례 공격 방식 피해
SolarWinds (2020) 빌드 시스템 침해, 정상 업데이트에 백도어 삽입 18,000개 기관 감염, 미국 정부기관 포함
Log4Shell (2021) 오픈소스 Log4j 취약점 악용, 원격 코드 실행 전 세계 수억 개 서버 영향
XZ Utils (2024) 2년간 신뢰 구축 후 오픈소스 압축 라이브러리에 백도어 삽입 SSH 인증 우회 가능성
npm/PyPI 타이포스쿼팅 인기 패키지와 유사한 이름의 악성 패키지 배포 개발자 무심코 설치 유도

나. SBOM 개념과 구성요소

SBOM(소프트웨어 자재 명세서)는 소프트웨어를 구성하는 모든 컴포넌트(오픈소스·상용·자체 개발), 라이브러리, 의존성, 라이선스 정보를 체계적으로 기록한 목록입니다. 식품의 ‘성분 표시’처럼 소프트웨어의 구성 성분을 투명하게 공개합니다.

구성요소 내용 예시
컴포넌트 이름 라이브러리·패키지 명칭 Log4j-core
버전 정보 정확한 버전 번호 2.14.1
공급자 정보 개발사·유지보수 주체 Apache Software Foundation
라이선스 오픈소스 라이선스 종류 Apache 2.0
의존성 관계 컴포넌트 간 의존 구조 A→B→C 트리
체크섬/해시 무결성 검증 값 SHA-256 해시
알려진 취약점 연관 CVE 정보 CVE-2021-44228

표준 형식: SPDX(Linux Foundation), CycloneDX(OWASP), SWID(ISO/IEC 19770-2)

다. SCA 도구 활용 방안

SCA(소프트웨어 구성 분석)는 프로젝트에 포함된 오픈소스 컴포넌트를 자동으로 탐지하고 알려진 취약점(CVE)·라이선스 위반을 검출하는 도구입니다.

  • OWASP Dependency-Check: 무료, Maven·Gradle·npm 지원, NVD 기반 CVE 검색
  • Snyk: 클라우드 기반, 실시간 취약점 DB, PR 자동 수정 제안
  • Black Duck: 엔터프라이즈급, 바이너리 분석, 라이선스 컴플라이언스 강화
  • Trivy: 오픈소스, 컨테이너 이미지·파일시스템·IaC 스캔 지원

라. CI/CD 파이프라인 공급망 보안 강화

코드 커밋Secret 스캔 빌드SBOM 생성 SCA 스캔CVE 차단 이미지 서명(Cosign) 정책 검증(OPA/Kyverno) 배포런타임 모니터링

  • Shift-Left Security: 개발 초기부터 보안 검사 적용, 수정 비용 최소화
  • 코드 서명(Code Signing): 아티팩트·컨테이너 이미지에 디지털 서명 (Sigstore/Cosign)
  • 빌드 환경 격리: 에페머럴(Ephemeral) 빌드 환경으로 빌드 간 오염 방지
  • SLSA(Supply-chain Levels for Software Artifacts): Google 제안 공급망 무결성 프레임워크, Level 1~4 단계별 적용
  • Private Registry: 승인된 패키지만 내부 레지스트리에서 제공, 외부 직접 다운로드 차단

Leave a Comment