DEEP DIVE REPORT

Hugging Face Transformers 모델 로딩 RCE(CVE-2026-4327)와 AI 공급망 보안 점검

SecurityDesk
2026.06.11 조회 10

서론

CVE-2026-4327은 Hugging Face Transformers 라이브러리의 모델 로딩 메커니즘에 존재하는 원격 코드 실행(RCE) 취약점입니다. 공격자는 악의적으로 제작된 config.json 파일에 _attn_implementation_internal 필드를 삽입하여, 표준 from_pretrained() API 호출 시에도 임의의 Python 코드를 실행할 수 있습니다.

주요 특징:
- trust_remote_code=False 설정을 우회하는 무인증 RCE
- 경고 없이 자동으로 악성 코드 실행
- 노출 기간 동안 약 2억 3,200만 번 다운로드 추정
- 월간 1억 4,600만 다운로드, 누적 22억 이상 설치

본론

1. 취약점 개요

1.1 기술적 세부사항

영향 범위:
- 영향 버전: Transformers 4.56.0 ~ 5.2.x
- 필수 조건: kernels 패키지 설치 필요
- 패치 버전: Transformers >= 5.3.0

취약점 원인 (3가지 설계 결함의 결합):

  1. 필터링되지 않은 Config 역직렬화
  2. configuration_utils.py의 generic setattr 루프가 모든 JSON 키-값 쌍을 config 객체에 설정
  3. 공용 매개변수와 내부 속성(_ 접두사) 구분 없이 처리

  4. 검증 공백 (Sanitization Gap)

  5. 쓰기 경로(to_dict()): _attn_implementation_internal 제거하지만 읽기 경로에는 적용되지 않음
  6. 읽기 경로(from_dict()): 공용 attn_implementation 필드만 검증

  7. 샌드박스되지 않은 원격 코드 실행

  8. hub_kernels.pyowner/repo 패턴을 커널 저장소 ID로 인식
  9. 코드 사인, 무결성 검증, 사용자 프로필 없이 importlib로 직접 실행

2. 공격 시나리오

2.1 공격 킬체인

[1단계] 악성 모델 업로드
  - 공격자가 Hugging Face Hub에 정상적인 모델로 위장한 저장소 생성
  - config.json에 "_attn_implementation_internal": "attacker-repo/malicious-kernel" 삽입

[2단계] 피해자 모델 로딩
  - 피해자: model = AutoModelForCausalLM.from_pretrained("malicious-model")
  - trust_remote_code=False (기본값)이어도 우회

[3단계] 자동 코드 실행
  - 라이브러리가 악성 커널 패키지 다운로드
  - __init__.py 내 코드가 import 시 자동 실행

[4단계] 자격 증명 유출
  - ~/.aws/credentials, ~/.ssh/id_rsa, .env 파일 탐색
  - 탈취한 자격 증명을 공격자 서버로 전송

2.2 실무적 위험 시나리오

시나리오 A: 핀테크 기업의 ML 엔지니어
- 목요일 오후, 금융 특화 LLM 모델을 발견
- 정상적인 벤치마크, 깔끔한 README
- Jupyter Notebook에서 테스트 실행: model = AutoModelForCausalLM.from_pretrained("finance-llama-7b")
- 결과: AWS IAM 자격 증명, SSH 키, Kubeconfig 유출
- 다음 날 아침: 공격자가 클라우드 인프라 접근

시나리오 B: 자동화된 CI/CD 파이프라인
- 모델 평가 파이프라인이 정기적으로 새 모델 다운로드 및 테스트
- 악성 모델이 파이프라인 트리거
- 결과: 빌드 인프라, 아티팩트 저장소, 배포 시스템 지속적 접근
- 서비스 체인 공격 진입점 확보

3. 국내 기업 환경 점검 항목

3.1 자산 식별 (자산 점검 체크리스트)

필수 점검 항목:

항목 점검 방법 우선순위
Transformers 버전 확인 pip show transformers | grep Version Critical
kernels 패키지 설치 여부 pip list | grep kernels Critical
캐시된 모델 검사 find ~/.cache/huggingface -name "config.json" -exec grep -l "_attn_implementation_internal" {} \; Critical
모델 로딩 코드 검색 코드베이스에서 from_pretrained 패턴 검색 High
CI/CD 파이프라인 점검 파이프라인 구성에서 Hugging Face Hub 연동 확인 High
GPU 클러스터 환경 Kubernetes/Docker 이미지 내 transformers 버전 확인 High

명령어 예시:

# 전체 환경에서 취약 버전 확인
pip list | grep transformers

# kernels 패키지 설치 여부
pip list | grep -E '(kernels|transformers\[)'

# 캐시된 모델에서 악성 필드 검색
find ~/.cache/huggingface/hub -name "config.json" -type f -exec grep -l "_attn_implementation_internal" {} \;

# 코드베이스에서 from_pretrained 사용 검토
grep -r "from_pretrained" --include="*.py" . | grep -v ".git"

3.2 로그 및 노출 지점 점검

즉시 확인 필요:

  1. 시스템 로그
  2. ~/.cache/huggingface/hub/ 디렉토리의 최근 접근 로그
  3. Python 프로세스 실행 로그
  4. 이상한 아웃바운드 네트워크 연결

  5. 네트워크 로그

  6. 알 수 없는 외부 서버로의 HTTPS 연결
  7. 비정상적인 데이터 전송 패턴
  8. Hugging Face Hub 이외의 Hugging Face 도메인 접속

  9. 파일 시스템

  10. /tmp/ 디렉토리의 의심스러운 파일
  11. 임시 파일 생성 및 삭제 패턴
  12. 권한 변경 로그

4. 실무형 체크리스트 및 대응 방안

4.1 즉시 조치 (24시간 이내)

  • [ ] 패치 적용
  • bash pip install --upgrade transformers>=5.3.0

  • [ ] 버전 검증

  • bash pip show transformers # Version: 5.3.0 이상 확인

  • [ ] 캐시된 모델 감사

  • 캐시된 모델 디렉토리 백업 후 정리
  • 악성 _attn_implementation_internal 필드 검색

  • [ ] 보안팀 통지

  • 잠재적 노출 기간(2025-08-29 ~ 2026-03-04) 동안의 모델 로딩 활동 조사 요청

  • [ ] 자격 증명 순환

  • AWS, GCP, Azure 자격 증명 재발급
  • SSH 키 교체
  • API 토큰 재발급

4.2 단기 대응 (72시간 이내)

  • [ ] 코드베이스 감사
  • 모든 from_pretrained() 호출 검토
  • trust_remote_code=True 사용 현황 파악

  • [ ] 내부 모델 레지스트리 구축

  • 공용 Hugging Face Hub 직접 접속 차단
  • 검증된 모델만 포함하는 내부 저장소 구축

  • [ ] 네트워크 모니터링 강화

  • Hugging Face Hub 이외의 Hugging Face 도메인 접속 차단
  • 알 수 없는 IP 주소에서의 접속 시도 감지

4.3 장기 개선 (1주 ~ 1개월 이내)

  • [ ] 모델 로딩 샌드박싱
  • 모델 로딩을 격리된 컨테이너에서 실행
  • 호스트 자격 증명 접근 차단
  • 아웃바운드 네트워크 제한

  • [ ] AI 보안 도구 도입

  • Cisco Model Provenance Kit: 모델 출처 검증
  • 모델 구성 파일 자동 스캔

  • [ ] 보안 정책 수립

  • 모델 로딩을 코드 실행 표면으로 인식
  • 보안 가이드라인 업데이트
  • 개발자 보안 교육

  • [ ] CI/CD 파이프라인 강화

  • 모델 로딩 전 자동 검증
  • 샌드박스 환경에서 테스트 실행

5. 위협 레벨별 대응 방안

위협 레벨 즉시 대응 (24시간) 단기 대응 (72시간) 장기 대응 (1주~1개월)
Critical 패치 적용, 자격 증명 순환, 보안팀 통지 코드베이스 감사, 내부 레지스트리 구축 샌드박싱, AI 보안 도구 도입, 보안 정책 수립
High 패치 적용, 버전 검증 캐시 감사, 네트워크 모니터링 강화 컨테이너 이미지 재빌드, CI/CD 강화
Medium 패치 적용 영향 범위 파악 개발자 교육, 문서화
Low 패치 적용 정기 업데이트 확인 모범 사례 공유

6. 탐지 룰 및 모니터링

6.1 탐지 시그니처

SIEM/EDR 탐지 룰:

rule: HuggingFace_Malicious_Config_Access
description: 악성 config.json 필드 접근 탐지
condition:
  - process_name: python
  - file_path: ~/.cache/huggingface/hub/*/config.json
  - pattern: "_attn_implementation_internal"
severity: Critical

rule: HuggingFace_Kernel_Download
description: 비정상적인 HuggingFace 커널 다운로드
condition:
  - domain: huggingface.co
  - path: */kernels/*
  - method: GET
  - unusual_frequency: true
severity: High

rule: Outbound_Exfiltration_After_Model_Load
description: 모델 로딩 후 자격 증명 유출 시도
condition:
  - process: python
  - file_access: ~/.aws/credentials OR ~/.ssh/ OR .env
  - network_outbound: unknown_server
  - time_window: 5min
severity: Critical

6.2 모니터링 점검 포인트

지속적 모니터링 항목:

  1. Hugging Face Hub 접속 로그
  2. 다운로드한 모델 ID 및 타임스탬프
  3. 비정상적인 다운로드 패턴

  4. 파일 시스템 변경

  5. ~/.cache/huggingface/ 디렉토리 변경
  6. 임시 파일 생성 및 삭제

  7. 네트워크 활동

  8. Hugging Face Hub 이외 도메인 접속
  9. 비정상적인 데이터 전송

  10. 프로세스 활동

  11. Python 프로세스의 네트워크 연결
  12. 비정상적인 자식 프로세스 생성

결론

CVE-2026-4327은 AI 생태계의 근본적인 보안 모델을 뒤흔드는 취약점입니다:

  1. 보안 경계의 실 패: trust_remote_code=False가 더 이상 안전한 보호가 아님
  2. 자동화된 공격: 표준 API 호출 하나로 무인증 RCE 가능
  3. 광범위한 노출: 22억 이상의 다운로드, 1,000만+ 모델 호스팅

실무적 권고사항:

즉시 실행:

# 1. 패치 적용
pip install --upgrade transformers>=5.3.0

# 2. 캐시 감사
find ~/.cache/huggingface/hub -name "config.json" -type f -exec grep -l "_attn_implementation_internal" {} \;

# 3. 자격 증명 순환
# AWS, GCP, Azure, SSH, API 토큰 재발급

장기 전략:
- 모델 로딩을 코드 실행 표면으로 인식
- 내부 모델 레지스트리 구축
- 샌드박스 환경에서 모델 실행
- AI 보안 도구 및 프로세스 도입

이 취약점은 AI 공급망 보안의 중요성을 보여줍니다:

  1. 모델 = 코드: 모델 파일과 설정 파일은 신뢰할 수 없는 코드로 취급해야 함
  2. 자동화의 위험: 자동화된 파이프라인은 공격의 주요 타겟
  3. 검증의 필요성: 모델 출처, 무결성, 안전성 검증 프로세스 필수

참고자료

  1. NVD
    https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2026-4327

  2. Pluto Security
    https://pluto.security/blog/unauthenticated-remote-code-execution-in-huggingface-transformers-via-config-injection/

  3. Hugging Face GitHub
    https://github.com/huggingface/transformers/security

  4. CSO Online
    https://www.csoonline.com/article/4181094/hugging-face-transformers-rce-flaw-enables-stealthy-compromise-via-ai-model-configs.html

  5. Threat Modeling
    https://threat-modeling.com/hugging-face-transformers-rce-cve-2026-4372/

  6. Cisco Model Provenance Kit
    https://github.com/cisco-ai-defense/model-provenance-kit


본 콘텐츠는 AI 기술로 생성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하시면 댓글을 통해 소중한 의견 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.

로그인

아직 댓글이 없습니다.

첫 번째 댓글을 작성해보세요!

IT 도구 서랍

→ Unix: 2025-01-15T09:30:00
→ 날짜: 1736934600

→ ASCII: ABC
→ 문자: 65 66 67

ASCII 코드표 — 클릭하면 입력란에 추가

DecHex약어설명
DecHex문자
DecHex문자

→ 유니코드: 홍길동
→ 문자: \ud64d\uae38\ub3d9