오늘날 금융, 국방, 의료 등 보안이 중요한 분야에서는 외부 네트워크와 물리적으로 분리된 에어갭(Air-gap) 환경을 운영합니다. 에어갭 환경에 소프트웨어를 반입하려면 보안 검증을 위해 SBOM(Software Bill of Materials, 소프트웨어 자재 명세서)을 제출해야 합니다. 최근 국내에서는 공공기관을 중심으로 SBOM 제출 요구가 점점 확대되고 있습니다.
SBOM은 소프트웨어에 포함된 모든 라이브러리, 버전, 라이선스 정보를 기록한 목록입니다. 문제는 SBOM을 수동으로 작성하는 과정이 비효율적이라는 점입니다. 이미지당 작업에 1-2시간 이상 걸리고, 소프트웨어 버전이 업데이트될 때마다 내용을 반복 수정해야 합니다.
그러나 Syft와 n8n으로 SBOM 생성을 자동화하면 이 과정을 크게 간소화할 수 있습니다. 작업 시간을 수 분 내로 단축하고, 인적 오류를 최소화하며, 컴플라이언스 요건을 신속하게 충족할 수 있습니다. 이 글에서는 에어갭 환경을 위한 SBOM 생성 자동화의 필요성과 구현 방법, 확장 아이디어를 살펴보겠습니다.
에어갭 환경을 위한 SBOM 생성 자동화의 필요성
먼저 에어갭 환경 맥락에서 SBOM 생성 자동화가 왜 필요한지, 그 필요성이 어떤 배경에서 비롯됐는지 알아보겠습니다.
수동 SBOM 작성의 비효율 해소
에어갭 환경은 외부 네트워크와 물리적으로 분리된 폐쇄망입니다. 이 환경에서는 소프트웨어를 반입한 뒤, 외부에서 라이브러리를 다운로드하거나 실시간으로 패치를 적용하기 어렵습니다. 따라서 소프트웨어 반입 전 단계에서 철저한 보안 검증이 필수이며, 이를 위해 SBOM을 제출해야 합니다.
그러나 SBOM을 수동으로 작성하는 과정은 번거롭습니다. 예를 들어, GitLab과 같은 복합 애플리케이션 이미지는 베이스 OS, 런타임(예: Ruby·Node.js), 수백 개의 오픈 소스 라이브러리로 구성됩니다. 이러한 구성 요소를 직접 추적해 SBOM을 작성하면 이미지당 작업에 1-2시간이 소요됩니다.
반면에 Syft와 같은 자동화 도구를 사용하면, 이미지 크기와 환경에 따라 수초-수 분 내에 SBOM을 생성할 수 있습니다. 이로써 작업 시간을 대폭 줄이고, 품질이 일관되며 재현성이 높은 SBOM을 자동으로 확보할 수 있습니다. 그 결과, 반입 검증 과정에서 필 수 정보 누락, 인적 오류 가능성을 최소화할 수 있습니다.
규제 대응 속도 향상
요즘 국내외에서는 SBOM 제출을 법적·정책적으로 요구하는 추세입니다. 미국은 2021년 행정명령 EO 14028 이후, 연방 조달 소프트웨어에 NIST SSDF(보안 개발 기준) 준수와 공급자 자체확인서 제출을 요구하고 있습니다. 또한 OMB M-22-18로 소프트웨어의 중요도에 따라 연방 기관이 SBOM 제출을 요구할 수 있는 근거를 명시하고 있습니다.
국내에서도 정부·공공기관·금융권을 중심으로 SBOM 관련 요구와 가이드라인이 확대되고 있습니다. 과학기술정보통신부, 한국인터넷진흥원, 국가정보원에서는 소프트웨어 공급망 보안 강화 차원에서 SBOM 작성·관리를 권고합니다. 금융권에서도 금융보안원을 중심으로 SBOM 관리 필요성을 강조하고 관련 가이드라인을 마련하고 있습니다.
컴플라이언스 담당자는 보안 감사·계약·사고 조사 시 SBOM을 요구할 수 있습니다. 그러나 SBOM을 수동으로 생성·정리해 제출하려면, 조직의 프로세스에 따라 수 시간에서 수일 걸릴 수 있습니다. 반면에 SBOM 생성을 자동화하고 중앙 저장·인덱싱 체계를 도입하면, 과거에 생성된 SBOM을 빠르게 조회·추출해 즉시 제출할 수 있습니다. 이는 감사·계약·사고 대응 시간을 크게 줄여줍니다.