Инструкции Рекомендации Microsoft по безопасному управлению OpenClaw

Пошаговые руководства, рекомендации и подробные объяснения для выполнения задач и решений вопросов.

Переводчик Google

akok

Команда форума
Администратор
Ассоциация VN
Сообщения
27,432
Решения
29
Реакции
14,421

Самостоятельно размещаемые агентные рантаймы: почему OpenClaw требует изоляции и строгого контроля​

Самостоятельно размещаемые агентные рантаймы вроде OpenClaw быстро появляются в корпоративных пилотах и приносят с собой жёсткую реальность: у OpenClaw ограниченный набор встроенных средств безопасности. Рантайм способен принимать недоверенный текст, загружать и выполнять навыки (то есть код) из внешних источников и совершать действия с использованием назначенных ему учётных данных.

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

В незащищённой конфигурации быстро проявляются три риска:
  • возможна утечка или эксфильтрация учётных данных и доступных агенту данных;
  • может быть изменено постоянное состояние агента, или его "память", из-за чего со временем он начнёт следовать инструкциям злоумышленника;
  • хост-среда может быть скомпрометирована, если агента вынудят загрузить и выполнить вредоносный код.
С учётом этих характеристик OpenClaw следует рассматривать как выполнение недоверенного кода с постоянными учётными данными. Его не следует запускать на обычных персональных или корпоративных рабочих станциях. Если организация всё же решает оценивать OpenClaw, он должен разворачиваться только в полностью изолированной среде — например, на выделенной виртуальной машине или отдельной физической системе. Рантайм должен использовать отдельные, непривилегированные учётные данные и иметь доступ только к нечувствительным данным. Непрерывный мониторинг и план быстрого пересборки среды должны быть частью операционной модели.

Этот материал объясняет, как две цепочки поставки, присущие самостоятельно размещаемым агентам, — недоверенный код (навыки и расширения) и недоверенные инструкции (внешние текстовые входные данные) — сходятся в единый цикл выполнения. Мы разбираем, как такой дизайн создаёт накапливающийся риск в средах рабочих станций, приводим репрезентативную цепочку компрометации и описываем рекомендации по развёртыванию, мониторингу и поиску угроз, согласованные с мерами безопасности Microsoft, включая Microsoft Defender XDR. Для организаций, которые всё же решат оценивать OpenClaw, приведена минимально допустимая безопасная операционная позиция.

Прояснение ландшафта: рантайм и платформа​

Чтобы корректно рассуждать о средствах защиты и не применять неверные меры в неподходящих местах, важно разделять среду, где выполняется код, и среду, по которой распространяются инструкции. Эти поверхности часто обсуждаются вместе, но под атакой они ведут себя по-разному и обычно находятся в зоне ответственности разных команд.

OpenClaw (рантайм)​

Самостоятельно размещаемый агентный рантайм, работающий на рабочей станции, виртуальной машине или в контейнере. Он может загружать навыки и взаимодействовать с локальными и облачными ресурсами. Ключевой момент с точки зрения безопасности: он наследует уровень доверия (и рисков) машины и идентичностей, которыми может пользоваться. Установка навыка по сути равносильна установке привилегированного кода. Навыки часто обнаруживаются и устанавливаются через ClawHub — публичный реестр навыков OpenClaw.

При этом OpenClaw действует в рамках тех прав доступа, которые пользователь предоставил на своём устройстве. Если у него есть разрешения на доступ к определённым приложениям, файлам или учётным записям, он может извлекать из них дополнительную информацию. С учётом требований к конфиденциальности и безопасности Microsoft Defender рекомендует использовать OpenClaw только в изолированных средах, не имеющих доступа к каким-либо недедицированным учётным данным или данным, утечка которых недопустима.

Moltbook (платформа)​

Платформа и слой идентификации, ориентированные на агентов, где агенты публикуют данные, читают их и аутентифицируются через API. Ключевая точка риска здесь в том, что платформа может стать высокообъёмным потоком контента, на который злоумышленник способен влиять. Один вредоносный пост может одновременно достичь множества агентов.

На практике OpenClaw расширяет границу выполнения кода внутри вашей среды, тогда как Moltbook масштабно расширяет поверхность влияния инструкций. Когда эти два компонента взаимодействуют без адекватных защитных механизмов, один вредоносный вход может привести к устойчивому, аутентифицированному выполнению кода.

Как агенты сдвигают границу безопасности​

Большинство команд безопасности уже понимают, как защищать автоматизацию. Агенты меняют риск-профиль потому, что сущность, принимающая решение о действии, не всегда является той, кто это действие выполняет. Во время работы агент загружает сторонний код, читает недоверенный ввод и действует, используя постоянные учётные данные, превращая среду выполнения в новую границу безопасности.

Эта граница состоит из трёх компонентов:
  • Идентификация — токены, которые агент использует для работы (SaaS API, репозитории, почта, плоскости управления облаком).
  • Выполнение — инструменты, с помощью которых он может изменять состояние (файлы, shell, инфраструктура, сообщения).
  • Постоянство — механизмы сохранения изменений между запусками (задачи, конфигурации, расписания).
В итоге здесь выделяются два класса проблем безопасности:
  • Косвенная prompt-инъекция. Злоумышленник может скрыть вредоносные инструкции в контенте, который читает агент, направляя использование инструментов или изменяя его память и тем самым влияя на поведение во времени, если не заданы жёсткие границы.
  • Вредоносные навыки. Агенты получают навыки из различных источников — по сути, скачивая и выполняя код из Интернета, который может содержать вредоносную логику.

Управляемые платформы и самостоятельно размещаемые рантаймы​

В управляемых ассистентах и агентных платформах меры безопасности обычно сосредоточены на областях идентификации, управлении коннекторами и границах данных, поскольку рантайм и обновления контролируются централизованно. В случае самостоятельно размещаемых рантаймов эта ответственность ложится на организацию. Хост-система, поверхность плагинов и локальное состояние становятся частью границы доверия, а сам рантайм часто работает в непосредственной близости к чувствительным учётным данным разработчиков.

При использовании самостоятельно размещаемого рантайма вы отвечаете за радиус поражения. Хост, плагины и локальное состояние входят в границу доверия. Если агенту разрешено просматривать внешний контент и устанавливать расширения, следует исходить из того, что рано или поздно он обработает вредоносный ввод. Поэтому меры контроля должны в первую очередь обеспечивать локализацию последствий и восстановляемость, а не полагаться исключительно на предотвращение.

Сквозной сценарий атаки: отравленный навык​


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

1771940343592.webp

Figure 1: пятишаговая схема, показывающая, как вредоносный навык проходит путь от публичного распространения до устойчивого контроля, чаще за счёт изменений конфигурации или состояния, а не классической установки вредоносного ПО.

Шаг 1: Распространение​

Злоумышленник публикует вредоносный навык в ClawHub — публичном реестре навыков OpenClaw. Навык может маскироваться под полезную утилиту либо распространяться как заведомо вредоносный, с продвижением через каналы сообщества. В других случаях навык обнаруживается органически — через поиск — и устанавливается из-за быстрого развития экосистемы и низкого порога установки, который поощряет эксперименты. В результате формируется прямой путь поставки кода из внешнего источника непосредственно в рантайм.

Шаг 2: Установка​

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

Шаг 3: Доступ к состоянию (токены и устойчивые инструкции)​

Цель атакующего — получить доступ к состоянию агента, включая токены, кэшированные учётные данные, конфигурационные данные и журналы взаимодействий, а также к каналам устойчивых инструкций, влияющих на будущие запуски: файлам задач, запланированным действиям или конфигурации агента. Если устойчивые инструкции могут изменяться в ходе обычных взаимодействий, одной инъекции достаточно, чтобы эффект сохранялся между запусками.

Шаг 4: Повторное использование привилегий через легитимные API​

Обладая действительными идентификационными данными, атакующий может выполнять действия через стандартные API и инструменты. Такая активность часто выглядит как легитимная автоматизация, если отсутствуют строгие механизмы мониторинга и журналирования.

Шаг 5: Закрепление через конфигурацию​

Закрепление обычно реализуется в виде устойчивых изменений конфигурации: новых согласий OAuth, запланированных запусков, изменённых задач агента или инструментов, остающихся постоянно разрешёнными. Цель заключается не столько в развёртывании вредоносного ПО, сколько в сохранении долгосрочного контроля над контуром автоматизации.

Вариант атаки: косвенная prompt-инъекция через общие ленты​

Если агенты настроены на регулярный опрос общей ленты, злоумышленник может внедрить вредоносные инструкции в контент, который агенты потребляют. Это косвенная prompt-инъекция: полезная нагрузка передаётся по цепочке поставки инструкций, будучи встроенной во внешний контент, а не предоставленной доверенным оператором. В многоагентных конфигурациях один вредоносный поток может одновременно воздействовать на множество агентов. Практический риск заключается в управлении использованием инструментов или в провоцировании раскрытия чувствительных данных у той части агентов, которые обладают высокими полномочиями и слабыми механизмами ограничений.

Контроли Microsoft Defender и Microsoft Security для самохостируемых агентов​

Минимально безопасная операционная модель (если принято решение запускать OpenClaw)​

Наиболее безопасная рекомендация — не устанавливать и не запускать OpenClaw с использованием основных рабочих или личных учётных записей и не разворачивать его на устройствах, содержащих чувствительные данные. В текущем виде следует исходить из того, что рантайм может подвергаться влиянию недоверенного ввода, его состояние может изменяться, а хост-система — быть скомпрометированной через агента.
Если существует обоснованная необходимость оценить OpenClaw, следующие ограничения следует рассматривать как базовый уровень:

1) Запуск только в изоляции​

Используйте выделенную виртуальную машину или отдельное физическое устройство, не применяемое для повседневной работы. Рассматривайте среду как одноразовую.

2) Выделенные учётные данные и нечувствительные данные​

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

3) Мониторинг изменений состояния и памяти​

Регулярно проверяйте сохранённые инструкции и состояние агента на предмет неожиданных постоянных правил, новых доверенных источников или изменений поведения между запусками.

4) Резервное копирование состояния для быстрого восстановления​

OpenClaw поддерживает создание и восстановление снимков состояния:
  • резервное копирование .openclaw/workspace/ сохраняет рабочее состояние агента без учётных данных;
  • резервное копирование всего каталога .openclaw/ включает также токены и учётные данные. Это упрощает восстановление, но повышает чувствительность резервных копий и может быть неприемлемо при подозрении на компрометацию учётных данных.

5) Воспринимать пересборку как штатную меру контроля​

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

Соответствие действий безопасности и средств Microsoft​

Ниже приведено сопоставление ключевых мер безопасности с практическими способами их реализации с использованием решений Microsoft Security и связанных с ними контролей. Ссылки на руководства по внедрению упомянутых средств приведены в разделе References.

Что делатьКак реализовать с помощью контролей Microsoft
ИдентификацияИспользовать отдельные идентичности для агентов. Минимизировать права. Предпочитать краткоживущие токены. Применять контролируемое согласие для привилегированных разрешений. Microsoft Entra ID: принцип наименьших привилегий, Conditional Access, процессы администраторского согласия для чувствительных OAuth-областей. Microsoft Defender for Cloud Apps (App Governance): инвентаризация OAuth-приложений, контроль дрейфа согласий, оповещения о рискованных издателях и уровнях привилегий.
Конечные точки и хостРассматривать хосты агентов как привилегированные. Отделять пилоты от продакшена. Планировать быструю изоляцию и отзыв токенов. Microsoft Defender for Endpoint: подключение хостов агентов и применение более строгих политик через группы устройств. Microsoft Defender XDR: корреляция активности конечных точек с событиями идентификации и облака для быстрого реагирования и локализации.
Цепочка поставки (навыки, расширения, плагины)По возможности ограничивать источники и издателей установки. Фиксировать версии для одобренных возможностей. Проводить ревизию обновлений. Defender for Endpoint: использование телеметрии и расследований для выявления подозрительных установок расширений и инструментов удалённого доступа. Управление конечными точками и контроль приложений: ограничение неутверждённых путей установки и издателей.
Сеть и исходящий трафикОграничивать исходящий доступ хостов агентов и рабочих нагрузок до известных и необходимых для бизнеса направлений. Блокировать или изолировать высокорисковые внешние источники потребления контента без обоснования. Defender for Endpoint (фильтрация веб-контента): ограничение категорий и доступа для групп устройств агентов. Сетевые средства Azure и Defender for Cloud: применение сетевых ограничений и мониторинг исходящего поведения с централизованным журналированием.
Защита данныхСнижать вероятность попадания чувствительных данных во входные данные агентов и их эксфильтрации через инструменты агента. Microsoft Purview: маркировка чувствительности и Endpoint DLP для аудита или блокирования перемещения помеченных данных процессами агента и во внешние назначения.
Мониторинг и реагированиеЖурналировать действия агентов и рассматривать аномальное использование инструментов как сигнал инцидента. Подготовить сценарии реагирования на компрометацию идентичностей агентов. Defender XDR: охота за угрозами и корреляция инцидентов. Microsoft Sentinel: при необходимости более глубокой ретенции, обогащения и автоматизации. Операционные плейбуки: изоляция, ротация учётных данных, пересмотр согласий и форензика рабочих пространств.

Обнаружение и анализ активности агентов (Microsoft Defender XDR)​

Эти запросы предназначены для быстрого выявления работы рантаймов агентов в среде и позволяют различать развертывания, функционирующие как привилегированная автоматизация, от обычной пользовательской активности. Это обеспечивает ускоренное определение зоны охвата, приоритизацию и реагирование.


Поиск угроз 1: Выявление рантаймов агентов и связанных инструментов​

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

Код:
DeviceProcessEvents
| where Timestamp > ago(30d)
| where ProcessCommandLine has_any ("openclaw","moltbot","clawdbot")
   or FileName has_any ("openclaw","moltbot","clawdbot")
| project Timestamp, DeviceName, AccountName=InitiatingProcessAccountName, FileName, FolderPath, ProcessCommandLine
| order by Timestamp desc
Оценка активности: подтвердите, что устройство участвует в утверждённом пилоте, проверьте ограничение доступа к интерфейсам управления и проанализируйте недавние установки, если рантайм появился неожиданно.

Поиск угроз 1b: Вариант для облачных рабочих нагрузок (CloudProcessEvents)​

Расширяет инвентаризацию на контейнеры и Kubernetes, которые передают телеметрию процессов через интеграцию с Defender for Cloud.
Код:
CloudProcessEvents
| where Timestamp > ago(30d)
| where ProcessCommandLine has_any ("openclaw","moltbot","clawdbot")
   or ProcessName has_any ("openclaw","moltbot","clawdbot")
   or FileName has_any ("openclaw","moltbot","clawdbot")
| extend WorkloadId = coalesce(AzureResourceId, AwsResourceName, GcpFullResourceName)
| project Timestamp,
          WorkloadId,
          KubernetesNamespace,
          KubernetesPodName,
          ContainerName,
          AccountName,
          ProcessName,
          Filenames,
          FolderPath,
          ProcessCommandLine
| order by Timestamp desc
Оценка активности: убедитесь, что рабочая нагрузка и namespace соответствуют утверждённому пилоту, проверьте происхождение контейнерного образа и подтвердите соответствие процесса и командной строки ожидаемой функциональности.

Поиск угроз 1c: Установки навыков ClawHub и редкие skill-slug​

Используется для выявления установок навыков из ClawHub и обнаружения редко встречающихся slug-ов навыков.

Код:
DeviceProcessEvents
| where Timestamp > ago(30d)
| where ProcessCommandLine has "clawhub install"
| extend SkillSlug = extract(@"\bclawhub\s+install\s+([^\s]+)", 1, ProcessCommandLine)
| where isnotempty(SkillSlug)
| summarize InstallEvents=count(), Devices=dcount(DeviceName), Accounts=dcount(InitiatingProcessAccountName) by SkillSlug
| order by Devices asc, InstallEvents desc
Оценка активности:: подтвердите, что навык одобрен для пилота, проверьте содержимое папки установленного навыка и сопоставьте с последующей активностью (новые оболочки, загрузка инструментов, исходящие соединения). Сравните slug с утверждённым списком для выявления поддельных имен.


Поиск угроз 2: Установка и изменение расширений на рабочих станциях разработчиков​

Позволяет выявлять изменения расширений на рабочих станциях разработчиков, которые часто предшествуют подозрительной активности.
Код:
DeviceFileEvents
| where Timestamp > ago(30d)
| where FolderPath has_any (@"\.vscode\extensions\", @"/.vscode/extensions/")
| where ActionType in ("FileCreated","FileModified","FolderCreated")
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp), FileCount=count()
  by DeviceName, InitiatingProcessAccountName, FolderPath
| order by LastSeen desc
Оценка активности: сосредоточьтесь на новых папках расширений и неожиданных всплесках изменений. Проверьте издателя и источник установки, затем проанализируйте процессы, которые были запущены расширением.

Поиск угроз 3: Высокопривилегированные OAuth-приложения и дрейф согласий (App Governance)​


Позволяет выявлять новые или изменённые высокопривилегированные OAuth-приложения, связанные с интеграциями агентов (требуется App Governance).
Код:
OAuthAppInfo
| where Timestamp > ago(30d)
| where PrivilegeLevel =~ "High"
| project Timestamp, AppName, VerifiedPublisher, AppOrigin, IsAdminConsented, ConsentedUsersCount, AppStatus, Permissions
| order by Timestamp desc
Оценка активности: подтвердите бизнес-необходимость высокопривилегированных приложений, проверьте идентичность издателя, проанализируйте внезапные изменения привилегий или области согласия.

Поиск угроз 4: Неожиданные слушающие сервисы, созданные процессами агентов​

Выявляет процессы агентов, открывающие порты для прослушивания, что может указывать на открытые интерфейсы управления или непреднамеренные сервисы.

Код:
DeviceNetworkEvents
| where Timestamp > ago(30d)
| where ActionType == "ListeningConnectionCreated"
| where InitiatingProcessCommandLine has_any ("openclaw","moltbot","clawdbot")
   or InitiatingProcessFileName has_any ("openclaw","moltbot","clawdbot")
| summarize FirstSeen=min(Timestamp), LastSeen=max(Timestamp), Ports=make_set(LocalPort)
  by DeviceName, InitiatingProcessFileName, InitiatingProcessAccountName, LocalIP
| order by Timestamp desc
Оценка активности: убедитесь, что слушатель необходим и ограничен. Если порт доступен за пределами допустимой зоны, изолируйте хост и обновите все используемые агентом учётные данные.

Поиск угроз 5: Запуск неожиданных оболочек или инструментов загрузки агентными рантаймами​

Используется для фиксации случаев запуска агентами оболочек или инструментов загрузки, которые не характерны для ожидаемой работы.
Код:
agent operation.
DeviceProcessEvents
| where Timestamp > ago(30d)
| where InitiatingProcessFileName has_any ("openclaw","moltbot","clawdbot")
   or InitiatingProcessCommandLine has_any ("openclaw","moltbot","clawdbot")
| where FileName in ("cmd.exe","powershell.exe","pwsh.exe","bash","sh","curl","wget")
| project Timestamp, DeviceName, AccountName=InitiatingProcessAccountName,
          Parent=InitiatingProcessFileName, FileName, ProcessCommandLine
| order by Timestamp desc
Оценка активности: отделяйте ожидаемую автоматизацию от оппортунистического выполнения. Приоритизируйте случаи, когда дочерний процесс получает доступ к хранилищам учётных данных, устанавливает новые пакеты или открывает сетевые соединения к необычным адресатам.

Последствия для безопасности при использовании самохостируемых агентов​

Самохостируемые агенты объединяют небезопасный код и небезопасные инструкции в единый цикл выполнения с использованием действительных учётных данных. Именно это представляет собой основное рисковое поле.

Запуск OpenClaw — это не просто настройка, это решение о доверии: какая машина, какие учётные записи и какие данные могут быть подвергнуты воздействию при обработке агентом недоверенного ввода.

Для большинства сред наиболее безопасным решением может быть отказ от развертывания. Если команда всё же принимает решение использовать агент, безопасная стратегия заключается в предположении возможного компромета: изолировать рантайм, ограничить его доступ, осуществлять непрерывный мониторинг и быть готовыми к немедленной перестройке среды.

Немедленно следует выполнить три действия:
  1. Провести инвентаризацию всех мест развертывания рантайма.
  2. Проверить учётные записи, используемые агентом, и связанные с ними разрешения.
  3. Определить, какие входные данные могут влиять на выполнение инструментов.

Ужесточайте контроль и отслеживайте активность по всему циклу. Используйте приведённые запросы для поиска угроз как отправную точку, рассматривая каждое обнаружение как возможность уменьшить потенциальный ущерб до того, как он будет использован злоумышленником.


Ссылки​


Исследование подготовлено командой Microsoft Defender Security Research при участии Idan Hen.

Вольный перевод этой статьи
 
Назад
Сверху Снизу