# A20: Исполнение вредоносного кода при загрузке файла модели (Malicious model deserialization / pickle)

> Файл модели из недоверенного источника может выполнить посторонний код в момент загрузки, особенно если сохранён в небезопасном формате сериализации. Под ударом рабочие станции разработчиков, конвейер сборки, серверы исполнения моделей и исследовательские среды.

- Канонический HTML: [/threats/a20-malicious-model-deserialization-pickle](https://ai-first.tech/threats/a20-malicious-model-deserialization-pickle)
- Язык: русский
- Редакционный принцип: защитный контекст без вредоносных полезных нагрузок и инструкций обхода.

## Домен

Модель и цепочка поставки

## Как проявляется риск

Специалист по данным скачивает модель из внешнего репозитория и открывает её штатным инструментом. Некоторые форматы хранения, например pickle, допускают исполнение кода при чтении файла. Небезопасный загрузчик запускает скрытый код с правами пользователя или сервиса. Граница доверия нарушается из-за того, что файл модели воспринимается как данные, хотя ведёт себя как программа. Дальше компрометация распространяется на доступные этой учётной записи системы.

## Влияние на бизнес

- **Безопасность.** Злоумышленник получает точку опоры на рабочей станции, в конвейере сборки или на сервере исполнения моделей.
- **Данные.** Под угрозой обучающие наборы, исходный код и учётные данные, доступные из скомпрометированной среды.
- **Операции.** Восстановление доверия к конвейеру сборки останавливает выпуск моделей и продуктов.

## Где риск наиболее вероятен

- Исследовательские среды с загрузкой внешних моделей
- Рабочие станции специалистов по данным
- Автоматическая сборка с подтягиванием моделей
- Серверы исполнения моделей

## Кому и что решать

- **ИТ-директор.** Утвердить перечень безопасных форматов моделей и запретить загрузку с исполнением произвольного кода.
- **Директор по кибербезопасности.** Обеспечить сканирование файлов моделей, загрузку в изолированной среде и сетевую изоляцию сред разработки.
- **Владелец бизнес-процесса.** Принять, что проверка внешней модели перед использованием обязательна, даже если это замедляет эксперимент.

## Признаки для службы мониторинга

- В репозиториях и средах присутствуют файлы моделей в формате pickle
- Для загрузки модели применяются нестандартные скрипты
- При загрузке модели возникает неожиданная сетевая активность или запускаются процессы
- Артефакт модели не удаётся воспроизвести из исходных данных
- Модели загружаются напрямую из внешних репозиториев

## Меры защиты

- **Перечень безопасных форматов моделей** (организационная). Закрепить стандартом форматы, не допускающие исполнения кода, и порядок исключений.
- **Запрет загрузки произвольного кода** (техническая). Настроить загрузчики так, чтобы они не исполняли код из файла модели.
- **Загрузка в изолированной среде** (техническая). Открывать внешние модели в песочнице без доступа к рабочим данным и сети.
- **Сканирование файлов моделей** (техническая). Проводить статический и динамический анализ артефактов до допуска в рабочие среды.
- **Контроль активности при загрузке** (мониторинг). Отслеживать сетевые соединения и запуск процессов на станциях и серверах в момент загрузки моделей.

## Вопросы команде и поставщику

- В каких форматах хранятся используемые модели?
- Где и как открываются модели из внешних источников?
- Проверяются ли файлы моделей перед загрузкой?
- Есть ли у сред разработки доступ к рабочим системам и сети?

## Показатели контроля

- Доля моделей в небезопасных форматах сериализации
- Доля внешних моделей, прошедших сканирование до загрузки
- Число случаев неожиданной активности при загрузке моделей

## Первые 30 дней

- Найти файлы моделей в небезопасных форматах в репозиториях и средах
- Ввести загрузку внешних моделей только в изолированной среде
- Включить сканирование артефактов в конвейер сборки

## Классы решений

- Защита цепочки поставок AI
- Безопасность жизненного цикла ML (MLSecOps)
- Защита конечных устройств

## Сопоставления

- OWASP: LLM03, LLM04
- MITRE: ATLAS: ML Supply Chain
- NIST: NIST AI 100-2: Poisoning

## Первоисточники

- [OWASP: LLM03:2025 Supply Chain](https://genai.owasp.org/llmrisk/llm032025-supply-chain/) — Цепочка поставки моделей, данных и зависимостей.
- [OWASP: LLM04:2025 Data and Model Poisoning](https://genai.owasp.org/llmrisk/llm042025-data-and-model-poisoning/) — Отравление данных и моделей.
- [arXiv: Models Are Codes: Security Risks of Loading Untrusted Models](https://arxiv.org/abs/2402.04354) — Исследование рисков загрузки моделей и datasets.
- [arXiv: SafePickle research](https://arxiv.org/) — Риски unsafe deserialization в ML-моделях.

## Ограничение

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