통념: 버전만 확인하면 안전할까

AI 모델 연결 도구 LiteLLM의 1.107.0 버전에 악성 코드가 포함돼 배포됐다. 세이프뎁은 10월 21일 분석 결과를 공개했고, 뉴스에 따르면 공격자는 변조된 파일을 PyPI와 도커 허브, 깃허브 컨테이너 저장소에 올렸다.

흔한 대응은 악성 버전을 피하고 정상 버전을 설치하는 것이다. 세이프뎁은 1.106.2와 1.107.0 정식 출시 전 시험판 2종은 정상이라고 밝혔다. 하지만 버전 번호만 확인하면 충분하다는 통념에는 함정이 있다. 패키지 저장소뿐 아니라 컨테이너 이미지도 변조됐다는 보도 내용은 설치 경로까지 확인해야 함을 보여준다.

놓치기 쉬운 맹점: 설치 이후의 노출

악성 코드는 파이썬이 실행될 때마다 작동해 SSH 키, 클라우드 접속 정보, 개발 자동화 비밀 값, AI 서비스 인증 정보와 브라우저 저장 비밀번호를 수집한다. 수집 정보는 암호화된 뒤 LiteLLM 공식 주소와 비슷한 가짜 주소로 전송된다.

함께 설치되는 백도어는 한 시간마다 깃허브 파일에서 명령 서버 주소를 확인하고, 정보 수집을 반복하거나 외부 코드를 내려받아 실행한다. 백도어는 외부 공격자가 시스템에 몰래 접속하도록 하는 악성 프로그램이다. 따라서 진짜 리스크는 감염된 패키지를 설치한 데서 끝나지 않는다. 그 환경에 어떤 인증 정보가 있었고, 설치 뒤 파이썬이 실행됐는지가 확인의 핵심이다.

다만 감염 흔적이 있다고 해서 모든 정보가 실제로 유출됐다고 단정할 수는 없다. 반대로 흔적을 찾지 못했다고 감염이 없었다고 단정하기도 어렵다. 뉴스가 제시한 파일은 의심의 단서이지, 피해 범위를 확정하는 증거는 아니다.

최악의 시나리오에서 잃을 수 있는 것

노출된 자격 증명이 유효하고 악용된다면 클라우드와 AI 서비스 접근, 개발 자동화 환경까지 피해가 이어질 가능성이 있다. 백도어가 외부 코드를 실행할 수 있어, 초기 정보 탈취 뒤 추가 침해가 발생할 위험도 있다. 다만 실제 피해 여부와 범위는 뉴스에 명시돼 있지 않다.

세이프뎁은 배포 파일에 공식 소스 코드에 없는 설정 문구가 추가된 점을 근거로 배포 과정 침해나 PyPI 계정 탈취 가능성을 제기했다. 이는 조사에 근거한 추정이지, 침해 경로가 확정됐다는 뜻은 아니다.

결론

의심되는 환경에서는 다음 순서로 확인한다.

  • 설치 폴더에서 cook.pth, cook.py, sitecustomize.py 존재 여부를 확인한다.
  • 해당 환경에서 사용한 SSH 키, 클라우드·AI 인증 정보와 자동화 비밀 값의 노출 가능성을 점검하고 필요한 자격 증명을 교체한다.
  • 설치한 패키지 버전과 PyPI·도커 허브 등 실제 배포 경로를 대조한다.

LiteLLM은 악성 버전과 컨테이너 이미지를 삭제하고 대응 안내를 공개했다. 버전 확인은 출발점이며, 감염 흔적과 자격 증명 노출 여부까지 살펴야 한다.

  • #LiteLLM
  • #파이썬보안
  • #공급망보안
  • #악성코드
  • #비밀번호유출