What is Software Composition Analysis (SCA)?

대부분의 최신 애플리케이션은 타사 구성 요소와 종속성에 의존하여 작동합니다. 이 오픈 소스 코드에는 장점이 있지만 애플리케이션에 취약성, 악성 코드 및 기타 보안 위험을 초래할 수도 있습니다. 소프트웨어 구성 분석(SCA)은 이러한 외부 코드를 식별하기 위한 DevSecOps 도구입니다. SCA는 오픈 소스 구성요소를 추적하고, 취약성을 찾고, 소프트웨어 라이센스를 관리하는 데 사용할 수 있습니다.

데모 요청하기 자세히 알아보기

What is Software Composition Analysis (SCA)?

소프트웨어 구성 분석 솔루션의 작동 방식

SCA 솔루션은 알려지지 않은 코드베이스를 검사하고 사용된 오픈 소스 구성요소, 해당 취약성 및 기타 정보를 문서화하도록 설계되었습니다. 이 작업은 다음 단계를 통해 수행할 수 있습니다.

  • 스캔: SCA 도구는 코드베이스를 스캔하여 코드에서 사용하는 라이브러리 및 종속성을 식별하는 것으로 시작합니다. 이 스캔을 기반으로 도구는 애플리케이션에서 사용하는 모든 오픈 소스 코드를 나열하는 SBOM(Software Bill of Materials)을 생성할 수 있습니다.
  • 문서조사: 소프트웨어 버전, 라이선스 정보 및 애플리케이션별 사용은 모두 중요한 정보입니다. 코드베이스에서 오픈 소스 코드를 식별한 후 SCA 스캐너는 이 데이터를 기록합니다.
  • 취약점 탐지: 알려진 취약성은 영향을 받는 소프트웨어 및 버전과 함께 CVE(Common Vulnerabilities and Exposures)로 기록됩니다. 사용된 오픈 소스 라이브러리 및 해당 버전 번호에 대한 지식이 있는 SCA 도구는 애플리케이션 내에서 알려진 취약성을 식별할 수 있습니다.

이 프로세스가 끝나면 SCA 도구는 애플리케이션에서 사용하는 모든 오픈 소스 종속성에 대한 정보가 포함된 보고서를 생성합니다. 이 정보는 보안 담당자에게 보고될 수 있으며, CI /CD 파이프라인 내의 결과 및 통합 수준에 따라 더 이상 사용되지 않거나 안전하지 않은 구성 요소를 사용하는 경우 새 커밋이 코드베이스에 추가되지 않도록 차단할 수도 있습니다.

SCA를 CI/CD 파이프라인에 통합함으로써 개발자 팀은 보안을 왼쪽으로 전환 하고 악용 가능한 취약성이 프로덕션 시스템에 도달할 위험을 줄일 수 있습니다.

중요한 이유

공급망 공격은 애플리케이션 보안에 대한 위협이 커지고 있습니다. 많은 애플리케이션은 취약한 코드를 포함하는 오픈 소스 구성 요소에 의존합니다. 사이버 범죄자들은 또한 라이브러리를 개발하거나 합법적인 라이브러리에 악성 코드를 삽입하여 애플리케이션 보안을 약화시키기 위해 적극적으로 노력하고 있습니다.

SCA는 애플리케이션이 의존하는 써드파티 코드에 대한 가시성을 조직에 제공합니다. 이러한 가시성은 오픈 소스 및 타사 코드 사용으로 인해 발생할 수 있는 상속된 취약성 및 기타 문제를 식별하는 데 필수적입니다.

소프트웨어 구성 분석(SCA) 사용 사례

SCA는 조직의 애플리케이션이 사용하는 오픈 소스 종속성에 대한 가시성을 제공합니다. 이러한 가시성은 취약성 및 라이선스 관리에 필수적입니다.

취약성 관리

오픈 소스 라이브러리에는 악용 가능한 취약성 또는 악성 코드가 포함될 수 있습니다. 애플리케이션이 이러한 라이브러리를 가져오면 악용에 취약하거나 악성 코드가 실행될 수 있습니다. 종종 기업은 사용하는 타사 코드에 대한 가시성을 유지하는 데 어려움을 겪습니다. 이는 하나의 오픈 소스 구성 요소가 하나 이상의 다른 구성 요소를 가져오는 간접 종속성의 경우 특히 그렇습니다. SCA 솔루션은 기업이 필요한 가시성을 확보하고 애플리케이션에서 사용하는 라이브러리 버전에 대한 CVE가 존재하는지 신속하게 판별하는 데 도움이 될 수 있습니다.

라이선스 관리

타사 코드를 사용하면 조직에 라이선스 문제가 발생할 수 있으며, 특히 광범위한 잠재적 라이선스 요구 사항이 발생할 수 있습니다. 극단적으로 말하자면, 저작권으로 인해 회사가 구성 요소를 사용할 수 없거나 로열티 지불이 필요할 수 있습니다. 다른 한편으로, 카피레프트 라이선스는 특정 구성 요소를 사용하는 모든 코드도 자유롭게 사용할 수 있고 오픈 소스여야 한다고 요구할 수 있습니다.

애플리케이션에서 사용하는 오픈 소스 구성 요소에 대한 가시성이 없으면 조직은 라이선스 규칙에 대해 잘 알지 못하며 법적 위험에 처할 수 있습니다. 코드베이스 내에서 사용되는 모든 오픈 소스 구성 요소에 대한 라이선스 정보를 수집함으로써 회사는 잠재적인 라이선스 및 법적 문제에 대한 가시성을 확보할 수 있습니다.

SCA가 공급망 공격을 방지하는 방법

점점 더 많은 사이버 위협 행위자가 공급망 공격을 수행하고 있으며, 이 공격에서는 취약성 또는 악성 코드가 다른 애플리케이션에서 사용하는 오픈 소스 프로젝트에 삽입됩니다. 라이브러리를 가져오는 소프트웨어는 악성 코드를 실행하거나 악용될 수 있는 취약성을 상속합니다.

SCA는 애플리케이션 종속성의 취약성을 식별하여 공급망 공격으로부터 보호하는 데 도움이 될 수 있습니다. 또한 애플리케이션에서 사용하는 종속성에 대한 통찰력은 이러한 공격을 위해 사이버 범죄자가 만들거나 손상시킨 알려진 악성 라이브러리를 식별하는 데 도움이 될 수 있습니다.

소프트웨어 구성 분석(SCA) 과제

SCA는 조직의 소프트웨어 공급망 보안 위험을 관리하는 데 필수적입니다. 그러나 SCA는 다음과 같은 과제에 직면해 있습니다.

  • 간접 종속성: 애플리케이션의 종속성에는 자체 종속성이 있을 수 있습니다. 이러한 체인은 여러 단계 깊이로 들어갈 수 있으므로 완전한 가시성을 확보하기가 어렵습니다.
  • 종속성 식별: 서로 다른 프로그래밍 언어와 에코시스템은 종속성을 다르게 처리합니다. SCA 솔루션은 오픈 소스 코드를 애플리케이션으로 가져올 수 있는 모든 방법을 이해해야 합니다.
  • 취약성 관리: 매일 새로운 취약점이 발견되며 취약점 관리 소스가 항상 최신 상태인 것은 아닙니다. 결과적으로 SCA는 취약성을 놓칠 수 있으며 개발 팀은 백로그를 따라잡는 데 어려움을 겪을 수 있습니다.

CloudGuard Spectral을 통한 공급망 보안

애플리케이션이 오픈 소스 종속성의 복잡한 네트워크에 점점 더 의존하게 됨에 따라 이러한 종속성을 모니터링하고 관리하는 것이 더욱 복잡해지고 있습니다. SCA의 주요 이점은 개발 팀이 SBOM을 신속하게 생성하고 이 정보를 사용하여 소프트웨어의 잠재적 취약성 및 라이선스 문제를 식별할 수 있다는 것입니다.

체크 포인트 CloudGuard Spectral 은 개발자가 직면하는 주요 보안 문제를 해결하도록 설계된 보안 플랫폼입니다. 다른 기능 중에서도 Spectral은 SCA를 수행하여 조직 애플리케이션의 취약성을 식별하고 수정할 수 있습니다. Spectral에 대해 자세히 알아보고 Spectral을 통해 조직의 애플리케이션 보안 관행을 간소화하는 방법에 대해 자세히 알아보려면 지금 무료 코드 스캔에 등록 하십시오.

×
  피드백
본 웹 사이트에서는 기능과 분석 및 마케팅 목적으로 쿠키를 사용합니다.웹 사이트를 계속 이용하면 쿠키 사용에 동의하시게 됩니다. 자세한 내용은 쿠키 공지를 읽어 주십시오.