머신러닝 실험, 데이터셋, 모델을 추적하고 시각화하며 관리하는 Python 라이브러리 및 호스팅 플랫폼입니다.
protectai/modelscan
모델 파일을 로드하기 전에 내부에 숨겨진 안전하지 않은 코드를 탐지해 모델 직렬화 공격을 방어하는 스캐너입니다.
- 스타
- 792
- 포크
- 174
- 열린 이슈
- 105
- 마지막 커밋
- 지난달
어떤 프로젝트인가요?
ModelScan은 직렬화 과정에서 머신러닝 모델 파일에 삽입된 안전하지 않은 코드를 검사합니다. 악성 pickle 기반 모델을 로드하면 공격자 코드가 즉시 실행되어 자격 증명이나 데이터가 탈취되거나 모델 출력이 오염될 수 있습니다. ModelScan은 파일을 바이트 단위로 읽고 알려진 위험 코드 시그니처와 대조하므로 모델을 실행하지 않고도 이러한 위험을 방지합니다.
H5, Pickle, SavedModel 형식을 지원하며, pickle, dill, joblib 또는 cloudpickle을 사용하는 PyTorch, TensorFlow, Keras, scikit-learn, XGBoost 및 유사 라이브러리로 저장한 모델을 검사합니다. 탐지된 문제의 심각도는 LOW부터 CRITICAL까지 분류됩니다. 결과는 콘솔에 출력하거나 JSON으로 내보낼 수 있으며, 설정 파일을 통해 사용자 지정 보고 형식을 구성할 수 있습니다.
pip으로 설치할 수 있으며, 명령줄에서 로컬 모델 파일을 검사하거나 Python 코드에서 호출할 수 있습니다. 종료 코드는 검사 결과가 정상인지, 문제가 발견되었는지, 오류가 발생했는지를 구분하므로 CI/CD 파이프라인에 쉽게 통합할 수 있습니다.
핵심 기능
- 01H5, Pickle, SavedModel 형식의 모델 파일을 로드하지 않고 검사합니다.
- 02PyTorch, TensorFlow, Keras, scikit-learn, XGBoost 모델을 지원합니다.
- 03탐지된 안전하지 않은 코드의 심각도를 LOW부터 CRITICAL까지 분류합니다.
- 04결과를 콘솔이나 JSON으로 출력하며, 설정 파일을 통해 사용자 지정 형식을 지원합니다.
- 05스크립트 및 CI에서 사용할 수 있도록 Python API와 종료 코드를 제공하는 CLI를 지원합니다.
활용 사례
- 개발 환경에서 로드하기 전에 서드파티 또는 Hugging Face 모델을 검사합니다.
- 릴리스 전에 학습 파이프라인에서 생성된 모델이 공급망 변조를 겪었는지 확인합니다.
- CI/CD에서 모델 배포를 제어해 문제가 표시된 모델이 프로덕션에 배포되지 않도록 차단합니다.
빠른 시작
- 1
PyPI에서 ModelScan 설치하기
pip install modelscan - 2
로컬 모델 파일 스캔하기
modelscan -p /path/to/model_file.pkl
사용 전 알아둘 점
- 일부 모델 형식(H5, Pickle, SavedModel)과 Pickle 파생 형식만 지원합니다.
- TensorFlow 및 HDF5를 스캔하려면 추가 패키지를 설치해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- modelscan은(는) 무엇인가요?
- 모델 파일을 로드하기 전에 내부에 숨겨진 안전하지 않은 코드를 탐지해 모델 직렬화 공격을 방어하는 스캐너입니다. ModelScan은 직렬화 과정에서 머신러닝 모델 파일에 삽입된 안전하지 않은 코드를 검사합니다. 악성 pickle 기반 모델을 로드하면 공격자 코드가 즉시 실행되어 자격 증명이나 데이터가 탈취되거나 모델 출력이 오염될 수 있습니다. ModelScan은 파일을 바이트 단위로 읽고 알려진 위험 코드 시그니처와 대조하므로 모델을 실행하지 않고도 이러한 위험을 방지합니다.
- modelscan은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- modelscan은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- modelscan은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. modelscan의 마지막 커밋은 2026년 9월 28일입니다.
- modelscan은(는) 어디에 사용할 수 있나요?
- 개발 환경에서 로드하기 전에 서드파티 또는 Hugging Face 모델을 검사합니다. 릴리스 전에 학습 파이프라인에서 생성된 모델이 공급망 변조를 겪었는지 확인합니다. CI/CD에서 모델 배포를 제어해 문제가 표시된 모델이 프로덕션에 배포되지 않도록 차단합니다.
- modelscan는 어떻게 설치하나요?
- PyPI에서 ModelScan 설치하기: pip install modelscan 로컬 모델 파일 스캔하기: modelscan -p /path/to/model_file.pkl
- modelscan은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/protectai/modelscan
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Google Cloud Advanced Solutions Lab의 Google Cloud ML 및 생성형 AI 과정 자료: 노트북, 실습, 코드 샘플
Microsoft가 제공하는 12주 24강 초급 AI 커리큘럼으로, 기호 AI, 신경망, 컴퓨터 비전, NLP, 윤리를 다루며 PyTorch와 TensorFlow 노트북을 제공합니다.
Keras 3는 JAX, TensorFlow, PyTorch에서 실행되고 추론에는 OpenVINO도 사용할 수 있는 딥러닝 프레임워크입니다.
ONNX, TensorFlow, PyTorch, Core ML 등 다양한 형식을 지원하는 신경망·딥러닝·머신러닝 모델 뷰어입니다.
ONNX 형식으로 내보낸 ML 모델 실행을 위한 크로스 플랫폼 가속기이며, PyTorch 스크립트 학습도 지원합니다.