본문으로 건너뛰기
피드

LiteLLM 1.82.8 파이썬 패키지 공급망 공격 당함 — SSH키, AWS 크레덴셜 전부 털림

security 약 6분

PyPI에 올라온 litellm==1.82.8 버전에 악성 .pth 파일이 심어진 게 확인됨. import도 필요 없이 파이썬 인터프리터 시작할 때마다 자동 실행되면서 SSH 키, 환경변수, 클라우드 크레덴셜 싹 다 수집해서 외부 서버로 빼돌리는 구조임. 공급망 공격(supply chain attack) 맞고, 영향 받은 사람은 즉시 크레덴셜 교체해야 함.

  • 1

    litellm==1.82.8에 악성 .pth 파일 포함 — import 없이 파이썬 시작 시 자동 실행

  • 2

    SSH 키·환경변수·AWS/GCP/쿠버네티스·암호화폐 지갑까지 전방위 크레덴셜 탈취

  • 3

    AES-256+RSA-4096 암호화 후 위장 도메인(litellm.cloud)으로 데이터 외부 전송

  • litellm==1.82.8 PyPI 패키지에 악성 .pth 파일(litellm_init.pth) 포함 확인
  • import litellm 없어도 파이썬 시작할 때마다 자동 실행되는 구조 (.pth 파일 특성 악용)
  • SSH 키, 환경변수(API 키 포함), AWS/GCP/Azure 크레덴셜, 쿠버네티스 시크릿, 암호화폐 지갑까지 전방위 수집
  • 수집한 데이터는 AES-256 + RSA-4096으로 암호화 후 https://models.litellm.cloud/ (공식 도메인 아님)으로 전송
  • 로컬 개발 환경, CI/CD 파이프라인, 도커 컨테이너, 프로덕션 서버 모두 영향

상세 내용

뭐가 문제임?

공급망 공격(Supply Chain Attack)으로, PyPI에 올라간 litellm==1.82.8 휠 패키지 안에 악성 파일 litellm_init.pth (34,628 bytes)가 포함됨. 이 파일은 패키지 자체 RECORD에도 버젓이 등록되어 있음 ㄷㄷ.

.pth 파일은 파이썬 인터프리터가 시작될 때 site-packages/ 폴더에서 자동으로 실행되는 특성이 있어서, import litellm 한 줄도 없어도 그냥 실행됨. 설치만 해도 당하는 구조.

악성 페이로드 동작 방식

페이로드는 이중 base64 인코딩으로 숨겨져 있어서 단순 grep으로는 탐지 안 됨.

Stage 1 — 정보 수집 (진짜 무섭게 다 털어감)

  • 시스템 정보: hostname, whoami, uname -a, ip addr, ip route
  • 환경변수 전체: printenv 실행 → API 키, 시크릿, 토큰 싹 다
  • SSH 키: id_rsa, id_ed25519, authorized_keys, known_hosts, config
  • Git 크레덴셜: ~/.gitconfig, ~/.git-credentials
  • AWS 크레덴셜: ~/.aws/credentials, ~/.aws/config, IMDS 토큰 + 보안 자격증명
  • 쿠버네티스 시크릿: ~/.kube/config, 각종 conf 파일, 서비스 어카운트 토큰
  • GCP/Azure 크레덴셜: gcloud 기본 크레덴셜, ~/.azure/ 전체
  • 도커 설정: ~/.docker/config.json, kaniko 설정 포함
  • 패키지 매니저 설정: .npmrc, .netrc, .pgpass, .my.cnf, .mongorc.js
  • 셸 히스토리: bash, zsh, mysql, psql, redis 히스토리
  • 암호화폐 지갑: 비트코인, 이더리움, 솔라나, 카르다노 등 주요 코인 지갑 전부
  • SSL/TLS 프라이빗 키: Let's Encrypt .pem, .key 파일
  • CI/CD 시크릿: terraform.tfvars, .gitlab-ci.yml, Jenkinsfile, .travis.yml
  • DB 크레덴셜: PostgreSQL, MySQL, Redis, LDAP 설정
  • 웹훅 URL: Slack/Discord 웹훅 URL grep

Stage 2 — 암호화 및 외부 전송

수집된 데이터를 임시 파일에 저장한 뒤:

  1. openssl rand32바이트 AES-256 세션 키 생성
  2. 데이터를 openssl enc -aes-256-cbc -pbkdf2로 암호화
  3. 세션 키를 하드코딩된 4096-bit RSA 공개키로 암호화 (OAEP 패딩)
  4. 두 파일을 tpcp.tar.gz로 패킹
  5. https://models.litellm.cloud/로 전송 (공식 도메인 litellm.ai아님 — 주의)

영향 범위

litellm==1.82.8을 설치한 모든 환경 해당:

  • 로컬 개발 머신
  • CI/CD 파이프라인
  • 도커 컨테이너
  • 프로덕션 서버

다른 버전도 아직 확인 안 됨 → 공격자가 여러 버전을 건드렸을 가능성 있음.

지금 당장 해야 할 것

  1. site-packages/ 디렉토리에서 litellm_init.pth 파일 확인 및 삭제
  2. litellm==1.82.8이 설치된 적 있는 모든 시스템에서 크레덴셜 전부 교체 (환경변수, SSH 키, 클라우드 크레덴셜 포함)
  3. PyPI에서 해당 버전 즉시 yanked 처리 요청
  4. BerriAI는 PyPI 퍼블리싱 크레덴셜 및 CI/CD 파이프라인 전체 감사 필요

LLM 관련 개발 툴이 워낙 빠르게 퍼지다 보니 공급망 공격 타깃으로 딱임 — litellm 쓰는 AI 스타트업이나 ML 엔지니어 환경엔 API 키가 넘쳐나니까 공격자 입장에선 황금 광산이었을 듯. 오픈소스 패키지 설치할 때 버전 고정(pinning) + 해시 검증은 이제 선택이 아닌 필수임.

댓글

댓글

댓글을 불러오는 중...

security

크롬, 온디바이스 AI의 '구글 서버로 데이터 안 보냄' 문구 삭제 논란

크롬 설정 문구에서 온디바이스 AI가 데이터를 구글 서버로 보내지 않는다는 설명이 사라졌다는 레딧 제보가 올라옴. 제보자는 크롬 147 버전에는 해당 문구가 있었고, 148 버전에서는 삭제됐다고 주장함. 공식 해명이나 실제 데이터 전송 방식 변경 여부는 본문만으로 확인되지 않지만, 브라우저 내장 AI 기능의 프라이버시 설명이 얼마나 민감한 이슈인지 보여주는 사례임.

security

클라우드 방화벽도 이제 포스트 양자 암호 검증 대상임

시큐어아이큐랩이 클라우드 네이티브 방화벽(CNFW)을 대상으로 한 포스트 양자 암호(PQC) 독립 검증 방법론을 공개했음. TLS, 쿠버네티스 정책 집행, 생성AI 추론 엔드포인트, MCP 서버 보안까지 같이 본다는 점이 핵심임.

security

구글, 에이전트 웹 시대용 사기 방어 플랫폼 ‘Fraud Defense’ 공개

구글 클라우드가 reCAPTCHA의 다음 단계로 Google Cloud Fraud Defense를 공개했어. 사람, 봇, AI 에이전트를 구분하고 위험도를 기반으로 허용·차단 정책을 걸 수 있게 만든 신뢰 플랫폼이 핵심이야. 기존 reCAPTCHA 고객은 별도 마이그레이션 없이 자동으로 Fraud Defense 고객이 되고, 가격이나 사이트 키도 그대로 유지돼.

security

서비스나우 CTO “미토스급 AI가 오픈소스로 풀리면 해킹 속도 더 빨라진다”

서비스나우 CTO 펫 케이시는 앤스로픽의 AI 모델 ‘미토스’가 중국에서 재현돼 핵심 소스가 공개될 경우 사이버 공격 위험이 크게 커질 수 있다고 경고했다. 취약점이 발견된 뒤 실제 악용까지 이어지는 시간이 짧아지는 만큼, 자동화된 보안 대응 도구 없이는 상황이 빠르게 악화될 수 있다는 주장이다.

security

네이버클라우드, SSL/TLS 인증서 자동 갱신용 ACME 기능 출시

네이버클라우드가 Certificate Manager에 SSL/TLS 인증서 발급·갱신·폐지를 자동화하는 ACME 기능을 추가했다. 인증서 유효기간이 2029년 47일까지 줄어들 전망이라, 수동 갱신 운영은 점점 위험해지는 상황이다. 기존 유료 인증서 고객은 추가 비용 없이 사용할 수 있고, Certbot과 Win-acme 같은 오픈소스 클라이언트도 연동된다.