AI Model Security Training: What a Platform Must Teach

개요

AI 모델 보안 교육은 모델 파일 자체의 취약점, 특히 불신 데이터를 역직렬화하여 발생하는 CWE-502 취약점에 초점을 맞춰야 하며, 이는 모델 동작을 겨냥하는 프롬프트 주입이나 RAG 중독과는 다른 차원의 문제입니다.

주요 내용

  • PyTorch 체크포인트의 본질: PyTorch 체크포인트(.pt, .bin)는 단순한 데이터가 아닌 프로그램이며, torch.load는 이를 해석하는 인터프리터 역할을 합니다. 이 과정에서 임의의 함수를 가져와 호출할 수 있는 권한 상승 취약점이 발생할 수 있습니다.
  • CVE-2025-24357 사례: vLLM에서 torch.load를 사용하여 체크포인트를 로드할 때 weights_only=False의 기본값이 악용되어, 악성 체크포인트가 추론 호스트에서 코드 실행 권한을 획득한 사례가 있었습니다. PyTorch 2.6부터는 이 기본값이 True로 변경되어 보호 기능을 제공합니다.
  • Hugging Face Transformers의 취약점: CVE-2024-11393은 Hugging Face Transformers 라이브러리에서 MaskFormer 모델 파일 파싱 중 발생하는 역직렬화 RCE 취약점으로, CVSS 8.8의 심각도를 가집니다.
  • 악성 체크포인트 식별: 악성 체크포인트를 식별하는 핵심은 pickletools 등을 사용하여 GLOBAL 및 REDUCE와 같은 Opcode의 존재 여부를 확인하는 것입니다. posix나 builtins.eval과 같은 모듈 임포트가 없는 순수 텐서 정의 체크포인트는 안전합니다.
  • 보안 결과 매핑의 중요성: "의심스러운 모델을 다운로드했다"와 같은 일반적인 발견은 보안 조직에서 처리하기 어렵습니다. 이를 MITRE ATT&CK for Cyber Situational Awareness (CAL) taxonomies의 AML.T0010 (AI Supply Chain Compromise) 또는 AML.T0018.002 (Embed Malware)와 같이 구체적인 기술 및 ID로 매핑해야 실질적인 조치가 이루어집니다.
  • 필수 교육 구성 요소:
  • Artifact triage: pickle, .pt, .bin, joblib, Keras H5 (Lambda layers 포함)와 같이 로드 시 코드를 실행하는 포맷과 safetensors, GGUF, ONNX (주의 필요)와 같이 실행하지 않는 포맷을 구분합니다.
  • Hands-on inspection: pickletools, fickling, modelscan 등의 도구를 사용하여 모델 파일을 직접 검사하는 실습을 포함합니다.
  • Provenance: 모델의 해시를 생성하고 서명하며, 승인된 모델을 내부 레지스트리에 미러링하고 태그 대신 다이제스트로 고정하여 공급망 공격을 방지합니다.
  • Containment: 추론 워커를 비-루트 권한으로 실행하고, 불필요한 클라우드 인스턴스 자격 증명을 제거하며, 필요한 엔드포인트로만 아웃바운드 통신을 제한합니다.
  • Detection: 모델 파일 로드 후 Python 프로세스가 쉘을 실행하거나 예상치 못한 도메인을 확인하는 등의 이상 징후를 텔레메트리에서 탐지하는 방법을 교육합니다.
  • 스캐너의 한계: 스캐너는 휴리스틱 기반이며, 우회될 수 있으므로 근본적인 해결책이 될 수 없습니다. 포맷 마이그레이션과 프로비넌스가 더 견고한 해결책입니다.
  • API 사용 시 고려 사항: 호스팅된 API를 통해 모델을 사용하는 경우, 아티팩트 리스크는 제공업체에 있으며, 구매자는 제공업체의 가중치 검증 방식과 애플리케이션 계층의 노출에 집중해야 합니다.
  • 행동 공격과의 구분: 프롬프트 주입, RAG 중독, 탈옥과 같은 행동 공격은 별도의 훈련 분야로 다루어져야 합니다.

시사점

AI 모델 보안 교육은 단순한 취약점 나열을 넘어, 모델 파일 자체의 역직렬화 취약점과 같은 근본적인 보안 문제를 다루고, 이를 식별 및 방지하기 위한 실질적인 도구와 방법론을 교육해야 하며, 보안 발견 사항을 체계적인 분류 체계에 매핑하여 효과적인 대응을 유도해야 합니다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions