본문 바로가기

  1. 오픈소스 말웨어란?
    1. 오픈소스 말웨어의 3가지 특징
  2. 저장소 관리자를 우회하는 섀도우 다운로드
  3. 오픈소스 말웨어 공격에 대한 보안 강화
POST/Insight

2024 오픈소스 말웨어 현황 보고서

 

 

 

2024년은 오픈소스 말웨어 또는 악성 오픈소스 패키지가 만연한 한해였습니다. 그리고 내년에도 빠른 속도로 퍼져나가면서 소프트웨어 공급망 공격에 엄청난 위험을 가할 것으로 예측되고 있습니다. 코딩 과정에서의 실수로 발생하는 취약점과는 다르게 오픈소스 말웨어는 소프트웨어 공급망을 공격하기 위해 의도적으로 개발된 산물입니다. 소나타입에 따르면 50%의 보호받지 않은 리포지토리가 이미 오픈소스 말웨어를 캐시로 가지고 있는 것으로 추정하고 있습니다.

 

2024년 소프트웨어 공급망 현황 보고서에 따르면 소나타입은 동년대비 156% 증가된 악성 패키지가 발견되었다고 발표하였습니다. 소나타입은 2019년 첫 보고서를 발간한 이후, 약 778,529개의 오픈소스 말웨어를 발견하였고, 작년 10월 연간 보고서를 발간한 이후에 70,000건의 신규 말웨어를 발견하였습니다.

 

출처: Sonatype, 2024 in Opensource Malware Report

 

오픈소스 말웨어란?

 

전통적인 말웨어는 주로 이메일 첨부파일, 악성 웹사이트 혹은 오염된 장비를 통해 퍼져나가는 반면, 오픈소스 말웨어는 합법적인 오픈소스 구성요소로 위장하여 코드가 저장된 스토리지나 다른 개발 자산에 침입합니다. 손상된 오픈소스 저장소를 이용하는 이러한 독특한 배포 방식은 의존성 관리 도구와 개발 빌드 파이프라인의 빈틈을 통해 공격하고, 소프트웨어 개발자를 직접 공격하기 위해 기존의 보편적인 보안 메카니즘을 우회합니다.

 

오픈소스 말웨어의 3가지 특징

  • 의도적인 삽입: 오픈소스 말웨어는 오픈소스 저장소에 악의적인 목적을 가지고 의도적으로 업로드 됨
  • 개발자 타겟: 개발자를 기만하여 의존성 설치 과정에서 악성 구성요소를 운영하도록 유도함
  • 감지의 어려움: 오늘날의 엔드포인트 보안 도구는 이런 종류의 시그니처를 감지하는데 한계가 있음

출처: Sonatype, 2024 in Opensource Malware Report

 

 

오픈소스 말웨어가 오픈소스 생태계에 유입되는 방법은 복잡할 것처럼 생각되지만, 의외로 큰 장벽없이 가능합니다. npm, PyPI와 같은 생태계는 연간 수조건의 오픈소스 패키지 리퀘스트를 처리합니다. 이런 생태계는 악의적인 공격자가 소프트웨어 공급망을 공격하기 위한 좋은 장소를 만들어줍니다. 이런 생태계의 인기있는 패키지들은 공격의 대상으로 선택되고,말웨어를 포함하도록 모방, 수정 및 리패키징되거나 유지보수 관리자의 계정을 탈취합니다. 공격자는 종종 합법적인 패키지 네임을 모방하고 더 높은 버전을 퍼블리싱하여 빌드 시스템이 악성 버전을 설치하도록 속임니다. 이를 통해 CI/CD 파이프라인은 의도치않게 악성 코드가 포함된 컴포넌트를 소비하게 됩니다.

 

PyPI 역시, 의존성 혼동, 타이포스쿼팅, 스팸 등의 공격방식에 대한 도전을 받고 있습니다. AI와 클라우드 애플리케이션의 증가로 인하여 PyPI의 사용량은 빠르게 증가하고 있으며, 역시 합법적인 및 악성 패키지를 관리하는데 복잡함이 발생하고 있습니다. npm의 경우, 오픈 퍼블리싱 모델은 양날의 검으로, 신속한 혁신을 보장하지만 반면 악의적인 공격자의 공격 표면을 증가시키는 역할도 하고 있습니다.

 

저장소 관리자를 우회하는 섀도우 다운로드

 

악성 패키지가 저장소 관리자를 우회하여 개발자의 머신이나 공유 빌드 인프라에 직접 다운로드 되는 악성 패키지의 수는 생각보다 많습니다. 섀도우 다운로드는 써드파티 혹은 퍼블릭 저장소에서 아티팩트 저장소 관리자를 우회하여 오픈소스 구성요소를 다운받는 것을 의미합니다. 이런 관행은 검증되지 않고 관찰되지 않은 의존성이 조직의 거버넌스, 리뷰, 및 보안 프로세스를 우회하여 프로젝트로 유입되도록 합니다.

 

매일 수백만 건의 오픈소스 패키지가 다운로드되고 있는 현재, 상당한 수의 패키지가 저장소 관리자를 우회하여 다운로드 되고 있을 것으로 예상됩니다. 다시 말해서 오픈소스 말웨어가 개발에 매우 쉽게 침투할 수 있다는 뜻입니다. 소나타입에 따르면 지난 11월 섀도우 다운로드는 630억 건은 넘었으며, 약 작년 동월대비 32.8% 증가된 수치입니다. 각각의 컴포넌트는 애플리케이션 취약점 스캐닝과 같은 보안 검토를 우회하고 있습니다. 이는 중대한 보안 위협으로, 말웨어는 다운로드되는 순간 트리거 되도록 개발되어 있기 때문입니다.

 

보고서에 따르면 2024년에 악의적인 공격자는 매우 광범위하게 모든 산업에 대하여 공격을 시도했습니다. 정부 기관이 가장 많은 공격을 받았으며, 금융, 전기, 원유 및 가스 산업 순으로 공격 순위가 높았습니다.

 

오픈소스 공격의 종류를 살펴보면, 잠재적인 원치않는 애플리케이션(PUA (Potentially Unwanted Application))이 전체 오픈소스 말웨어 공격의 거의 절반에 달하는 것으로 조사되었습니다.

 

PAU에는 protestware나 데이터 수집과 같은 의도하지 않은 기능을 포함하는 구성 요소가 포함됩니다. 이들은 적절한 검증 과정을 우회하고 소프트웨어 시스템에 예측 불가능성을 도입함으로써 상당한 위험을 초래합니다.

 

PUA(잠재적으로 원치 않는 애플리케이션)가 겉보기에는 악의적이지 않아 보일 수 있지만, 최종 사용자의 보안과 개인정보를 위협할 수 있는 스파이웨어, 애드웨어 또는 추적 구성 요소를 포함할 수 있습니다.

 

그 외에, 보안 보유 패키지, 데이터 추출 말웨어, 코드 주입 말웨어, 백도어 설치 말웨어 등의 말웨어 공격 종류가 가장 많이 사용되는 패턴으로 조사되었습니다.

 

오픈소스 말웨어 공격에 대한 보안 강화

 

오픈소스 멀웨어의 증가는 현대 소프트웨어 개발의 무결성에 근본적인 어려움을 제기합니다. 의존성 사슬이 점점 더 복잡해지고 저장소들이 매년 수조 건의 요청을 처리함에 따라, 위협 환경은 계속 진화할 것입니다.

 

2025년에 대한 예측을 살펴보면 AI 기반 오픈소스 멀웨어 공격의 급격한 증가, 암호화폐 탈취 프로그램의 확산, 그리고 관리되지 않는 오픈소스 프로젝트에 대한 집중도 확대를 시사합니다. 올해 초 발견된 XZ Utils 탈취 시도와 백도어는 빙산의 일각에 불과하며, 추가적인 정교한 캠페인들이 발견될 가능성이 높습니다. 오픈소스가 공격 벡터로서 가치가 있다는 점이 인식되었기 때문에, 보호를 강화할 긴급한 필요성이 있습니다.

 

생태계 거버넌스 강화

 

생태계 단계에서 의존성에 대한 적절한 거버넌스를 적용하는 것은 해로운 구성요소에 대한 노출을 감소할 수 있는 좋은 방법입니다. 생태계 관리자는 크립토그라픽 시그니처를 검증된 패키지에 요구하거나, 공헌자에게 온보딩 프로세스를 요구하여 악성 패키지의 제출을 줄일 수 있습니다. 또한 의존성 모니터링은 손상된 구성요소를 발견하고 제거할 수 있는 좋은 방법입니다.

 

오픈소스 말웨어 유입 차단

 

오픈소스 말웨어의 위협을 완화하는 핵심은 개발 환경에 진입하기 전에 이를 차단하는 것입니다. 악성 구성요소가 빌드 파이프라인에 침투하도록 허용하면 탐지와 제거의 어려움이 크게 증가합니다. 이 단계에서 멀웨어는 이미 SDLC(소프트웨어 개발 수명 주기)에 내장되어 있으며, 종종 전통적인 보안 조치를 우회합니다. 이에 대응하기 위해 조직은 악성 패키지가 저장소에 진입하기 전에 차단해야 하며, 섀도우 다운로드 - 즉, 관리되는 저장소의 범위를 벗어난 승인되지 않거나 검증되지 않은 구성 요소의 사용 - 를 제거해야 합니다.

 

더 상세한 보고서 내용을 보고 싶다면 Sonatype의 2024 in Opensource Malware Report를 통해 확인할 수 있습니다.

 

 

 

 

원문 링크: 2024 in Opensource Malware Report

 

 

 

 

관련 링크:

10년의 소프트웨어 공급망 역사: 오픈소스의 성장, 리스크 그리고 미래

오픈소스의 규모: 성장, 도전과제 그리고 인사이트