DOI QR코드

DOI QR Code

A Study on the Strengthening of Software Supply Chain Security through Analysis of Research Cases Using Blockchain

블록체인 활용 연구사례 분석을 통한 소프트웨어 공급망 보안 강화 방안 연구

  • 김정우 (명지대학교 보안경영공학과) ;
  • 국경완 (국방통합데이터센터) ;
  • 류연승 (명지대학교 보안경영공학과)
  • Received : 2024.11.12
  • Accepted : 2024.11.19
  • Published : 2024.12.31

Abstract

With the Fourth Industrial Revolution, blockchain technology developed remarkably, and was quickly popularized through a blockchain development framework supported by large-scale consortiums. Recently, blockchain application cases in various fields are also appearing in Korea. Meanwhile, the importance of software supply chain security is emerging as software supply chain attacks that are difficult to detect in advance such as the Log4j incident and the SolarWinds incident and cause widespread damage in one attack are carried out. Although SBOM(Software Bill of Materials)-based supply chain security systems are being established at home and abroad, we have found that they need to be supplemented in terms of SBOM distribution. In this paper, we intend to design a secure SBOM distribution system architecture based on blockchain utilization research cases.

4차 산업혁명과 더불어 블록체인(BlockChain) 기술이 눈부시게 발전했으며, 대규모 컨소시엄이 지원하는 블록체인 개발 프레임워크를 통해 빠르게 대중화되었다. 최근에는 국내에서도 다양한 분야의 블록체인 응용사례가 등장하고 있다. 한편 Log4j 사건, 솔라윈즈 사태 등 사전탐지가 어렵고 한 번의 공격으로 광범위한 피해를 일으키는 소프트웨어 공급망 공격이 감행되면서 소프트웨어 공급망 보안에 대한 중요성이 대두되고 있다. 국내·외에서 SBOM(Software Bill of Materials) 기반의 공급망 보안체계를 수립하고 있으나, SBOM 유통 측면에서 보완이 필요한 점을 발견했다. 본 논문에서 블록체인 활용 연구사례를 바탕으로 블록체인 기반의 안전한 SBOM 유통체계 아키텍처를 설계하고자 한다.

Keywords

1. 서론

블록체인(BlockChain)은 P2P 기반의 공유원장 기술이다. 공인된 중개자 없이도 무결성 및 신뢰성을 보장하는 기술로서,[1] 최근 스마트 컨트랙트(Smart Contract) 개념을 적용한 프라이빗 블록체인(Private BlockChain) 기술 및 활용연구가 진행중이며, 그 중 하이퍼레저 패브릭 블록체인에 대한 활용연구도 국내·외에서 활발히 이루어지고 있다. 하이퍼레저 패브릭(Hyperledger Fabric)은 채널(Channel)과 비밀데이터(Private data)를 통해 블록체인의 큰 단점인 기밀성을 보장할 수 있으며, 의료, 공공 등 민감정보를 다루는 영역은 물론 물류 공급망 영역에서도 기대와 연구논문이 등장하고 있다.

최근 소프트웨어 공급망 보안에 대한 중요성이 대두되고 있다. 소프트웨어 공급망 공격은 광범위한 피해를 발생시키며, 구성요소를 파악하기 어려워 취약점 관리가 어렵다. 미국, 일본 등 주요국에서는 SBOM(Software Bill of Materials) 표준화와 실증사업을 통해 SBOM 기반의 공급망 보안체계를 갖추고 있다. 2024년 국내에서도 소프트웨어 공급망 보안 가이드라인을 발표하고 공급망 보안강화를 위한 활동을 추진하고 있다. 그러나 안전한 SBOM 유통에 대한 구체적인 방안은 제시되어 있지 않다.

본 논문에서는 하이퍼레저 패브릭 블록체인을 활용한 공급망 보안 강화 방안에 관해 연구한다. 2장에서는 하이퍼레저 패브릭의 구조와 특징, 소프트웨어 공급망 보안 동향에 대해 알아본다. 3장에서는 블록체인 활용 연구사례를 바탕으로 각 산업별 블록체인 응용 방안 및 아키텍처를 분석하고 4장에서 블록체인 기반 SBOM 유통체계의 아키텍처를 설계한다. 5장에서는 본 논문의 결론을 맺는다.

2. 이론적 배경

2.1 하이퍼레저 패브릭 블록체인

하이퍼레저 패브릭(이하 패브릭)은 리눅스 재단의 오픈소스 프로젝트로 기업단위 애플리케이션 및 산업용 솔루션 개발을 목적으로 만들어진 프라이빗 블록체인 프레임워크이다.[2]

2.1.1 하이퍼레저 패브릭 구조

패브릭의 주요 구성요소는 <표 1>과 같다.

<표 1> 패브릭의 주요 구성요소[3]

SOBTCQ_2024_v24n5_55_2_t0001.png 이미지

MSP(Membership Service Provider)는 블록체인 네트워크 구성요소의 권한, 인증을 관리하는 서비스이다. MSP를 통해 허가된 노드만 블록체인 네트워크에 참여할 수 있다.

피어(Peer)는 체인코드를 통해 트랜잭션을 처리 및 보증하고, 오더러(Orderer)가 생성한 블록을 받아 검증한 후 원장을 갱신한다.

오더러(Orderer)는 피어가 보증한 트랜잭션을 수집 및 정렬하여 블록을 생성하고 피어에게 전달한다.

채널(Channel)은 개별통신을 위한 서브넷이다. 피어와 오더러는 타 채널에 있는 노드에게 트랜잭션을 전달하거나 원장을 공유할 수 없다. 원장은 채널별로 독립적으로 존재하고, 해당 채널에 구성원만 해당 원장에 접근할 수 있다.

원장(Ledger)은 월드 스테이트(World State)와 블록체인(Blockchain)으로 구분한다. 월드 스테이트는 원장의 최신 상태이며, 블록체인은 최초부터 현재까지의 트랜잭션 변경 내역이다.

체인코드(Chaincode)는 특정 조건에서 트랜잭션을 처리하는 논리코드로서 블록체인 네트워크 구동시 정의되고 배포된다.

2.1.2 하이퍼레저 패브릭 특징

패브릭은 (그림 1)과 같이 모듈화 아키텍처로 디자인되어 LDAP이나 OpenID 연결과 같은 신원관리, 합의와 같은 구성요소를 플랫폼 내에서 플러그인하여 사용할 수 있는 장점이 있다. 따라서 개발자가 원하는 형태의 블록체인 네트워크로 커스터마이징할 수 있다.

SOBTCQ_2024_v24n5_55_3_f0001.png 이미지

(그림 1) 하이퍼레저 패브릭 모듈화 아키텍처

기존 블록체인과 차별화되는 점은 채널과 비밀데이터 기능을 통해 기밀성을 제공할 수 있는 점이다. 채널은 네트워크를 서브 네트워크로 분할하고 트랜잭션 공유범위를 한정한다. 비밀데이터는 채널 내에서 공유되는 트랜잭션 중에, 사전에 정의된 데이터의 일부 항목을 특정피어에 한정해서 공유할 수 있도록 하는 기능이다. 비밀데이터는 블록체인과 월드 스테이트에도 내용을 남기지 않고 해시값만 기록하며, 삭제가 가능한 특징이 있다. 단, 무결성 및 신뢰성 유지를 위해 비밀데이터의 존재유무 및 내용은 검증할 수 있다.

SOBTCQ_2024_v24n5_55_3_f0002.png 이미지

(그림 2) 채널 사용의 예[4]

㉮ 동일 네트워크상 서로 다른 A, B, C, D 조직이 있으며, 3개의 채널이 존재한다.

㉯ 각 피어는 본인이 속한 채널의 블록체인과 월드 스테이트를 갖는다.

㉰ 동일 네트워크에 있지만 A은행의 피어는 채널1에만 속해있으며, 타 채널과 트랜잭션을 공유할 수 없다.

㉱ 반면 B기업의 피어는 모든 채널에 속해있어 해당 채널들과 트랜잭션을 공유할 수 있다.

㉲ C은행 2개의 피어는 같은 조직에 존재하지만 각각 다른 채널에 속해있어 서로 트랜잭션을 공유할 수 없다.

2.2 소프트웨어 공급망 보안

2.2.1 소프트웨어 공급망 공격

소프트웨어 공급망은 소프트웨어 개발, 시험, 배포, 운영 全과정을 말하며, 소프트웨어 공급망 공격은 공급망에서 구성요소의 일부가 변경되어 최종제품이 취약해지거나 악의적인 소프트웨어가 포함되는 공격을 의미한다. 대표적인 공급망 공격유형은 <표 2>와 같다.

<표 2> 주요 소프트웨어 공급망 공격 유형[5]

SOBTCQ_2024_v24n5_55_3_t0001.png 이미지

2.2.2 소프트웨어 공급망 보안정책 동향

최근 소프트웨어 개발과정에서 오픈소스 소프트웨어의 사용비중이 증가함에 따라 소프트웨어에 포함된 악성코드 및 보안취약점 관리의 중요성이 커지고 있다. 2021년 이슈가 된 Log4j사례와 같이 소프트웨어에 포함된 보안취약점은 사전탐지가 어렵고 광범위한 피해를 발생시킬 수 있으며, 구성요소를 파악하기 어려워 취약점 조치 및 관리가 쉽지 않다. Log4j 사건 이후 1년이 지난 2022년에도 25%는 보안에 취약한 버전을 사용하고 있었다.[6]

소프트웨어 공급망 보안 강화를 위해 주요국에서는 소프트웨어 공급망 보안정책 및 제도를 제정하고 있으며, 미국은 SBOM(Software Bill of Materials) 표준화 및 FDA 의료기기 인·허가시, SBOM 제출을 의무화하였으며 일본은 SBOM 실증사업(PoC)을 통해 산업 全분야로 확산하려는 움직임을 보이고 있다. 국내에서도 SBOM 기반의 소프트웨어 공급망 보안 강화를 추진하고 있다.

2.2.3 SBOM 기반 소프트웨어 공급망 보안

SBOM은 소프트웨어의 구성요소, 종속관계, 보안 취약점을 포함하는 상세내역서이다. 소프트웨어 수요자와 공급자는 SBOM을 통해서 구성요소 수준에서 취약점 추적 및 식별, 라이선스 준수여부를 확인할 수 있다. 또한 소프트웨어 개발 생애주기(SDLC)에 SBOM을 도입하여 소프트웨어 공급망의 투명성을 제고하고 SBOM과 CVE의 정보를 대조하여 취약점 식별 자동화가 가능하다.[7]

국가정보원은 소프트웨어 공급망 보안 가이드라인을 통해 (그림 3)과 같이 SBOM 기반의 소프트웨어 위험관리 방안을 제시한다.

SOBTCQ_2024_v24n5_55_4_f0001.png 이미지

(그림 3) 소프트웨어 위험관리 구성도[5]

그러나 소프트웨어 위험관리에 대한 전체적인 구성도만 제시할 뿐 [개발사]-[공급사]-[운영사]간 안전한 SBOM 유통에 관한 구체적인 방안이 제시되어 있지 않다.

2.2.4 블록체인 기반 SBOM 유통체계의 가능성

하이퍼레저 패브릭 블록체인의 특징인 채널과 비밀 데이터 기능을 통해 기밀성을 유지한 채 해당 참여자에게만 무결성을 보장한 SBOM을 전달할 수 있다. 예를 들어 공급사 A사, B사, C사와 고객사 D사, E사, F사가 있다고 가정한다면, A사는 비밀데이터 기능을 통해 A사의 제품을 구매한 D사와 E사에게만 트랜잭션 출처(A사)가 확실한 SBOM을 제공할 수 있다. 고객사 D사와 E사는 신뢰할 수 있는 SBOM을 통해 구매한 소프트웨어의 보안취약점을 파악하고 조치할 수 있고, 공급사 A사는 B사에게 제품의 구성요소가 노출되지 않으므로 기업의 지식재산권 보호와 취약점 유출을 방지할 수 있다.

3. 블록체인 활용 연구사례 분석

최근 국내·외에서 블록체인 활용 관련 활발한 연구가 진행되고 있고 이러한 연구는 의료, 공공 등 다양한 분야에 영향을 미치고 있다. 본 장에서는 블록체인 기반 SBOM 유통체계의 가능성을 시스템으로 설계 및 구현하기 위해 블록체인을 적용한 다양한 활용 연구사례를 알아본다.

3.1 의료분야

응급상황에 신속하고 정확한 의료서비스를 제공하기 위해서는 환자의 의료정보가 필수적이다. 그러나 의료정보는 각각의 의료기관에 산재되어 있어 활용이 어렵고, 민감한 개인정보로서 관련제도, 의료기관간 이해관계 등으로 인해 통합관리가 제한된다. 의료당국은 이런 문제점을 인식하고, 국가R&D를 통해 의료서비스 개선을 추진하고 있다. 블록체인 기술을 활용하여 병원이 보유한 의료정보를 통합하는 것이 아닌 분산원장 형태로 관리하고, 정보공유가 필요한 상황에서 신속하게 의료기관이 보유한 정보를 환자의 동의 하에 활용할 수 있는 플랫폼 연구가 진행되고 있다.

3.1.1 서비스 모델 구조

환자는 개인식별키를 통해 블록체인 네트워크에 접근한다. 첫 접근시 동의정보를 입력하고 개인 의료정보와 매칭하여 블록을 생성한다. 이후 의료정보를 요청할 경우, On-chain와 Off-chain을 서로 검증하여 블록체인을 이용하지 않고 다른 경로로 의료정보를 요청하면 제공을 거부한다. 이를 통해 악의적인 사용자가 유출된 개인정보로 의료정보에 접근하는 것을 방지할 수 있다.

또한 환자는 블록체인 네트워크에 속해있는 기관(병원, 응급기관, 약국 등)에 내려받기 또는 보여주기를 허용하여 의료정보를 제공할 수 있다. 이 때 전송된 데이터의 성공여부 및 의료정보 해시값을 기록하여 데이터 위변조를 방지한다.

SOBTCQ_2024_v24n5_55_5_f0001.png 이미지

(그림 4) 개인건강기록 관리 서비스 구조[8]

3.1.2 CIA 요소별 아키텍처 설계방법

기밀성: 영상정보를 포함한 의료데이터는 그 양이 방대하고 복잡하며 개인의료정보는 민감정보에 속하므로 기밀성이 필요하다. 이를 해결하기 위해 On-chain와 Off-chain 데이터로 구분하여 의료정보의 기밀성을 보장한다. Off-chain데이터(의료정보)를 On-chain 데이터(개인 동의정보 및 의료정보 사용기록)에서 검증한다. 만약 On-chain데이터가 없을 경우, Off-chain 데이터를 전송받을 수 없도록 설계하였다.[8]

무결성: 기존 시스템은 보유기관에서 의료정보를 수정·변조 가능한 보안맹점이 있으나, 블록체인을 통해 의료DB에 접근하도록 함으로써 개인식별키 없이 환자 외의 타인이 데이터에 접근·수정할 수 없도록 설계하였다. 또한 의료정보 전송시. 해시값을 통해 데이터 위변조를 검증하여 무결성을 보장한다.

가용성: 블록체인은 블록이 쌓일수록 블록생성시간이 느려진다. 해당 논문에서는 연간 병원의 환자 검진수(연간 블록생성 수) 기준으로 TPS를 측정하여 적절히 처리가능함을 보여주었다. 또한 블록체인의 데이터 크기는 성능에 영향을 줄 수 있으므로, 연간 환자 검진수를 기준으로 데이터 크기를 산출 후 이더리움의 연간 블록데이터 평균크기와 비교를 통해 가용성을 검증하였다.

3.2 공공분야

이미 공공기관의 안전한 소프트웨어 자산 관리를 위한 블록체인과 SBOM 기반의 공급망 보증 시스템에 대한 연구가 진행되었다. 소프트웨어 생산·유통 과정을 투명하게 파악할 수 있는 탈중앙화 방식의 시스템을 설계하였으며, 외부 소프트웨어 공급망 무결성 보장과 연계한 사내 각 단말기에 설치된 소프트웨어 취약점 식별에 초점이 맞추어져 있다. 본 연구에서는 외부 소프트웨어 공급망에 대해서만 알아보겠다.

3.2.1 서비스 모델 구조

(그림 5)와 같이 공급업체, SW 공급 보증시스템, 도입기관, NSR 4개의 주체가 있다. 공급업체는 소프트웨어 및 정보를 보증시스템에 등록하고 소프트웨어 정보 블록번호를 발행받는다.(소프트웨어 정보블록). 이와 더불어 NSR에 보안적합성 검증요청하여 검증결과를 보증시스템에 등록한다.(보안적합성 정보 블록) 마지막으로 공급기관과 도입기관 등에 관한 정보가 담긴 공급내역을 보증시스템에 등록한다.(공급내역 블록) 위 3가지 블록을 생성하면 공급보증서를 발행할 수 있다. 공급보증서를 도입기관에 제출함으로써 신뢰할 수 있는 소프트웨어 공급망 시스템을 구현하였다. 각 블록의 상호연관 구조도는 (그림 6)과 같다.

SOBTCQ_2024_v24n5_55_5_f0002.png 이미지

(그림 5) 소프트웨어 공급망 보증시스템 운영절차[9]

SOBTCQ_2024_v24n5_55_6_f0001.png 이미지

(그림 6) 블록의 상호 연관 구조도[9]

3.2.2 CIA 요소별 아키텍처 설계방법

기밀성: 해당 아키텍처는 SBOM의 기밀성을 보장하지 않는다. 다만, 프라이빗 블록체인을 운영하여 인증되지 않은 사용자의 데이터 접근을 차단하고 체인 코드를 통해 인증된 사용자의 무분별한 데이터 접근을 방지한다.

무결성: 유통흐름(개발사→공급사→공공기관)에 따라 연관블록을 생성함으로써 소프트웨어 생산·유통과정의 무결성을 보장한다.

가용성: 해당 연구는 알고리즘 실험을 통해 가용성을 검증했다. 솔라윈즈와 같이 실제 소프트웨어 공급망 공격 사례 11가지를 적용하여 10가지 사례를 대응할 수 있는 결과를 얻었다. 또한 NIST SP 800-53 Revision 5에 추가된 SA-12 패밀리군의 공급망 통제 항목을 적용하여 12개 中 10개의 항목을 만족하였다.

4. 블록체인 기반 SBOM 유통체계 설계

정부 및 기업들은 SBOM 도입을 통해 소프트웨어 투명성을 확보할 수 있다고 전망하고 있다. 그러나 무분별한 SBOM 공유·활용은 기업의 지식재산권, 취약점 유출·악용 등의 위험을 초래할 수 있다. 이에 SBOM의 기밀성을 보장하면서 동시에 SBOM을 안전하게 공유하는 블록체인 기반의 SBOM 유통시스템을 설계하고자 한다.

4.1 서비스 모델 구조

(그림 7)과 같이 블록체인 기반 소프트웨어 공급망 참여자는 개발사, 공급사, 고객사이다. ① 개발사는 블록체인에 공급자, 피공급자, SBOM 해시값 등을 포함한 소프트웨어 부품 유통기록 블록을 생성한다. ② 동시에 SBOM을 비밀데이터(Private data) 기능을 통해 공급사에게만 전달한다. ③ 공급사는 최종 소프트웨어 제품에 대한 유통기록 블록을 생성하고 비밀데이터로 고객사에게 SBOM을 제공한다. 이를 통해 SBOM 유통의 투명성과 추적성을 유지하면서 SBOM의 기밀성을 보장할 수 있다.

SOBTCQ_2024_v24n5_55_6_f0002.png 이미지

(그림 7) 블록체인 기반 SBOM 유통체계 구조

4.2 CIA 요소별 아키텍처 설계방법

기밀성: 하이퍼레저 패브릭 블록체인의 비밀데이터 기능을 통해 SBOM의 기밀성을 보장한다. SBOM을 분산원장이 아닌 개인원장에 저장함으로써 특정대상에게만 공유하며, 블록체인에 데이터가 노출되지 않는다.

무결성: 비밀데이터로 제공한 SBOM의 해시값을 블록체인에 저장하여 SBOM의 존재와 무결성을 보장한다. 또한 유통과정에서의 SBOM 훼손·위변조를 방지하기 위해 제품의 SBOM 해시값을 포함한 SBOM 유통기록을 블록체인에 저장하고, 비밀데이터로 제공받은 SBOM 정보의 컴포넌트별 SBOM 해시값을 비교·검증한다.

가용성: 공공부문 연간 소프트웨어 구매 통계를 기준으로 TPS 측정 및 SBOM 유통기록 데이터와 비밀 데이터 해시값 크기를 산출 후 이더리움 연간 블록데이터 평균크기와 비교하여 가용성을 검증한다.

5. 결론

국내·외 동향을 살펴보니 SBOM 기반의 소프트웨어 공급망 보안체계를 통해 소프트웨어 공급망 공격을 대응하는 추세이다. 그러나 SBOM의 무분별한 공유·활용은 또 다른 위험을 야기한다. 이에 따라 SBOM 유통·관리의 중요성이 대두될 것이다. 2장에서 하이퍼레저 패브릭 블록체인을 활용한 안전한 SBOM 유통체계의 가능성을 확인하였고 3장에서 다양한 산업분야의 블록체인 응용 연구 사례를 정보보호의 CIA 요소별로 분석하여 아키텍처 설계기법을 도출하였다. 또한, 이미 블록체인 기반의 소프트웨어 공급망 보증시스템에 대한 연구가 진행되었으며, 블록체인을 통해 소프트웨어 공급망의 무결성과 투명성을 보장할 수 있음을 확인하였다. 다만, 기밀성을 보장하지 못하는 단점을 하이퍼레저 패브릭 블록체인의 특징으로 보완하는 SBOM 유통체계 설계방안에 대해 고찰하였다. 향후 본 연구를 바탕으로 블록체인 기반 안전한 SBOM 유통체계를 구현할 것이다.

References

  1. Nakamoto, Satoshi, "Bitcoin: A Peer-to-Peer Electronic Cash System", https://ssrn.com/abstract=3440802, 2008.
  2. IBM, "What is hyperledger fabric?", https://www.ibm.com/topics/hyperledger, 2021.
  3. 조경선, "하이퍼레저 패브릭과 신뢰 메커니즘을 통합한 WSN 내부 공격자 선제적 대응 방안 연구", 석사학위논문, 국방대학교, 2020.
  4. 시미즈 토모노리 외 10인, "하이퍼레저 패브릭 철저 입문", 위키북스, 2019.
  5. 과기정통부, 국가정보원, 디지털플랫폼정부위원회, "SW 공급망보안 가이드라인 1.0", 2024.
  6. Wired, "A Year Later, That Brutal Log4j Vulnerability Is Still Lurking", https://www.wired.com/story/log4j-log4shell-one-year-later/, 2022.
  7. 이글루코퍼레이션, "SBOM을 이용한 공급망보안", https://www.igloo.co.kr/security-information/sbom%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EA%B3%B5%EA%B8%89%EB%A7%9D-%EB%B3%B4%EC%95%88/, 2023.
  8. ㈜브이티더블유, 김형균. "블록체인 기반 채널형개인건강기록 플랫폼 연구", 국가R&D연구보고서, 2021.
  9. 김광준. "블록체인 기반 소프트웨어 공급망 보증시스템", 박사학위논문, 한남대학교, 2023.