피드로 돌아가기
PyPI 보안팀 공식 공급망 공격 사고 보고서: LiteLLM·Telnyx 악성 패키지 사건 그리고 방어하기
GeekNewsGeekNews
Security

PyPI 보안팀 공식 공급망 공격 사고 보고서: LiteLLM·Telnyx 악성 패키지 사건 그리고 방어하기

신뢰 기반 패키지 침투, PyPI 공급망 공격 사례와 방어 전략

darjeeling2026년 4월 3일3intermediate

Context

Trivy 의존성 취약점으로 API 토큰이 유출되는 사고 발생. 탈취한 권한으로 기존 인기 오픈소스 패키지에 악성코드를 주입하는 연쇄 공격 구조. 단순 타이포스쿼팅을 넘어 신뢰받는 패키지를 직접 오염시킨 사례.

Technical Solution

  • 최신 패키지 즉시 설치를 제한하여 분석 시간을 확보하는 Dependency Cooldowns 전략 도입
  • 체크섬과 해시값이 포함된 Lock File 사용으로 패키지 무결성 검증 체계 강화
  • GitHub Actions의 pull_request_target 트리거 사용을 금지하여 임의 코드 실행 경로 차단
  • 장기 유효 API 토큰 대신 단기 토큰 기반의 Trusted Publishers 인증 방식으로 전환
  • Digital Attestations 적용으로 정상 릴리스 워크플로를 거치지 않은 배포본 탐지
  • 모든 개발 계정에 하드웨어 키 기반 2FA 적용으로 계정 탈취 가능성 최소화

Impact

  • LiteLLM 악성 버전 노출 시간 2시간 32분 (업로드 후 첫 신고까지 1시간 19분, 격리까지 1시간 12분)
  • LiteLLM 악성 패키지 총 다운로드 횟수 119,000회 이상
  • LiteLLM 설치 요청 중 약 40~50%가 버전 미고정 상태로 최신 버전 자동 수신
  • Telnyx 악성 버전 총 노출 시간 3시간 42분

Key Takeaway

공급망 보안은 단일 도구의 방어가 아닌 의존성 관리, 인증 체계, 릴리스 파이프라인 전 과정의 제로 트러스트 설계가 핵심.


uv의 exclude-newer 설정을 통해 배포 3일 경과 패키지만 설치하고, 반드시 해시 기반 Lock File을 유지할 것

원문 읽기