Kant's IT/Issue on IT&Security

PyPI 악성 패키지 통한 클라우드 토큰 탈취 캠페인 분석

Kant Jo 2025. 4. 20. 20:31

Malicious PyPI Packages Stole Cloud Tokens—Over 14,100 Downloads Before Removal

 

  • 개요
    • ReversingLabs와 Fortinet FortiGuard Labs는 Python Package Index(PyPI) 저장소를 악용한 공급망 공격 캠페인을 공개
    • 공격자는 “time” 관련 유틸리티로 위장한 악성 라이브러리를 업로드하고, 이를 통해 클라우드 인증 토큰 및 민감 정보 탈취
    • 총 20개 악성 패키지가 발견되었으며, 총 다운로드 수 14,100회 이상
  • 주요 악성 패키지
    • 데이터 업로드 관련 악성 패키지
      • snapshot-photo (2,448회)
      • time-check-server (316회)
      • time-check-server-get (178회)
      • time-server-analysis (144회)
      • time-server-analyzer (74회)
      • time-server-test (155회)
      • time-service-checker (151회)
    • 클라우드 SDK 위장 패키지 (Alibaba, AWS, Tencent 대상)
      • aclient-sdk, acloud-client, alicloud-client, amzclients-sdk, awscloud-clients-core
      • credential-python-sdk, enumer-iam, tcloud-python-test
      • acloud-client 단독 5,496회 다운로드
    • 공격자는 이 패키지를 통해 클라우드 액세스 키와 토큰을 탈취한 후 자신의 서버로 업로드
  • 침투 경로 및 연계
    • acloud-client, enumer-iam, tcloud-python-test는 GitHub 프로젝트 accesskey_tools의 의존성으로 연결됨
      • 해당 프로젝트는 42회 포크, 519회 스타를 받아 신뢰성 높은 오픈소스처럼 위장
      • tcloud-python-test는 2023년 11월 8일 등록되었으며, 현재까지 793회 다운로드됨
  • 악성 기능 및 특징
    • 설치 시 자동 실행되는 setup.py의 설치 스크립트를 활용하여 악성 페이로드 다운로드 및 실행
    • 악성 코드 실행 시 명령제어(C2) 서버와의 통신, 클립보드 감시, 인증정보 유출 등 다단계 공격 수행
    • 외부 서버 연결을 위한 수상한 URL 포함 패키지가 974개 이상 보고됨
  • 보안 위협 및 시사점
    • 공급망 공격(Supply Chain Attack)으로서 오픈소스 생태계를 통한 신뢰 기반 침투
    • 패키지 관리자 및 오픈소스 개발자가 별도 검증 없이 의존성을 추가할 경우 광범위한 피해 초래 가능
    • 악성 패키지는 GitHub, PyPI, NPM 등의 커뮤니티를 통해 수개월간 무단 배포
  • 보안 권고
    • PyPI 의존 패키지 설치 전 setup.py, 의존성 그래프, 외부 통신 URL, GitHub 프로젝트 검토 필요
    • 개발 환경에서 pip install--no-deps, --no-cache-dir 사용하여 외부 실행 최소화
    • pepy.tech 등 다운로드 통계 분석 도구를 통해 비정상적 트래픽 증가 감시
    • 보안 솔루션(SCA, SBOM)을 활용한 오픈소스 관리 및 코드 무결성 검증 강화
    • 기업 개발자 대상 공급망 보안 교육 및 정기적 코드 리뷰, CI/CD 보안 통제 적용 필수
  • 결론
    • 본 사례는 신뢰할 수 있는 오픈소스 저장소조차 공급망 공격에 취약함을 보여주는 대표 사례
    • GitHub 및 PyPI 상의 의존성 자동 추가, 자동 빌드 환경에선 전사적인 보안 체계와 리뷰 체계 필수
    • 공급망 보안은 단일 패치가 아닌 지속적 검증, SBOM 활용, 보안 툴 연계 운영을 통한 다계층 방어 전략 필요