Лучшие практики безопасности OpenClaw: уроки инцидента с трояном на 28K систем

Лучшие практики безопасности OpenClaw: уроки инцидента с трояном на 28K систем — Троян, заразивший 28 000 систем, использовал OpenClaw для кражи ключей и кодовых баз. Здесь — честная модель угроз, контроли, которые реально сработали, и то, как локальный менеджер делает следующий инцидент скучным.
29 апр. 2026 г.6 мин чтения
Share with

Что на самом деле показал инцидент с 28K

Цифра «28K», которая в апреле прокатилась по сообществу OpenClaw, — это число систем, которые один вредоносный пакет успел скомпрометировать, прежде чем кто-либо это заметил. Троян проник через популярное расширение OpenClaw, собрал все доступные API-ключи и тихо встроил себя в промпты агентов, работавших всю остальную неделю.

Он попал внутрь не потому, что OpenClaw «небезопасен». Он попал внутрь потому, что большинство развёртываний OpenClaw настроены так же, как и большинство инструментов разработчика: ключи в переменных окружения, агенты на ноутбуке разработчика, расширения ставятся на доверии, и нет никакого аудит-лога между «агент что-то сделал» и «пришёл счёт». Каждое из этих значений по умолчанию само по себе нормально. Сложенные вместе, они образуют ровно ту модель угроз, под которую и был написан троян.

Этот пост — не пост о фичах. Office Claws не является рантаймом OpenClaw — мы Codex-first десктоп-менеджер, и большинство контролей ниже одинаково применимы к обоим агентам. Мы хотим показать модель угроз, с которой пользователи OpenClaw реально столкнулись после этого инцидента, и скучные локальные практики, которые делают следующий инцидент незначительным.

Радиус поражения трояна OpenClaw: расширение → ключи → промпты агента → расходы на API

Реальная модель угроз пользователя OpenClaw

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

  • Ключи стоят настоящих денег. Утёкший ключ OpenAI или Anthropic — это не просто учётная запись, это банкомат с тарификацией. Атакующий может сжечь 5 000 $ на ключе за выходные, прежде чем сработают алерты по биллингу.
  • У агентов есть руки. Агент с доступом к shell может читать вашу кодовую базу, пушить в репозитории и запускать скрипты от вашего имени. Троян внутри промпта или списка инструментов агента может делать то же самое.
  • Цепочка поставок широкая. Каждое расширение, MCP-сервер или «community pack», который вы ставите, работает в той же зоне доверия, что и агент. Установка OpenClaw с двенадцатью расширениями — это двенадцать потенциальных точек входа.

Любая практика, которая не закрывает хотя бы одну из этих трёх позиций, — это украшение.

РискПлохой дефолтСкучный контроль, который работает
Утечка ключейКлючи в .env рядом с исходникамиЛокальный OS keychain, короткие ротации
Агент на ноутбуке с полным доступомОдин uid, одна файловая системаАгент на собственной VPS, токены со scope
Цепочка поставок расширенийАвто-обновление, без ревьюЗафиксированные версии, чтение diff, без auto-install
Невидимые расходыСчёт за API в конце месяцаЛимит расходов на агента + ежедневный мониторинг

Пять контролей, которые реально двигают стрелку

1. Ключи остаются на машине оператора

Самый рычажный контроль после этого инцидента — он же и самый старый: не отправляй секрет туда, где работает недоверенный код. В Office Claws ваши ключи провайдера живут в локальном хранилище десктоп-приложения. Они передаются агенту через зашифрованный туннель Tailscale только когда агент вызывает провайдера, и никогда не пишутся на диск VPS. Если троян попадает на агентскую машину, он не находит ключ — потому что ключа там никогда не было.

Если вы остаётесь на OpenClaw, эквивалент — вынести ключи из .env файлов проекта в OS keychain (Keychain на macOS, secret-tool на Linux, DPAPI на Windows) и читать их в начале сессии. Это раздражает. Это же — разница между «скомпрометирован» и «слегка неудобно».

2. Агент живёт где-то ещё

Запуск агента на той же машине, где лежат ваши исходники, означает, что одна компрометация дотягивается до всего. Запуск на VPS — вашей собственной коробке Contabo за несколько евро в месяц — превращает большинство атак в «атакующий заrooting'ил один эфемерный дроплет». У этого дроплета нет SSH-ключей к другим репозиториям, нет браузерной сессии в банке, нет доступа в командный Slack. Уничтожаете и переподнимаете заново; радиус — одна машина.

Это та модель, что мы поставляем. Self-hosted Office Claws поднимает дроплет Contabo из заранее запечённого снапшота меньше чем за три минуты; агент работает там, ваш ноутбук говорит с ним через Tailscale.

Агент на собственной VPS, ключ остаётся на машине оператора

3. Фиксируйте каждое расширение, которое ставите

Троян на 28K — это атака на цепочку поставок. Авто-обновление общественных расширений — это OpenClaw-эквивалент curl | bash. Фиксируйте версии. Читайте diff перед апгрейдом. К любому расширению, которое просит «все инструменты, все директории», относитесь так же, как к браузерному расширению, которое просит читать все страницы, — с долгой паузой и поиском альтернативы поменьше.

Два практических правила:

  • Расширение, которому нужен сетевой выход на домен, о котором вы никогда не слышали, — это «нет».
  • Расширение, у мейнтейнера которого история GitHub из трёх коммитов, — это «нет».

4. Поставьте лимит расходов у провайдера

У каждого поддерживаемого провайдера есть лимит расходов на ключ. Поставьте его. Троян на 28K был прибыльным потому, что никто ничего не замечал до прихода счёта; тот же троян против ключа с лимитом 50 $/день — это раздражение, а не инцидент. Office Claws показывает расход токенов на агента в десктоп-приложении, но авторитетная защита — это лимит, который вы выставляете на стороне OpenAI или Anthropic. Мы не можем выставить его за вас и не хотели бы.

5. Имейте аудит-лог, который написали не вы

Если ваша единственная запись о том, «что делал агент», — это собственный scrollback агента, у вас нет записи. Каждый промпт и каждый вызов инструмента должны попадать куда-то, что контролируете вы: gateway-лог на VPS агента, ваш собственный стек Loki/Grafana или — на managed-плане — ленту активности в десктоп-приложении. Цель — не читать его ежедневно. Цель — чтобы после инцидента вы могли ответить на «что трогал этот ключ» за минуты, а не за недели.

Как это выглядит на практике

Конкретно: пользователь OpenClaw, серьёзно отнёсшийся к инциденту, вышел из апреля примерно с таким стеком:

laptop  ── Tailscale ──► VPS (one per agent)
  │                       │
  │                       ├─ agent runtime
  │                       ├─ pinned extensions
  │                       └─ gateway log → operator-side

  ├─ keys in OS keychain (NOT in .env)
  ├─ provider spend cap set per key
  └─ desktop app showing per-agent token burn

Это тот же стек, что Office Claws по умолчанию поставляет для Codex-агентов. Если вы мигрировали с OpenClaw после блокировки подписки, вы получили эту безопасность как побочный эффект миграции по стоимости. Если остались на OpenClaw, та же архитектура достижима — просто собрать её придётся вам самим.

Рекомендации

  1. Уберите ключи из .env сегодня. Даже если вы больше ничего из этого списка не сделаете, следующее заражённое расширение не сможет утащить ключ, который оно не может прочитать.
  2. Поставьте лимиты расходов до завтрашней сессии. Пять минут в дашборде провайдера. Самый ROI-эффективный контроль на этой странице.
  3. Проведите аудит установленных расширений. Всё, чем вы активно не пользуетесь, удалите. Всё, чем пользуетесь, зафиксируйте на известном-хорошем коммите.
  4. Уберите агента с ноутбука. OpenClaw на self-hosted машине или Codex на Office Claws — ноутбук не то место, где должен жить долгоиграющий агент с доступом к shell.
  5. Держите один лог на стороне оператора. Он не должен быть навороченным. Он должен существовать до следующего инцидента, а не после.

Инцидент на 28K не последний. Платформы агентов теперь достаточно прибыльны, чтобы «цепочка поставок → ключ → счёт» была бизнес-моделью, а не случайностью. Контроли выше это не останавливают. Они делают радиус поражения достаточно маленьким, чтобы следующий инцидент был тикетом в пятницу после обеда, а не выходными в war room.

По теме

Автор

Office Claws Team

Создаём будущее управления ИИ-агентами в Office Claws. Делимся опытом в области инфраструктуры, безопасности и удобства разработки.

Будьте в курсе

Получайте свежие статьи об ИИ-агентах, инфраструктуре и обновлениях продукта прямо на почту.

Без спама. Отписка в любой момент.