최신 프레임워크 및 소프트웨어 개발 접근 방식은 소프트웨어 배포의 속도와 안정성은 물론 소프트웨어 이해관계자 간 공유 소유권에 중점을 둡니다.
보안을 개발하는 DevOps 권장사항 외에도 다른 많은 DevOps 권장사항은 보다 안전한 소프트웨어를 배포하는 데 기여합니다. 더 큰 이해관계자 공동작업, 작업 가시성, 재현 가능한 빌드, 자동 테스트, 점진적 변경 등이 소프트웨어 보안을 지원할 수 있습니다. 실제로 Accelerate State of DevOps Report 2022에 따르면 신뢰도가 높은 문화는 소프트웨어 공급망을 강화하기 위한 권장사항을 채택할 가능성이 높으며 CI/CD를 사용하면 보안 권장사항을 구현하는 데 도움이 됩니다.
그러나 최신 개발 프레임워크는 조직이 소프트웨어에 대한 위협을 이해하고 위협을 감지 및 대응할 수 있는 능력을 평가하며 완화를 구현하는 데 도움이 되는 지침이 없습니다. 또한 특히 조직 내 코드 및 프로세스에 집중하고 애플리케이션 무결성에 영향을 줄 수 있는 외부 요인을 무시하는 경향이 있습니다. 예를 들어 오픈소스 소프트웨어 패키지를 손상시키는 공격은 해당 패키지를 직간접으로 사용하는 코드에 영향을 줍니다. 이와 같은 소프트웨어 공급망 공격은 2020년 이후 급격히 증가했습니다.
소프트웨어 공급망
소프트웨어 공급망은 조직 안팎에서 소프트웨어의 개발 및 배포에 기여하는 모든 코드, 인력, 시스템, 프로세스로 구성됩니다. 학습 센터에는 다음과 같은 리소스가 있습니다.
- 개발자가 만든 코드와 코드의 종속 항목, 개발자가 소프트웨어를 개발, 빌드, 패키징, 설치, 실행하는 데 사용하는 내부 및 외부 소프트웨어.
- 시스템 액세스, 테스트, 검토, 모니터링 및 피드백, 커뮤니케이션, 승인을 위한 프로세스 및 정책.
- 소프트웨어와 소프트웨어의 종속 항목을 개발, 빌드, 저장, 실행할 때 신뢰하는 시스템.
소프트웨어 공급망의 광범위한 범위와 복잡성을 고려할 때 사용자에게 배포하는 소프트웨어에 승인되지 않은 변경사항을 적용할 수 있는 방법은 다양합니다. 이러한 공격 벡터는 소프트웨어 수명 주기 전반에 걸쳐 있습니다. 어떤 공격은 SolarWinds 빌드 시스템에 대한 공격과 같이 표적이 되지만, 어떤 위협은 간접적이거나 프로세스의 약점 또는 방치를 통해 공급망에 유입됩니다.
예를 들어 2021년 12월 Apache log4j의 원격 실행 취약성에 대한 블로그 게시물에서 Google Open Source Insights 팀은 Maven Central에 17,000개 이상의 패키지가 영향을 받는다고 언급했습니다. 영향을 받는 대부분의 패키지는 취약한 log4j-core
패키지에 직접 의존하지 않았지만 이를 필요로 하는 종속 항목이 있었습니다.
프로덕션에 배포하기 위한 코드 검토 또는 보안 기준 부족과 같은 프로세스 격차로 인해 잘못된 코드가 의도치 않게 공급망에 유입될 수 있습니다. 마찬가지로, 신뢰할 수 있는 버전 제어 시스템 외부에 있는 소스 코드로 빌드하거나 신뢰할 수 있는 빌드 시스템 및 아티팩트 저장소 외부에 있는 시스템에서 애플리케이션을 패키징 및 배포하면 불량 코드가 소프트웨어에 유입될 수 있습니다.
2021 State of the Software Supply Chain에 따라 오픈소스 소프트웨어와 소프트웨어 공급망에 대한 공격이 2020년에서 2021년 사이에 급격히 증가했습니다.
- 2021년의 소프트웨어 공급망 공격이 전년 대비 650% 증가했습니다.
- 오픈소스 패키지의 가용성과 수요는 계속 증가하여, 2021년 오픈소스 구성요소 다운로드 수가 전년 대비 73% 증가했습니다.
- 취약점은 가장 널리 사용되는 오픈소스 프로젝트에서 가장 일반적입니다.
소프트웨어의 무결성을 보호하려면 조직에서 위협을 감지, 대응, 해결할 수 있는 준비가 된 보안 상태를 이해하는 것이 중요합니다.
규정 준수 요구사항 및 평가 프레임워크
공급망 보안에 대한 우려가 증가함에 따라 다음과 같이 공급망 보안과 관련된 새로운 정부 규정이 생성되었습니다.
- 미국 행정 명령
- 유럽 연합의 네트워크 및 정보 보안 2 지침
조직이 보안 태세를 평가하고 위협 완화에 대해 학습하는 데 도움이 되는 새로운 프레임워크가 등장하고 있습니다.
- SLSA(Supply Chain Levels for Software Artifacts): Google의 소프트웨어 보안 권장사항에서 영감을 받은 오픈소스 프레임워크입니다.
- 정부 기관의 프레임워크:
- 미국 국립 표준기술원(NIST) SSDF(Secure Software Development Framework)(미국)
- Cybersecurity Assessment Framework(영국)
이러한 프레임워크는 기존의 소프트웨어 보안 권장사항을 해결하고, 해결해야 하는 보안 위협과 위협을 완화하기 위해 취할 조치를 식별하는 데 도움이 되는 형식으로 구조화합니다.
Google Cloud에서 소프트웨어 공급망 보호
Software Delivery Shield는 Google Cloud에서 완전 관리형 소프트웨어 공급망 보안 솔루션을 제공합니다. 여기에는 SLSA 및 NIST SSDF와 같은 프레임워크의 권장사항을 비롯한 권장사항이 포함됩니다. 우선순위 및 요구사항에 따라 솔루션의 구성요소를 점진적으로 적용합니다.
다음 단계
- 소프트웨어 공급망에 대한 위협에 대해 알아보기
- 기존 보안 상태를 평가하여 상태를 강화하는 방법 확인
- 소프트웨어 공급망을 보호하기 위한 권장사항 및 Software Delivery Shield의 기능이 어떻게 도움이 되는지 알아보기
- Software Delivery Shield에 대해 자세히 알아보기 및 빠른 시작 사용해 보기