Все статьи

AES FIELD NOTE / РАЗБОР НОВОСТЕЙ

Новые malware-gates GitHub показывают, зачем агентам supply-chain quarantine

Новые механизмы npm, Dependabot и Actions показывают, почему agent runtime нужны provenance, quarantine state и управляемая активация каждой внешней возможности.

MP
Max PerfiljevFounder & CEO, AES · Архитектор автономных организаций
Read in English

Одна из важнейших границ безопасности AI-агента находится ещё до начала исполнения — между обнаружением внешней возможности и её допуском внутрь организации.

28 июля GitHub включил publish-time malware scanning для новых версий npm-пакетов. Безопасная версия становится доступной как обычно. Подозрительный контент удерживается для ручной проверки. Вредоносный пакет блокируется до появления в registry. По данным GitHub, обычно сканирование добавляет около пяти минут, хотя сложные случаи могут потребовать больше времени.

В тот же день Dependabot расширил alerts на malicious packages с использованием данных проекта OpenSSF malicious-packages, а GitHub Actions начал удерживать потенциально вредоносные workflow runs для подтверждения. Вместе эти релизы описывают общий паттерн: непроверенное ПО должно попадать в управляемое промежуточное состояние до получения полномочий на исполнение.

Агенты объединяют обнаружение, установку и исполнение в один цикл

В традиционной разработке человек создаёт естественное трение в supply chain. Кто-то выбирает зависимость, читает документацию, меняет manifest, проверяет pull request и ждёт сборку. Автономный агент способен сжать эти шаги до нескольких секунд.

Эта скорость полезна, но меняет модель риска. Агент может выбрать библиотеку, установить плагин, подключить MCP-сервер, создать workflow и вызвать его раньше, чем человек успеет изучить artifact или хотя бы заметить изменение зависимостей.

Когда обнаружение возможности и её исполнение происходят в одном цикле, supply-chain review должен стать частью runtime.

Разрешить или запретить уже недостаточно

Традиционная модель контроля считает внешний пакет или tool либо разрешённым, либо запрещённым. Agentic-системам нужно третье состояние — quarantine. Возможность уже известна организации, но пока не может влиять на production-данные, credentials, клиентов или политику.

Управляемый путь активации внешней возможности

Resolve

Зафиксировать точный пакет, модель, MCP-сервер, версию tool и граф транзитивных зависимостей.

Inspect

Проверить provenance, подписи, maintainers, заявленное назначение, malware-сигналы и совместимость с политикой.

Quarantine

Удерживать неопределённые artifacts в изоляции без production credentials и постоянного write-доступа.

Approve

Зафиксировать policy decision, reviewer или автоматический gate, доказательства и допустимые сценарии.

Activate

Выдать узкие короткоживущие полномочия только для одобренной миссии.

Observe

Связать фактическое поведение и downstream outcomes с активированным artifact.

Dual-use software делает заявленное назначение частью provenance

GitHub также добавил поле contentPolicy для npm-пакетов с легитимной dual-use функциональностью, обязательный файл DISCLOSURE и усиленные требования к аутентификации. Декларация должна сохраняться между версиями, пока автор явно её не изменит.

Это важно, потому что provenance теперь описывает не только происхождение artifact, но и то, для чего, по словам автора, создана возможность. Такая декларация не доказывает безопасность, однако становится свидетельством, которое policy engine и reviewer могут сравнивать с наблюдаемым поведением.

Runtime должен связывать artifact с полномочиями

Одного результата сканирования недостаточно для защиты автономной организации. Критична связь между одобренным artifact и выданными ему полномочиями. Пакет, проверенный для разбора публичных документов, не должен автоматически получать доступ к клиентским данным. MCP-сервер, разрешённый для read-only analytics, не должен наследовать право агента менять production-системы.

  1. Каждая внешняя возможность должна иметь устойчивую identity и неизменяемую ссылку на версию.
  2. Каждая активация должна хранить provenance, policy decision и доказательства.
  3. Credentials должны выдаваться на миссию, а не постоянно храниться внутри capability.
  4. Поведение должно быть наблюдаемым на границе использования данных и tools.
  5. Отзыв полномочий должен останавливать новое исполнение, не уничтожая evidence trail.

Supply-chain state становится состоянием организации

Новые механизмы GitHub относятся к пакетам и workflows, но архитектурный вывод охватывает всю agent-экосистему: модели, prompts, skills, плагины, MCP-серверы, сгенерированный код и внешние сервисы.

В AES этот контур должен находиться внутри governed runtime. Организация обязана знать, какая возможность вошла в систему, почему её выбрали, какие доказательства поддержали активацию, какой агент её использовал, по какой цепочке делегирования и к какому результату это привело.

Автономность не отменяет software supply chain. Она превращает его в живую часть операционной системы компании.

ПОСТРОИТЬ С AES

Превратите архитектуру в работающую компанию.

AES связывает стратегию, задачи, организационную память, знания, агентов, людей и согласования в единой среде исполнения.