최근 국가정보원은 북한 해킹 조직이 소프트웨어 공급망을 통해 주요 국가기관과 첨단 기업의 기밀 및 핵심 자료를 탈취하려는 시도가 증가하고 있다고 경고했습니다.

소프트웨어 공급망이란?
소프트웨어 공급망(Software Supply Chain)이란 소프트웨어가 개발, 빌드, 배포, 유지보수되는 전체 과정에서 사용되는 코드, 도구, 프로세스, 인력, 인프라 등을 포함한 생태계를 의미합니다. 하드웨어 제조업에서의 공급망 개념을 소프트웨어 개발에 적용한 것으로, 오픈소스 라이브러리, 서드파티 API, 빌드 시스템, 패키지 관리자 등을 포함합니다.
소프트웨어 공급망의 주요 요소
- 코드 및 라이브러리
- 내부 개발 코드, 오픈소스 라이브러리, 서드파티 패키지
- 빌드 및 테스트 시스템
- CI/CD(Continuous Integration/Continuous Deployment) 파이프라인, 테스트 프레임워크
- 패키지 및 배포
- 컨테이너 이미지, 패키지 관리자(NPM, PyPI, Maven 등), 클라우드 배포 시스템
- 운영 및 유지보수
- 소프트웨어 업데이트, 패치 적용, 보안 모니터링
소프트웨어 공급망 관리(Supply Chain Management, SCM)의 중요성
1. 보안 위협 방지
- 공급망 공격(예: SolarWinds 해킹) 방어
- 악성 코드 포함 가능성 차단
2. 품질 및 안정성 확보
- 서드파티 코드 검증
- 지속적인 코드 테스트 및 배포 자동화
3. 라이선스 및 법적 문제 관리
- 오픈소스 라이선스 준수
- 라이선스 충돌 방지
소프트웨어 공급망 보안 강화 방법
- SBOM(Software Bill of Materials) 활용
- 소프트웨어 구성 요소 목록을 투명하게 관리
- 코드 서명 및 무결성 검증
- 코드 변경 사항 추적 및 인증
- 공급망 보안 프레임워크 도입
- SLSA(Supply Chain Levels for Software Artifacts), NIST 프레임워크 적용
- 지속적인 모니터링 및 취약점 분석
- 정기적인 보안 감사 및 자동화된 취약점 스캔
소프트웨어 공급망 관리는 현대 소프트웨어 개발에서 필수적인 요소이며, 보안 및 품질 관리를 위해 기업과 개발자는 이에 대한 체계적인 접근이 필요합니다.

국정원 경고: 소프트웨어 공급망을 북한이 해킹
이러한 해킹은 주로 다음과 같은 방법으로 이루어집니다:
- IT 용역업체 해킹을 통한 우회 침투: 북한 해커들은 보안이 취약한 IT 용역업체를 해킹하여, 이 업체들이 관리하는 국가기관이나 기업의 시스템에 우회적으로 침투합니다. 예를 들어, 지난해 10월에는 지방자치단체 전산망 유지관리 업체 직원의 이메일을 해킹하여 서버 접속 계정을 탈취한 후, 지자체 전산망 원격관리 서버에 무단 접속하여 행정자료를 탈취하려는 시도가 있었습니다.
- IT 솔루션 및 소프트웨어 취약점 악용: 내부 자료 통합 관리에 사용되는 IT 솔루션의 보안 취약점을 악용하여 악성 코드를 설치하고, 이를 통해 내부 자료를 탈취합니다. 최근에는 방산 협력업체의 전자결재 및 의사소통용 그룹웨어의 보안 허점을 이용해 악성 코드를 설치하고, 직원 이메일과 네트워크 구성도 등 내부 자료를 탈취하려는 시도가 있었습니다.
- 보안 관리 허점을 노린 해킹: 유추하기 쉬운 초기 패스워드 사용이나 부주의한 해킹 메일 열람 등 보안 관리의 허점을 이용하여 시스템에 침투합니다. 예를 들어, 지난 2월에는 모바일 신분 확인업체의 관리자 페이지에 쉽게 접근할 수 있는 점을 노려, 보안 검색 엔진 등을 활용해 해당 취약점을 분석하고 관리자 권한으로 무단 접속한 사례가 있었습니다.
이러한 공격을 예방하기 위해서는 IT 용역업체 직원들의 보안 교육 강화, 외부 접속 경로 차단, 소프트웨어 보안 패치 적용, 주기적인 취약점 점검, 강력한 패스워드 사용 등 보안 관리를 철저히 해야 합니다.