MLSecOps-сканирование находит ИИ-активы в репозитории до релиза: недели ручной работы не нужны
Сканер безопасности ИИ в платформе INFERA AI.SafeCode собирает в один реестр модели, промпты, ИИ-агентов и обучающие данные из репозитория и проверяет их до релиза, закрывая слепую зону привычных сканеров, которые ИИ-компоненты не видят.

Половина типов ИИ-активов, которые различает сканер, относится к конфигурациям и данным, а не к коду, поэтому классический статический анализ их не видит. О таких файлах, по словам авторов материала, часто не знает ни CISO (руководитель по информационной безопасности), ни команда защиты приложений.
Привычная защита кода закрывает четыре направления. SAST проверяет исходный код, SCA сторонние библиотеки, сканер секретов ищет утёкшие ключи, DAST тестирует работающее приложение. Как только в продукте появляется ИИ-компонент, эти инструменты перестают отвечать на вопрос, из чего состоит система и какие у неё дефекты. Решение предлагает материал о платформе INFERA AI.SafeCode: встроенный в неё MLSecOps-скан проверяет безопасность всего, что окружает модель машинного обучения.
ИИ-актив, по определению разработчиков, это любой артефакт в репозитории, который участвует в работе ИИ-системы. Помимо файла с весами (числами, в которых хранятся «знания» нейросети), к ним относятся:
- адаптеры, то есть небольшие надстройки для дообучения модели под задачу;
- промпты, то есть текстовые инструкции для модели;
- MCP-серверы, через которые ИИ-агент (программа, действующая от имени модели) получает инструменты;
- настройки инференса, то есть работы модели, когда она отвечает на запросы;
- обучающие данные и библиотеки машинного обучения;
- ноутбуки, то есть рабочие тетради разработчика с кодом и результатами в файлах .ipynb;
- пайплайны (цепочки автоматических шагов) и векторные хранилища (базы, где ИИ ищет документы по смыслу).
Разброс по местам хранения выглядит так: модель лежит в объектном хранилище, адаптер в соседней папке, промпт в конфиге, датасет во внешнем сервисе. Собрать такую картину вручную, по оценке авторов, займёт недели, и к моменту завершения она уже устареет. Отсюда и задача инструкции ниже, MLSecOps-сканирование: как найти все ИИ-активы в репозитории и проверить их до релиза.
Что понадобится для скана?
- Репозиторий проекта: по данным материала, для запуска нужен только он.
- Доступ к INFERA AI.SafeCode. Цены и условия подключения в материале не названы.
- Список мест, где веса лежат вне репозитория: платформа их не скачивает.
- Время на разбор находок. Сроки работы скана разработчики не называют.
Шесть шагов от репозитория до проверенного реестра
- Запустите скан. Он детерминированный, то есть читает код и конфигурации по заданным правилам и на одном и том же коде даёт одинаковый результат. Скан наполняет реестр «ИИ-активы» и одновременно заводит находки в разделе «Уязвимости» с типом MLSEC.
- Проверьте атрибуты в реестре. У каждого актива указаны имя и путь, тип, версия и дайджест (цифровой отпечаток файла), источник, подпись, лицензия, риск и проект. Источником может быть внутренний реестр, площадка моделей HuggingFace, объектное хранилище, файл, репозиторий или внешний сервис.
- Найдите статус «не проверялось». Реестр различает пять состояний, и этот статус не означает «подписи нет»: проверка просто не дотянулась до файла, например до весов вне репозитория.
- Разберите карточку актива. В ней собраны места объявления в файлах, связи и журнал изменений. Блок «Как развёрнут» показывает открытые наружу порты и метки: «аутентификация выключена», «доверие коду модели», «CORS открыт всем» (сервис принимает запросы с любых сайтов), «секрет в конфигурации».
- Закрывайте находки по уровню риска. Шкала такая: критический, высокий, средний, низкий, справочно. Связи в реестре показывают, что заденет дефект: агент использует модель, берёт инструменты у MCP-сервера и читает из векторного хранилища.
- Повторите скан перед релизом. Для промпта платформа хранит длину и слепок текста, поэтому следующий скан заметит, что инструкцию модели поменяли.
Скан проверяет окружение модели, вот перечень
Эндпоинт ниже означает адрес, по которому к модели обращаются. Pickle это формат Python, который при загрузке способен запустить код.
Агенты и MCP-серверы
[ ] инструмент выполняет команды оболочки
[ ] необратимое действие без подтверждения человека
[ ] ослаблены разрешения агента
[ ] инструмент ходит по произвольному адресу
[ ] скрытые указания модели в описании инструмента
[ ] не закреплена версия MCP-сервера
[ ] нет перечня разрешённых инструментов
[ ] учётные данные в описании сервера
Инференс и векторные хранилища
[ ] эндпоинт без аутентификации
[ ] доверие к коду из репозитория модели
[ ] база документов доступна без ключа
Обвязка, ноутбуки, промпты
[ ] открыты реестр моделей и оркестратор
[ ] чувствительные значения в выводе .ipynb
[ ] шаг пайплайна пишет в каталог моделей
Файлы модели
[ ] формат исполняет код при загрузке
[ ] опасные импорты в pickle
Допустим, в репозитории есть агент поддержки с MCP-сервером для работы с файлами, а модель подтягивается из внешнего хранилища. Скан занесёт в реестр агента, сервер, модель и связи между ними. Если версия сервера не закреплена, а инструмент запускает команды оболочки без подтверждения, это две находки MLSEC. Веса получат статус «не проверялось», а на вкладке «Агенты и MCP» вырастет счётчик «с правом выполнения».
- Читать «не проверялось» как «всё чисто». Статус выписан словами именно для того, чтобы отчёт не выглядел чище, чем есть.
- Считать моделью только файл весов и забывать про промпты и конфиги.
- Ждать, что платформа скачает веса из стороннего хранилища.
- Сохранять ноутбуки с выводом ячеек, где остались ключи.
Честная оговорка: в перечне проверок нет оценки ответов модели, поэтому галлюцинации (когда ИИ уверенно выдумывает факты) этот скан не ловит.
Что делать с этим прямо сейчас, по ролям
Руководителю ИБ. Различие «проверили» и «не дошли» даёт честную картину для внутреннего аудита. Начните со строк со статусом «не проверялось».
Разработчику. Если продукт подключён к YandexGPT или GigaChat по API, проверьте, не лежит ли ключ в файле развёртывания: такие места сканер помечает меткой «секрет в конфигурации».
Предпринимателю в РФ и СНГ. Поля «лицензия», «лицензионный риск» и «откуда лицензия» показывают ещё до релиза, на каких условиях взяты открытые модели. Внутренний реестр моделей учитывается как отдельный источник.
Автору Дзена и маркетологу. Заказываете чат-бота у подрядчика? Спросите, есть ли у него реестр ИИ-активов и сколько позиций в статусе «не проверялось».
На мой взгляд, самое ценное здесь не перечень проверок, а честный статус «не проверялось». Я бы запускал скан после каждой правки промптов и агентов, а не только перед релизом: тогда журнал изменений превращается в историю того, кто и когда поменял поведение системы. Оговорка: реестр полон ровно настолько, насколько сканер видит ваш стек, а внешние хранилища и сервисы с данными придётся проверять отдельно.
Начните с одного репозитория, где уже есть агент: первый же реестр покажет, сколько ИИ в продукте никто не объявлял.
Разберитесь в нейросетях на практике
В dzen.guru мы тестируем ИИ-инструменты и объясняем, как применять их в работе без лишней теории.
Перейти в dzen.guru
Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».
Читайте также

Детектор дипфейков встроили в IVA MCU: подмену лица ловят во время созвона, а не после платежа
Компании VisionLabs и IVA Technologies встроили детектор дипфейков в российскую платформу видеосвязи IVA MCU, и теперь подмену лица ловят прямо во время…

InfiniBand отдаёт в работу 52,8% мощности кластера против 34,2% у Ethernet
Обучение больших языковых моделей вернуло спрос на InfiniBand, сеть с предсказуемой задержкой, и ниже пошаговый разбор, как выбрать поколение, топологию и…

MCP-сервер пустил ИИ-агентов в управление доступом: у Okta, Ping и Auth0 разная готовность
Okta, Microsoft, Ping и Auth0 уже подключают ИИ-агентов к своим системам управления доступом через MCP, общий разъём между нейросетью и сервисом, но сверка…
Комментарии