소프트웨어 개발 파이프라인은 사이버 범죄자에게 클라우드, 온프레미스 PlatoBlockchain 데이터 인텔리전스에 대한 '무료' 액세스를 제공합니다. 수직 검색. 일체 포함.

소프트웨어 개발 파이프라인은 사이버 범죄자에게 클라우드, 온프레미스에 대한 '자유 범위' 액세스를 제공합니다.

연구원들은 사이버 공격자들이 약점을 조사하는 데 관심을 강화함에 따라 CI/CD(지속적 통합/지속적 개발) 파이프라인이 소프트웨어 공급망의 가장 위험한 잠재적 공격 표면이 될 수 있다고 말합니다.

공격 표면도 증가하고 있습니다. CI/CD 파이프라인은 자동화된 프로세스를 사용하여 코드를 빌드, 테스트 및 배포하는 데 사용하는 엔터프라이즈 소프트웨어 개발 팀 내에서 점점 더 많은 고정 장치가 되었습니다. 그러나 과도한 권한, 네트워크 세분화 부족, 취약한 비밀 및 패치 관리가 구현을 방해하여 범죄자가 온프레미스와 클라우드 환경 사이를 자유롭게 이동할 수 있는 기회를 제공합니다.

10월 XNUMX일 수요일 Black Hat USA에서 보안 컨설팅 회사 NCC Group의 Iain Smart와 Viktor Gazdag가 "RCE-as-a-Service: 5년간의 실제 CI/CD 파이프라인 타협에서 얻은 교훈," 회사가 테스트한 거의 모든 회사의 프로덕션 CI/CD 파이프라인에서 수행한 성공적인 공급망 공격에 대해 논의합니다.

NCC Group은 소규모 기업에서 Fortune 500대 기업에 이르기까지 수십 개의 성공적인 목표 타협을 감독했습니다. 뿐만 아니라 보안 버그, 연구원들은 자동화된 파이프라인에서 의도된 기능의 새로운 남용으로 파이프라인을 단순한 개발자 유틸리티에서 서비스로서의 원격 코드 실행(RCE)으로 변환할 수 있었다고 말합니다.

"나는 사람들이 CI/CD 파이프라인에 더 많은 사랑을 주고 우리 세션의 모든 또는 적어도 하나 또는 두 개의 권장 사항을 적용하기를 바랍니다."라고 Gazdag는 말합니다. "또한 이것이 이 주제에 대한 더 많은 보안 연구를 촉발할 수 있기를 바랍니다."

Dark Reading의 뉴스 편집장 Tara Seals는 NCC Group의 보안 컨설턴트 관리인 Viktor Gazdag와 함께 자세한 내용을 알아보았습니다.

타라 씰: CI/CD 파이프라인의 일반적인 보안 약점은 무엇이며 어떻게 남용될 수 있습니까?

빅토르 가즈다그: 더 많은 주의가 필요한 세 가지 일반적인 보안 취약점이 정기적으로 나타납니다.

1) VCS(버전 제어 시스템) 또는 SCM(소스 제어 관리)의 하드코딩된 자격 증명.

여기에는 셸 스크립트, 로그인 파일, 코드와 동일한 위치에 저장된 구성 파일의 하드코딩된 자격 증명(별도로 또는 비밀 관리 앱이 아님)이 포함됩니다. 또한 SNS, 데이터베이스, EC2 등과 같은 클라우드 내에서 다양한 클라우드 환경(개발, 프로덕션) 또는 특정 서비스에 대한 액세스 토큰을 종종 찾습니다.

또한 지원 인프라 또는 CI/CD 파이프라인에 액세스할 수 있는 자격 증명을 여전히 찾습니다. 공격자가 클라우드 환경에 액세스하면 권한을 열거하거나 잘못된 구성을 찾거나 이미 클라우드에 있는 것처럼 권한을 상승시키려고 시도할 수 있습니다. CI/CD 파이프라인에 대한 액세스를 통해 빌드 기록을 보고, 사용된 아티팩트 및 비밀(예: SAST 도구 및 취약성 또는 클라우드 액세스 토큰에 대한 보고서)에 액세스할 수 있으며 최악의 시나리오에서는 컴파일할 애플리케이션에 임의의 코드(백도어, SolarWinds)를 삽입하거나 프로덕션 환경에 대한 완전한 액세스 권한을 얻습니다.

2) 지나치게 관대한 역할.

개발자 또는 서비스 계정에는 필요한 작업을 수행하는 데 필요한 것보다 더 많은 권한이 있는 계정과 연결된 역할(또는 맡을 수 있음)이 있는 경우가 많습니다.

프로덕션 및 개발 환경 모두에 적용되는 시스템 또는 비밀 구성과 같은 더 많은 기능에 액세스할 수 있습니다. 다른 개발자의 승인과 같은 보안 제어를 우회하거나 파이프라인을 수정하고 취약점 검색에 도움이 되는 SAST 도구를 제거할 수 있습니다.

파이프라인은 프로덕션 및 테스트 배포 환경에 액세스할 수 있으므로 이들 사이에 세분화가 없으면 온프레미스와 클라우드 사이에서도 환경 간의 다리 역할을 할 수 있습니다. 이를 통해 공격자는 방화벽이나 경고를 우회하고 다른 방법으로는 불가능했을 환경 간에 자유롭게 이동할 수 있습니다.

3) 감사, 모니터링 및 경고가 부족합니다.

이것은 가장 무시되는 영역이며 90%의 시간 동안 감사가 켜져 있거나 활성화된 경우에도 구성 수정 또는 사용자/역할 관리에 대한 모니터링 및 경고 부족을 발견했습니다. 모니터링할 수 있는 유일한 것은 성공 또는 실패한 작업 컴파일 또는 빌드입니다.

네트워크 세분화 부족, 비밀 관리, 패치 관리 등 더 일반적인 보안 문제도 있지만 이 세 가지 예는 공격의 시작점이며 평균 위반 탐지 시간을 줄이는 데 필요하거나 제한하는 것이 중요합니다. 공격 폭발 반경.

TS : 지적할 수 있는 구체적인 실제 사례나 구체적인 시나리오가 있습니까?

VG: CI/CD 또는 파이프라인 공격과 관련된 뉴스의 일부 공격은 다음과 같습니다.

  • CCleaner 공격, March 2018
  • 홈브류, 2018년 XNUMX월
  • 아수스 섀도우해머, March 2019
  • CircleCI 제2019자 침해, XNUMX년 XNUMX월
  • SolarWinds, 12 월 2020
  • Codecov의 bash 업로더 스크립트, 2021년 XNUMX월
  • 비밀에 대한 TravisCI 무단 액세스, 2021년 XNUMX월

TS : 자동화된 파이프라인의 약점이 문제가 되는 이유는 무엇입니까? 회사에 대한 위험을 어떻게 특성화하시겠습니까?

VG: 파이프라인 단계에는 수백 가지 도구가 사용될 수 있으며 이 때문에 누군가가 알아야 할 엄청난 지식은 방대합니다. 또한 파이프라인에는 여러 환경에 대한 네트워크 액세스와 다양한 도구 및 환경에 대한 여러 자격 증명이 있습니다. 파이프라인에 대한 액세스 권한을 얻는 것은 공격자가 파이프라인에 연결된 다른 도구 또는 환경에 액세스할 수 있는 무료 여행 패스를 얻는 것과 같습니다.

TS : 공격자가 CI/CD 파이프라인을 성공적으로 파괴할 경우 기업이 겪을 수 있는 공격 결과에는 어떤 것이 있습니까?

VG: 공격 결과에는 소스 코드 또는 지적 데이터 도용, 수천 명의 고객(예: SolarWinds)에 배포된 애플리케이션 백도어링, 온프레미스 또는 내부에서 개발 및 프로덕션과 같은 여러 환경에 대한 액세스 획득(및 자유롭게 이동)이 포함될 수 있습니다. 클라우드 또는 둘 다.

TS : 공격자가 파이프라인을 손상시키려면 얼마나 정교해야 합니까?

VG: Black Hat에서 우리가 제시하는 것은 제로데이 취약점(다른 도구에서 일부 취약점을 발견했지만)이나 새로운 기술이 아닙니다. 범죄자는 피싱(세션 하이재킹, 다단계 인증 우회, 자격 증명 도용)을 통해 개발자를 공격하거나 CI/CD 파이프라인이 보호되지 않고 인터넷에 연결되어 있는 경우 직접 공격할 수 있습니다.

NCC Group은 처음에 웹 애플리케이션을 테스트한 보안 평가도 수행했습니다. 우리가 발견한 사실은 CI/CD 파이프라인이 소프트웨어 구축/컴파일 작업 외에는 거의 기록되지 않고 경고와 함께 모니터링되므로 범죄자가 파이프라인을 손상시키기 위해 그렇게 조심하거나 정교할 필요가 없다는 것입니다.

TS : 이러한 유형의 공격은 얼마나 일반적이며 CI/CD 파이프라인이 나타내는 공격 표면의 범위는 얼마입니까?

VG: 언급했듯이 뉴스에는 실제 공격의 몇 가지 예가 있습니다. 예를 들어, 인터넷에서 Shodan을 사용하는 Jenkins 인스턴스. SaaS를 사용하면 기본적으로 다단계 인증 또는 IP 제한이 활성화되어 있지 않고 인터넷에 연결되어 있기 때문에 범죄자는 암호를 열거하고 무차별 대입하여 액세스를 시도할 수 있습니다.

원격 작업을 사용하면 개발자가 언제 어디서나 액세스하기를 원하기 때문에 파이프라인을 보호하기가 훨씬 더 어렵고 기업이 제로 트러스트 네트워킹으로 이동하거나 네트워크 위치가 변경됨에 따라 IP 제한은 더 이상 실현 가능하지 않습니다.

파이프라인은 일반적으로 여러 환경에 대한 네트워크 액세스 권한이 있으며(그렇지 않아야 함) 다양한 도구 및 환경에 대한 여러 자격 증명에 액세스할 수 있습니다. 온프레미스와 클라우드 또는 프로덕션 및 테스트 시스템 간의 다리 역할을 할 수 있습니다. 이것은 매우 광범위한 공격 표면이 될 수 있으며 공격은 파이프라인 자체와 관련이 없는 곳이라도 여러 곳에서 올 수 있습니다. Black Hat에서는 원래 웹 애플리케이션 테스트로 시작한 두 가지 시나리오를 제시하고 있습니다.

TS: CI/CD 파이프라인이 기업의 보안 사각지대인 이유는 무엇입니까?

VG: 대부분 시간이 부족하고 때로는 사람이 부족하고 어떤 경우에는 지식이 부족하기 때문입니다. CI/CD 파이프라인은 종종 개발자나 IT 팀이 제한된 시간으로 속도와 전달에 중점을 두고 생성하거나 개발자가 작업에 과부하가 걸리게 만드는 경우가 많습니다.

CI/CD 파이프라인은 매우 복잡하거나 매우 복잡할 수 있으며 수백 가지 도구를 포함하고 여러 환경 및 비밀과 상호 작용하며 여러 사람이 사용할 수 있습니다. 어떤 사람들은 파이프라인에서 사용할 수 있는 도구의 주기율표 표현을 만들기까지 했습니다.

회사에서 사용하는 파이프라인과 지원 환경에 대한 위협 모델을 생성하는 데 시간을 할당하면 환경, 경계 및 비밀 간의 연결과 공격이 발생할 수 있는 위치를 볼 수 있습니다. 위협 모델을 만들고 지속적으로 업데이트해야 하며 시간이 걸립니다.

TS : 파이프라인의 보안을 강화하기 위한 모범 사례는 무엇입니까?

VG: 네트워크 세분화를 적용하고, 역할 생성을 위해 최소 권한 원칙을 사용하고, 비밀 관리에서 비밀의 범위를 제한하고, 보안 업데이트를 자주 적용하고, 아티팩트를 확인하고, 구성 변경을 모니터링하고 경고합니다.

TS : 공유하고 싶은 다른 생각이 있습니까?

VG: 클라우드 네이티브 또는 클라우드 기반 CI/CD 파이프라인이 더 단순하기는 하지만 지나치게 관대한 역할, 세분화 없음, 과도한 범위의 비밀 및 경고 부족과 같은 동일하거나 유사한 문제가 여전히 발생했습니다. 기업은 클라우드에서도 보안 책임이 있음을 기억하는 것이 중요합니다.

타임 스탬프 :

더보기 어두운 독서