ai supply chain security; справочники Firewall и
Skills несут полную механику.
1. Безопасность цепочки поставок ИИ для агентов, на шлюзе
Контрольная точка — это relay-путь. Была ли возможность зарегистрирована вручную, автоустановлена агентом или вытянута из реестра сообщества, её первый вызов инструмента пересекаетapi.orcarouter.ai — и именно там Firewall его оценивает.
Четыре контроля комбинируются в единую позицию:
MCP-шлюз, оценка каждого вызова
Каждый
tools/call оценивается относительно вашей политики до отправки —
манифест никогда не является источником истины.Риск-полосы навыков и карантин
Установленные возможности сканируются, оцениваются и удерживаются на проверку,
пока человек их не одобрит.
Зашифрованные учётные данные MCP
Секреты аутентификации сервера шифруются в покое и инъектируются при отправке —
никогда не раскрываются модели, агенту или аргументам вызова.
Egress allow-lists
Закрепите, куда вызовы инструментов могут отправлять данные, чтобы
скомпрометированная зависимость не могла эксфильтровать на хост, который вы
никогда не одобряли.
Обнаружение — на шлюзе, при первом использовании — а не в вашем менеджере пакетов
или файловой системе. Это намеренно: это единственный путь, который видит каждого
агента и каждый вызов инструмента независимо от того, как возможность туда попала.
2. Угроза: зависимость, которая растёт после того, как вы ей доверились
| Вектор | Что происходит |
|---|---|
| Rug-pull | Зарегистрированный MCP-сервер добавляет инструмент (shell.exec, новый fetch), который вы никогда не одобряли. |
| Расползание навыка | Установленный навык использует инструменты или хосты, которые его манифест никогда не объявлял. |
| Кража учётных данных | Реализация инструмента скомпрометированного сервера читает собственный секрет аутентификации, чтобы позвонить домой. |
| Egress-эксфильтрация | Цепочка retrieve→send отправляет ваши данные на хост, контролируемый злоумышленником. |
3. Один конкретный пример — регистрация и закрепление MCP-сервера
Вы регистрируете сторонний MCP-сервер из консоли (Settings → Firewall → MCP servers; запись требует Developer+). Секрет аутентификации сервера хранится зашифрованным — вы предоставляете его один раз, шлюз инъектирует его при отправке, и он маскируется при каждом чтении после этого. Запись MCP-сервера несёт:| Поле | Значения |
|---|---|
auth_mode | none, bearer, oauth, basic |
status | ok, degraded, down (устанавливается health-зондом) |
credentials | зашифрованы в покое, никогда не возвращаются в открытом виде |
/api/workspace/firewall/*), которая требует Developer+, а не relay-ключа —
регистрация, зондирование и написание правил происходят на плоскости управления:
tool_name_glob: <server>.* до pending_approval, пока вы не увидите
чистую историю вызовов — каждый вызов от этого сервера удерживается для человека до
запуска. Как только вы ему доверитесь, ослабьте правило до audit или allow. С
этого момента MCP-шлюз оценивает каждый tools/call на поверхности mcp до
отправки — так что если rug-pull позже добавит необъявленный инструмент, ваша
политика, а не манифест сервера, решает, запустится ли он.
4. Риск-полосы навыков и карантин
Каждая устанавливаемая возможность — зарегистрировали ли вы её или шлюз автообнаружил её во время выполнения — пропускается через сканер навыков. Находки сворачиваются в риск-полосу и режим применения:Риск-полосы
Риск-полосы
low · medium · high · critical. Полоса выводится из детерминированных
проходов сканера над манифестом и объявленными областями (использование
необъявленного инструмента, сетевой egress вне одобренных областей, небезопасные
записи в файловую систему, текст манифеста в форме инъекции).Режимы применения
Режимы применения
allow (решают ваши правила политики), quarantine (любой не-deny вердикт
эскалирует до pending_approval — человек одобряет каждый вызов), block
(принудительный deny на всех инструментах этого навыка независимо от правил).
Навык полосы high помещается в карантин автоматически; critical блокируется.Почему автообнаруженное = всегда в карантине
Почему автообнаруженное = всегда в карантине
Возможность, которую агент самоустанавливает, или инструмент, который добавляет
rug-pull, удерживается в
pending_approval независимо от своей оценки
сканирования, пока человек её не проверит. Оператор не может тихо добавить
инструмент и заставить ваших агентов начать его использовать.5. Egress allow-lists — сдержите «звонок домой»
Самый разрушительный исход цепочки поставок — скомпрометированная зависимость, которая эксфильтрует. Поверхностьegress Firewall оценивает исходящий адрес
назначения (host / IP / CIDR), который сообщает инструмент, так что вы можете
закрепить, куда данным разрешено идти.
Вы пишете правило egress сами: host/CIDR allow-list с предикатом cidr_match
запрещает всё вне списка. Сочетайте его с правилом последовательности, которое
разрывает цепочку retrieve→egress, и отравленный инструмент, пытающийся отправить
извлечённый документ на неизвестный хост, запрещается на шлюзе.
6. Зашифрованные учётные данные — скомпрометированный сервер не может прочитать ваши ключи
Секреты аутентификации сервера шифруются в покое и инъектируются шлюзом во время отправки. Они никогда не достигают модели, агента или аргументов вызова инструмента — так что скомпрометированный или вредоносный сервер не может эксфильтровать ваши API-ключи, читая собственный блоб учётных данных. Консоль всегда возвращает секрет замаскированным — даже Admin. Расшифрованное значение выдаётся ровно по одному пути: запрос, несущий токен с областью firewall-gateway (выделенный тип токена, который Admin явно создаёт для шлюза/прокси), так что обычный утёкший relay-ключ не может перечислить ваши учётные данные MCP.7. Сворачиваем для аудита
Управление цепочкой поставок — это также артефакт аудита. OrcaRouter маппится на OWASP Top 10 for LLM Applications — включая контроль LLM05 Supply Chain — в рамках комплаенс-движка, наряду с фреймворками вродеsoc2, iso_27001,
iso_42001, nist_ai_rmf и eu_ai_act.
Установка комплаенс-пакета (POST /api/compliance/packs/:key/install, рабочее
пространство Admin, платный план) материализует соответствующие guardrails и
политики firewall и начинает с позиции observe-first. Отчёты комплаенса включают
секцию AI-supply-chain evidence — вышестоящих провайдеров, к которым ваше
рабочее пространство фактически маршрутизировало, плюс обзор привилегированного
доступа и гигиены ключей — и подписаны Ed25519 и публично проверяемы. Просмотр
каталога и готовности бесплатен для каждого участника; см.
Комплаенс для полного жизненного цикла.
Управление MCP — это два дополняющих слоя: оценка firewall для каждого вызова на
поверхности
mcp (применение к тому, что зависимость делает), плюс базовый
уровень целостности схемы инструментов (хеш trust-on-first-use рекламируемого
набора инструментов, перепроверяемый при каждом зондировании — дрейф переключает
schema_status сервера на changed и закрывает отправку, пока админ не перебазирует
или не поместит в карантин). Вместе с риск-полосами навыков и карантином — это
применение и к тому, что зависимость делает, и проверяемая запись того, что она
объявила.8. Базовый уровень цепочки поставок
До того, как доверитесь новому MCP-серверу или навыку
До того, как доверитесь новому MCP-серверу или навыку
В устойчивом состоянии
В устойчивом состоянии
Держите egress allow-list закреплённым для любого агента с инструментами
выборки/поиска/экспорта. Наблюдайте за представлением
Discovered tools на предмет возможностей, появившихся
без правила, и за лентой аномалий на предмет новых путей инструмент-к-инструменту.
После подозреваемого rug-pull
После подозреваемого rug-pull
Отключите сервер (
PUT .../mcp_servers, "enabled": false) — его учётные
данные никогда не расшифровываются, пока он отключён. Перезондируйте, чтобы
всплыли новые инструменты, пересканируйте навык и проверьте очередь
pending_approval, а не одобряйте оптом.9. Связанные угрозы и концепции
- Отравление MCP-инструментов и rug-pull — глубокое погружение во вредоносные и перехваченные MCP-серверы.
- Эксфильтрация данных — правила egress, ограничивающие, куда вызовы инструментов могут отправлять данные.
- Опасные вызовы инструментов — блокировка деструктивных действий независимо от того, откуда пришёл инструмент.
- Утечка секретов — удержание учётных данных вне промптов, аргументов и логов.
- Защита ИИ-агентов и стек управления — как эти контроли вписываются в более широкую позицию.
Firewall: MCP-серверы
Регистрируйте MCP-серверы за шлюзом, зондируйте их инструменты и применяйте
вердикт для каждого вызова до того, как любой вызов достигнет реального сервера.
Firewall: Навыки
Сканируйте и риск-оценивайте каждую устанавливаемую возможность. Помещайте в
карантин или блокируйте рискованные навыки до запуска их инструментов.
