Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
modelaudit — Сканер безопасности для файлов моделей ИИ/МО. Обнаруживает вредоносный код, бэкдоры и уязвимости до развертывания. | Kitploit
Инструменты/GitHubGitHub/promptfoo/modelaudit
Статический анализСтатический анализ кода (SAST)Анализ уязвимостейЭксфильтрация данныхАнализ вредоносных программDevSecOpsОбнаружение СекретовБезопасность Цепочки ПоставокБезопасность ИИ
GitHubpromptfoo/modelaudit

modelaudit

Сканер безопасности для файлов моделей ИИ/МО. Обнаруживает вредоносный код, бэкдоры и уязвимости до развертывания.

671720 ч 39 мин назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
РепозиторийСайт

ModelAudit

Обеспечьте безопасность ваших моделей ИИ перед развертыванием. Статический сканер, который обнаруживает вредоносный код, потенциальные индикаторы бэкдоров и уязвимости безопасности в файлах моделей машинного обучения — без их загрузки или выполнения.

PyPI version Python versions Code Style: ruff License Security policy

ModelAudit scan results

Полная документация | Примеры использования | Поддерживаемые форматы

Зачем нужен ModelAudit

Модели загружаются из ненадёжных реестров, проходят через CI и в итоге работают в продакшене. Традиционные инструменты SAST не анализируют опкоды pickle, структуру групп HDF5, графы proto ONNX или сигнатуры TensorFlow SavedModel — ModelAudit делает это:

  • Статическое сканирование. Модель никогда не загружается, не десериализуется и не выполняется.
  • Покрытие используемых вами форматов. Более 40 сканеров для pickle, PyTorch, SafeTensors, ONNX, TensorFlow, Keras, GGUF, архивов и конфигов.
  • Интеграция в CI. Машиночитаемый вывод (JSON, SARIF), строгий режим, коды возврата и выбираемые сканеры.
  • Прозрачность границ покрытия. Распознанные сканеры сообщают об ограниченном анализе, например, при усечённом чтении или исчерпании бюджета, а не выдают результаты как полностью покрытые.

Аналогичные инструменты: picklescan (только pickle, на Python), fickling (только pickle, на основе AST), modelscan (pickle + подмножество TensorFlow + Keras). ModelAudit обеспечивает более широкое покрытие и поставляется с нативным pickle-движком на Rust через сопутствующий пакет modelaudit-picklescan.

Быстрый старт

Требуется Python 3.10-3.13```bash pip install "modelaudit[all]"

Scan a file or directory

modelaudit model.pkl modelaudit ./models/

Export results for CI/CD

modelaudit model.pkl --format json --output results.json

root@kitploit:~
The input chunk is empty — there is no source text to translate. Please provide the actual content for chunk 3 of 23.```
$ modelaudit suspicious_model.pkl

Files scanned: 1 | Issues found: 2 critical, 1 warning

1. suspicious_model.pkl (pos 28): [CRITICAL] Malicious code execution attempt
   Why: Contains os.system() call that could run arbitrary commands

2. suspicious_model.pkl (pos 52): [WARNING] Dangerous pickle deserialization
   Why: Could execute code when the model loads

Что обнаруживает

  • Атаки с выполнением кода в файлах Pickle, PyTorch, NumPy и Joblib
  • Потенциальные индикаторы бэкдора — подозрительные паттерны весов, аномальные тензоры или сигналы скрытого кода
  • Встроенные секреты — ключи API, токены и учётные данные в весах модели или метаданных
  • Сетевые индикаторы — URL, IP-адреса и использование сокетов, которые могут обеспечить эксфильтрацию данных
  • Эксплойты архивов — обход пути, атаки через симлинки в файлах ZIP/TAR/7z
  • Небезопасные операции ML — Lambda-слои, пользовательские операции, TorchScript/JIT, инъекции шаблонов
  • Риски цепочки поставок — подделка, нарушения лицензий, подозрительные конфигурации

Поддерживаемые форматы

ModelAudit включает 45 зарегистрированных сканеров, охватывающих форматы моделей, архивов и конфигураций:

Кроме того, сканеры для ZIP, TAR, 7-Zip, OCI-слоёв, Jinja2-шаблонов, JSON/YAML-метаданных, манифестов, карточек моделей, текстовых файлов и распознавания RAR. RAR-архивы помечаются как неподдерживаемые/fail-closed, а не пропускаются.

Структурно корректные протобуфы TensorFlow SavedModel и MetaGraph также распознаются при переименовании в суффиксы, не относящиеся к моделям. Модели CoreML также распознаются при переименовании, причём о неполном покрытии сообщается явно. Файлы SafeTensors с чрезмерно большим, но правдоподобным фреймингом сохраняются для ограниченного, неокончательного анализа под суффиксами, которые в остальном никем не заявлены, например .jpg. Структурно правдоподобные контрольные точки Flax/JAX MessagePack также распознаются при переименовании в суффиксы, не относящиеся к моделям; переименованные структуры, которые не удаётся полностью классифицировать, помечаются как неполное покрытие. Структурированные метаданные контрольных точек JAX/Orbax JSON также распознаются при переименовании; чрезмерно большие неоднозначные кандидаты помечаются как неполное покрытие; наблюдаемые паттерны безопасности в ограниченном проверенном префиксе могут по-прежнему сообщаться консервативно.

Ознакомиться с полной документацией по форматам

Удалённые источники

Сканируйте модели непосредственно из удалённых реестров и облачного хранилища:```bash

Hugging Face

modelaudit https://huggingface.co/gpt2 modelaudit hf://microsoft/DialoGPT-medium

Cloud storage

modelaudit s3://bucket/model.pt modelaudit gs://bucket/models/

MLflow registry

Non-local artifact stores: export MODELAUDIT_MLFLOW_ALLOWED_ARTIFACT_URIS=s3://trusted-bucket/models

modelaudit models:/MyModel/Production

JFrog Artifactory (files and folders)

Auth: export JFROG_API_TOKEN=...

modelaudit https://company.jfrog.io/artifactory/repo/model.pt modelaudit https://company.jfrog.io/artifactory/repo/models/

DVC-tracked models

modelaudit model.dvc

root@kitploit:~
### Переменные окружения для аутентификации

- `HF_TOKEN` для приватных репозиториев Hugging Face
- `AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY` (и опционально `AWS_SESSION_TOKEN`) для S3
- `GOOGLE_APPLICATION_CREDENTIALS` для GCS
- `MLFLOW_TRACKING_URI` для доступа к реестру MLflow
- `MODELAUDIT_MLFLOW_ALLOWED_ARTIFACT_URIS` для нелокальных корневых каталогов артефактов MLflow (префиксы URI через запятую)
- Используйте конкретные корневые пути бэкенда, например `s3://bucket/prefix`; логические URI `models:/` или `runs:/`, а также процентно-закодированные удалённые пути отклоняются.
- `JFROG_API_TOKEN` или `JFROG_ACCESS_TOKEN` для JFrog Artifactory
- `MODELAUDIT_JFROG_ALLOWED_HOSTS` для пользовательских имён хостов JFrog через запятую, которым могут передаваться учётные данные
- `MODELAUDIT_JFROG_ALLOWED_REDIRECT_HOSTS` для внешних имён хостов перенаправления через запятую, которые могут загружаться без учётных данных
- Храните учётные данные в переменных окружения или в менеджере секретов и никогда не фиксируйте токены/ключи в репозитории.

## Установка```bash
# Broad scanner coverage (recommended; excludes the TensorFlow runtime and platform-specific TensorRT)
pip install "modelaudit[all]"

# Core only (static scanners, pickle, NumPy, archives, manifests, metadata)
pip install modelaudit

# Specific frameworks (TensorFlow installs on Python 3.11-3.12; ONNX installs on Python 3.10-3.12)
pip install "modelaudit[tensorflow,pytorch,h5,onnx,safetensors]"

# CI/CD environments
pip install "modelaudit[all-ci]"

# On Python 3.11-3.12, add TensorFlow only when you need runtime-dependent checkpoint or weight analysis
pip install "modelaudit[all,tensorflow]"

# Docker
docker run --rm -v "$(pwd)":/app ghcr.io/promptfoo/modelaudit:latest model.pkl

Дополнение ONNX, включая ONNX-часть modelaudit[all], упаковано для Python 3.10-3.12. Дополнения, содержащие PyTorch, требуют Python 3.10-3.12 или стандартного CPython 3.13 (с поддержкой GIL); патченные wheel-пакеты PyTorch 2.13 не поддерживают free-threaded CPython 3.13t. Используйте стандартный CPython, поскольку встроенный сканер pickle в ModelAudit также не поддерживает CPython 3.13t. На Apple Silicon дополнения, содержащие PyTorch, требуют macOS 14 или новее, поскольку wheel-пакеты рассчитаны на macosx_14_0_arm64; установка только ядра по-прежнему доступна для статического сканирования на macOS 11-13.

Параметры CLI

Основные команды:```bash modelaudit [PATHS...] # Default scan command modelaudit scan [OPTIONS] PATHS... # Explicit scan command modelaudit scan --list-scanners # List scanner IDs for targeted scans modelaudit metadata [OPTIONS] PATH # Extract model metadata safely (no deserialization by default) modelaudit doctor [--show-failed] # Diagnose scanner/dependency availability modelaudit debug [--json] [--verbose] # Environment and configuration diagnostics modelaudit cache [stats|clear|cleanup] [OPTIONS]

root@kitploit:~
Общие параметры сканирования:```text
--format {text,json,sarif}   Output format (default: auto-detected)
--output FILE                Write results to file
--strict                     Fail on warnings, scan all file types, strict license validation
--sbom FILE                  Generate CycloneDX SBOM
--stream                     Process files one-by-one; remote downloads are deleted after scanning
--assume-shard-family        Treat explicitly listed cross-directory shards as one model family
--max-size SIZE              Size limit (e.g., 10GB)
--timeout SECONDS            Override scan timeout
--dry-run                    Preview what would be scanned
--verbose / --quiet          Control output detail
--blacklist PATTERN          Additional patterns to flag
--no-cache                   Disable result caching
--cache-dir DIR              Set cache directory for downloads and scan results
--progress                   Force progress display
--scanners LIST              Only run selected scanners (IDs/classes; comma-separated or repeated)
--exclude-scanner NAME       Exclude a scanner from the active set (comma-separated or repeated)
--list-scanners              List scanner IDs, class names, extensions, and dependencies

Выбор целевого сканера:```bash

Discover scanner IDs and class names

modelaudit scan --list-scanners modelaudit scan --list-scanners --format json

Run only selected scanners

modelaudit scan ./models --scanners pickle,tf_savedmodel modelaudit scan ./model.pkl --scanners PickleScanner

Run the default scanner set except a noisy or slow scanner

modelaudit scan ./models --exclude-scanner weight_distribution

For container formats, include both the container scanner and nested scanner

modelaudit scan ./archive.zip --scanners zip,pickle

root@kitploit:~
`--scanners` исходит из явного списка разрешённых. `--exclude-scanner` исключает сканеры либо из этого списка, либо из набора сканеров по умолчанию. Выбор сканеров отражается в JSON-выводе в поле `scanner_selection`.

Для удалённых папок ModelAudit ограничивает загрузки по расширениям выбранных сканеров, когда это безопасно. Маршрутизация переименованных обёрток на основе содержимого применяется после получения; сканируйте прямой URL файла, когда имена файлов в репозитории могут быть намеренно вводящими в заблуждение.

## Извлечение метаданных```bash
# Human-readable summary (safe default: no model deserialization)
modelaudit metadata model.safetensors

# Machine-readable output
modelaudit metadata ./models --format json --output metadata.json

# Focus only on security-relevant metadata fields
modelaudit metadata model.onnx --security-only

--trust-loaders включает загрузчики метаданных сканера, которые могут десериализовывать содержимое модели. Используйте это только с доверенными артефактами в изолированных средах.

Коды выхода

  • 0: Проблемы безопасности не обнаружены
  • 1: Обнаружены проблемы безопасности
  • 2: Ошибки сканирования

Телеметрия и конфиденциальность

ModelAudit включает телеметрию для надёжности продукта и аналитики использования.

  • Собираемые метаданные могут включать использование команд и функций, метаданные времени или размера сканирования и загрузки, использование сканеров/типов файлов, стабильные идентификаторы правил или CVE, агрегированные данные по уровням серьёзности, зарегистрированные расширения файлов, общие категории источников или провайдеров, а также метаданные версии среды выполнения, платформы и CI.
  • Телеметрия не включает необработанные локальные пути, имена файлов, идентификаторы или названия моделей, идентификаторы репозиториев или артефактов, ключи бакетов или объектов, пути удалённых URL, произвольный текст проблем или ошибок, строки userinfo в URL, строки запросов, фрагменты или содержимое бинарных файлов моделей.
  • Пакетные установки включают телеметрию по умолчанию. Телеметрия автоматически отключается при установке CI=true или IS_TESTING=true, а также в редактируемых установках для разработки, если не задано MODELAUDIT_TELEMETRY_DEV=1. События, отправляемые из других CI-провайдеров (TeamCity, CodeBuild, Bitbucket Pipelines, Jenkins), помечаются isRunningInCi=true, чтобы их можно было отфильтровать в дальнейшем.
  • Постоянный псевдонимный идентификатор пользователя хранится в ~/.promptfoo/promptfoo.yaml для межинструментальной корреляции с Promptfoo, и каждая сессия телеметрии использует новый идентификатор сессии. Существующие идентификаторы из ~/.modelaudit/user_config.json переносятся при первом запуске после обновления. Устаревшее значение email в этом файле, если оно присутствует, может быть прикреплено к аналитическому профилю пользователя.

Явно отключите телеметрию с помощью любой из переменных окружения:```bash export PROMPTFOO_DISABLE_TELEMETRY=1

or

export NO_ANALYTICS=1

root@kitploit:~
Чтобы включить эту функцию при редактируемой/разработочной установке:```bash
export MODELAUDIT_TELEMETRY_DEV=1

Примеры вывода```bash

JSON for CI/CD pipelines

modelaudit model.pkl --format json --output results.json

SARIF for code scanning platforms

modelaudit model.pkl --format sarif --output results.sarif

root@kitploit:~
## Устранение неполадок

- Запустите `modelaudit doctor --show-failed`, чтобы вывести список недоступных сканеров и отсутствующих дополнительных зависимостей.
- Запустите `modelaudit debug --json`, чтобы собрать диагностику окружения/конфигурации для отчётов об ошибках.
- Используйте `modelaudit cache cleanup --max-age 30` для безопасного удаления устаревших записей кэша.
- Если `pip` устанавливает более старую версию, проверьте поддержку Python (`python --version`; ModelAudit поддерживает Python 3.10-3.13).
- Дополнительные сведения по устранению неполадок и авторизации в облаке см. в:
  - https://www.promptfoo.dev/docs/model-audit/
  - https://www.promptfoo.dev/docs/model-audit/usage/

## Документация

- **[Полная документация](https://www.promptfoo.dev/docs/model-audit/)** — установка, настройка и расширенное использование
- **[Примеры использования](https://www.promptfoo.dev/docs/model-audit/usage/)** — интеграция с CI/CD, удалённое сканирование, генерация SBOM
- **[Поддерживаемые форматы](https://www.promptfoo.dev/docs/model-audit/scanners/)** — подробная документация по сканерам
- **[Политика поддержки](https://github.com/promptfoo/modelaudit/blob/main/SUPPORT.md)** — поддерживаемые версии Python/ОС и политика сопровождения
- **[Модель безопасности и ограничения](https://github.com/promptfoo/modelaudit/blob/main/docs/user/security-model.md)** — что ModelAudit гарантирует, а что нет
- **[Матрица совместимости](https://github.com/promptfoo/modelaudit/blob/main/docs/user/compatibility-matrix.md)** — форматы файлов и дополнительные зависимости
- **[Выбор сканеров](https://github.com/promptfoo/modelaudit/blob/main/docs/user/scanner-selection.md)** — целевые списки разрешённых сканеров и исключения
- **[Руководство по извлечению метаданных](https://github.com/promptfoo/modelaudit/blob/main/docs/user/metadata-extraction.md)** — безопасные рабочие процессы с метаданными и рекомендации по `--trust-loaders`
- **[Руководство по работе офлайн/в изолированной сети](https://github.com/promptfoo/modelaudit/blob/main/docs/user/offline-air-gapped.md)** — безопасная работа без доступа в интернет
- **Устранение неполадок** — запустите `modelaudit doctor --show-failed`, чтобы проверить доступность сканеров

## Связанные пакеты

- **[`modelaudit-picklescan`](https://pypi.org/project/modelaudit-picklescan/)** — автономный pickle-сканер на базе Rust, используемый сканерами ModelAudit для pickle, PyTorch, ExecuTorch и PyTorch-ZIP. Установите его напрямую, если вам нужен только анализ pickle (как библиотека, а не CLI) и не требуется полный набор сканеров.

## Сообщение об уязвимостях

Не открывайте публичные issue при подозрении на уязвимости. О порядке скоординированного раскрытия см. в [SECURITY.md](https://github.com/promptfoo/modelaudit/blob/main/SECURITY.md).

## Участие в разработке

Принимаются issue, запросы функций и PR. Подробнее см. в [CONTRIBUTING.md](https://github.com/promptfoo/modelaudit/blob/main/CONTRIBUTING.md).

## Лицензия

Лицензия MIT — подробнее см. в [LICENSE](https://github.com/promptfoo/modelaudit/blob/main/LICENSE).
Скачать инструмент
ФорматРасширенияРиск
Pickle.pkl, .pickle, .dillHIGH
PyTorch.pt, .pth, .ckpt, .binHIGH
Joblib.joblibHIGH
NumPy.npy, .npzHIGH
R Serialized.rds, .rda, .rdata, корректные по сигнатуре переименованные артефакты рабочей областиHIGH
TensorFlow.pb, .meta, каталоги SavedModelMEDIUM
Keras.h5, .hdf5, .kerasMEDIUM
ONNX.onnxMEDIUM
CoreML.mlmodel, структурно корректные переименованные артефактыLOW
MXNet*-symbol.json, *-NNNN.params, структурно корректный переименованный символьный JSONLOW
NeMo.nemo, переименованные архивы с корневым конфигомMEDIUM
CNTK.dnn, .cmf, корректные по сигнатуре переименованные артефактыMEDIUM
RKNN.rknn, корректные по сигнатуре артефакты под непротиворечащими переименованными суффиксамиMEDIUM
Torch7Сериализованные артефакты (.t7, .th, .net или переименованные)HIGH
CatBoost.cbmMEDIUM
XGBoost.bst, .model, .json, .ubj, UBJSON без расширенияMEDIUM
LightGBM.lgb, .lightgbm, .model, корректные по сигнатуре переименованные артефактыMEDIUM
LlamafileИсполняемые обёртки (.llamafile, .exe, без расширения или переименованные)MEDIUM
TorchServe.marHIGH
SafeTensors.safetensorsLOW
GGUF/GGML.gguf, .ggml, .ggmf, .ggjt, .ggla, .ggsa, корректные по сигнатуре переименованные артефактыLOW
JAX/Flax.msgpack, .flax, .orbax, .jax, .checkpoint, .orbax-checkpointLOW
TFLite.tflite, корректные по сигнатуре артефакты под непротиворечащими переименованными суффиксамиLOW
ExecuTorch.ptl, .pte, корректные по сигнатуре автономные артефакты под непротиворечащими переименованными суффиксамиLOW
TensorRT.engine, .plan, .trtLOW
PaddlePaddle.pdmodel, .pdiparamsLOW
OpenVINO.xmlLOW
Skops.skopsHIGH
PMML.pmmlLOW
Compressed Wrappers.gz, .bz2, .xz, .lz4, .zlibMEDIUM