Gateway
Проверки аудита безопасности
openclaw security audit выводит структурированные результаты проверок, привязанные к checkId. Эта
страница является справочным каталогом для этих ID. Общее описание модели угроз
и рекомендации по усилению защиты см. в разделе Безопасность.
Высокосигнальные значения checkId, которые вы, скорее всего, увидите в реальных развертываниях (список не
исчерпывающий):
checkId |
Серьезность | Почему это важно | Основной ключ/путь исправления | Автоисправление |
|---|---|---|---|---|
fs.state_dir.perms_world_writable |
критическая | Другие пользователи/процессы могут изменять все состояние OpenClaw | права файловой системы на ~/.openclaw |
да |
fs.state_dir.perms_group_writable |
предупреждение | Пользователи группы могут изменять все состояние OpenClaw | права файловой системы на ~/.openclaw |
да |
fs.state_dir.perms_readable |
предупреждение | Каталог состояния доступен для чтения другим | права файловой системы на ~/.openclaw |
да |
fs.state_dir.symlink |
предупреждение | Цель каталога состояния становится другой границей доверия | структура файловой системы каталога состояния | нет |
fs.config.perms_writable |
критическая | Другие могут изменять политику/конфигурацию аутентификации и инструментов | права файловой системы на ~/.openclaw/openclaw.json |
да |
fs.config.symlink |
предупреждение | Конфигурационные файлы-символические ссылки не поддерживаются для записи и добавляют другую границу доверия | замените обычным конфигурационным файлом или укажите OPENCLAW_CONFIG_PATH на реальный файл |
нет |
fs.config.perms_group_readable |
предупреждение | Пользователи группы могут читать токены/настройки конфигурации | права файловой системы на конфигурационный файл | да |
fs.config.perms_world_readable |
критическая | Конфигурация может раскрывать токены/настройки | права файловой системы на конфигурационный файл | да |
fs.config_include.perms_writable |
критическая | Включаемый конфигурационный файл может быть изменен другими | права включаемого файла, на который ссылается openclaw.json |
да |
fs.config_include.perms_group_readable |
предупреждение | Пользователи группы могут читать включенные секреты/настройки | права включаемого файла, на который ссылается openclaw.json |
да |
fs.config_include.perms_world_readable |
критическая | Включенные секреты/настройки доступны для чтения всем | права включаемого файла, на который ссылается openclaw.json |
да |
fs.auth_profiles.perms_writable |
критическая | Другие могут внедрять или заменять сохраненные учетные данные моделей | права agents/<agentId>/agent/auth-profiles.json |
да |
fs.auth_profiles.perms_readable |
предупреждение | Другие могут читать API-ключи и токены OAuth | права agents/<agentId>/agent/auth-profiles.json |
да |
fs.credentials_dir.perms_writable |
критическая | Другие могут изменять состояние сопряжения каналов/учетных данных | права файловой системы на ~/.openclaw/credentials |
да |
fs.credentials_dir.perms_readable |
предупреждение | Другие могут читать состояние учетных данных канала | права файловой системы на ~/.openclaw/credentials |
да |
fs.sessions_store.perms_readable |
предупреждение | Другие могут читать расшифровки сеансов/метаданные | права хранилища сеансов | да |
fs.log_file.perms_readable |
предупреждение | Другие могут читать отредактированные, но все еще чувствительные журналы | права файла журнала Gateway | да |
fs.synced_dir |
предупреждение | Состояние/конфигурация в iCloud/Dropbox/Drive расширяет раскрытие токенов/расшифровок | переместите конфигурацию/состояние из синхронизируемых папок | нет |
gateway.bind_no_auth |
критическая | Удаленная привязка без общего секрета | gateway.bind, gateway.auth.* |
нет |
gateway.loopback_no_auth |
критическая | Обратное проксирование local loopback может стать неаутентифицированным | gateway.auth.*, настройка прокси |
нет |
gateway.trusted_proxies_missing |
предупреждение | Заголовки обратного прокси присутствуют, но не являются доверенными | gateway.trustedProxies |
нет |
gateway.http.no_auth |
предупреждение/критическая | HTTP API Gateway доступны с auth.mode="none" |
gateway.auth.mode, gateway.http.endpoints.*, plugins.entries.admin-http-rpc |
нет |
gateway.http.session_key_override_enabled |
информация | Вызывающие HTTP API могут переопределять sessionKey |
gateway.http.allowSessionKeyOverride |
нет |
gateway.tools_invoke_http.dangerous_allow |
предупреждение/критическая | Повторно включает опасные инструменты через HTTP API для вызывающих владельцев/администраторов | gateway.tools.allow |
нет |
gateway.nodes.allow_commands_dangerous |
предупреждение/критическая | Включает команды узлов с высоким воздействием (камера/экран/контакты/календарь/SMS) | gateway.nodes.allowCommands |
нет |
gateway.nodes.deny_commands_ineffective |
предупреждение | Записи запрета, похожие на шаблоны, не совпадают с текстом оболочки или группами | gateway.nodes.denyCommands |
нет |
gateway.tailscale_funnel |
критическая | Раскрытие в публичный интернет | gateway.tailscale.mode |
нет |
gateway.tailscale_serve |
информация | Доступ из tailnet включен через Serve | gateway.tailscale.mode |
нет |
gateway.control_ui.allowed_origins_required |
критическая | Control UI не на local loopback без явного списка разрешенных источников браузера | gateway.controlUi.allowedOrigins |
нет |
gateway.control_ui.allowed_origins_wildcard |
предупреждение/критическая | allowedOrigins=["*"] отключает список разрешенных источников браузера |
gateway.controlUi.allowedOrigins |
нет |
gateway.control_ui.host_header_origin_fallback |
предупреждение/критическая | Включает fallback источника по заголовку Host (ослабление защиты от DNS rebinding) | gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback |
нет |
gateway.control_ui.insecure_auth |
предупреждение | Включен переключатель совместимости небезопасной аутентификации | gateway.controlUi.allowInsecureAuth |
нет |
gateway.control_ui.device_auth_disabled |
критическая | Отключает проверку идентичности устройства | gateway.controlUi.dangerouslyDisableDeviceAuth |
нет |
gateway.real_ip_fallback_enabled |
предупреждение/критическая | Доверие fallback X-Real-IP может включить подмену исходного IP через неверную настройку прокси |
gateway.allowRealIpFallback, gateway.trustedProxies |
нет |
gateway.token_too_short |
предупреждение | Короткий общий токен легче подобрать перебором | gateway.auth.token |
нет |
gateway.auth_no_rate_limit |
предупреждение | Открытая аутентификация без ограничения частоты повышает риск перебора | gateway.auth.rateLimit |
нет |
gateway.trusted_proxy_auth |
критическая | Идентичность прокси теперь становится границей аутентификации | gateway.auth.mode="trusted-proxy" |
нет |
gateway.trusted_proxy_no_proxies |
критическая | Аутентификация через доверенный прокси без IP доверенных прокси небезопасна | gateway.trustedProxies |
нет |
gateway.trusted_proxy_no_user_header |
критическая | Аутентификация через доверенный прокси не может безопасно определить идентичность пользователя | gateway.auth.trustedProxy.userHeader |
нет |
gateway.trusted_proxy_no_allowlist |
предупреждение | Аутентификация через доверенный прокси принимает любого аутентифицированного вышестоящего пользователя | gateway.auth.trustedProxy.allowUsers |
нет |
gateway.trusted_proxy_allow_loopback |
warn | Аутентификация доверенного прокси принимает явно разрешенные источники прокси loopback | gateway.auth.trustedProxy.allowLoopback |
no |
gateway.probe_auth_secretref_unavailable |
warn | Глубокая проверка не смогла разрешить SecretRefs аутентификации в этом пути команды | источник аутентификации deep-probe / доступность SecretRef | no |
gateway.probe_failed |
warn/critical | Живая проверка Gateway завершилась ошибкой | доступность Gateway/аутентификация | no |
discovery.mdns_full_mode |
warn/critical | Полный режим mDNS объявляет метаданные cliPath/sshPort в локальной сети |
discovery.mdns.mode, gateway.bind |
no |
config.insecure_or_dangerous_flags |
warn | Включен один небезопасный/опасный флаг отладки | ключ, указанный в деталях результата проверки | no |
security.audit.suppressions.active |
info | Вывод аудита содержит настроенные подавления и может быть отфильтрован | security.audit.suppressions |
no |
config.secrets.gateway_password_in_config |
warn | Пароль Gateway хранится непосредственно в конфигурации | gateway.auth.password |
no |
config.secrets.hooks_token_in_config |
warn | Bearer-токен Hook хранится непосредственно в конфигурации | hooks.token |
no |
hooks.token_reuse_gateway_token |
critical | Токен входящего Hook также разблокирует аутентификацию Gateway | hooks.token, gateway.auth.token, gateway.auth.password |
no |
hooks.token_too_short |
warn | Более простой перебор входящего Hook | hooks.token |
no |
hooks.default_session_key_unset |
warn | Запуски агента Hook расходятся по сгенерированным сеансам на запрос | hooks.defaultSessionKey |
no |
hooks.allowed_agent_ids_unrestricted |
warn/critical | Аутентифицированные вызывающие Hook могут маршрутизировать к любому настроенному агенту | hooks.allowedAgentIds |
no |
hooks.request_session_key_enabled |
warn/critical | Внешний вызывающий может выбрать sessionKey | hooks.allowRequestSessionKey |
no |
hooks.request_session_key_prefixes_missing |
warn/critical | Нет ограничения на формы внешних ключей сеанса | hooks.allowedSessionKeyPrefixes |
no |
hooks.path_root |
critical | Путь Hook равен /, из-за чего входящий трафик легче конфликтует или маршрутизируется неверно |
hooks.path |
no |
hooks.installs_unpinned_npm_specs |
warn | Записи установки Hook не привязаны к неизменяемым спецификациям npm | метаданные установки Hook | no |
hooks.installs_missing_integrity |
warn | В записях установки Hook отсутствуют метаданные целостности | метаданные установки Hook | no |
hooks.installs_version_drift |
warn | Записи установки Hook расходятся с установленными пакетами | метаданные установки Hook | no |
logging.redact_off |
warn | Чувствительные значения попадают в журналы/статус | logging.redactSensitive |
yes |
browser.control_invalid_config |
warn | Конфигурация управления браузером недействительна до выполнения | browser.* |
no |
browser.control_no_auth |
critical | Управление браузером открыто без аутентификации по токену/паролю | gateway.auth.* |
no |
browser.remote_cdp_http |
warn | Удаленный CDP по обычному HTTP не имеет транспортного шифрования | профиль браузера cdpUrl |
no |
browser.remote_cdp_private_host |
warn | Удаленный CDP нацелен на частный/внутренний хост | профиль браузера cdpUrl, browser.ssrfPolicy.* |
no |
sandbox.docker_config_mode_off |
warn | Конфигурация Docker песочницы присутствует, но неактивна | agents.*.sandbox.mode |
no |
sandbox.bind_mount_non_absolute |
warn | Относительные bind mount могут разрешаться непредсказуемо | agents.*.sandbox.docker.binds[] |
no |
sandbox.dangerous_bind_mount |
critical | Bind mount песочницы нацелен на заблокированные системные пути, учетные данные или пути сокета Docker | agents.*.sandbox.docker.binds[] |
no |
sandbox.dangerous_network_mode |
critical | Сеть Docker песочницы использует режим присоединения к пространству имен host или container:* |
agents.*.sandbox.docker.network |
no |
sandbox.dangerous_seccomp_profile |
critical | Профиль seccomp песочницы ослабляет изоляцию контейнера | agents.*.sandbox.docker.securityOpt |
no |
sandbox.dangerous_apparmor_profile |
critical | Профиль AppArmor песочницы ослабляет изоляцию контейнера | agents.*.sandbox.docker.securityOpt |
no |
sandbox.browser_cdp_bridge_unrestricted |
warn | Мост браузера песочницы открыт без ограничения диапазона источников | sandbox.browser.cdpSourceRange |
no |
sandbox.browser_container.non_loopback_publish |
critical | Существующий контейнер браузера публикует CDP на интерфейсах не loopback | конфигурация публикации контейнера браузерной песочницы | no |
sandbox.browser_container.hash_label_missing |
warn | Существующий контейнер браузера создан до текущих меток хеша конфигурации | openclaw sandbox recreate --browser --all |
no |
sandbox.browser_container.hash_epoch_stale |
warn | Существующий контейнер браузера создан до текущей эпохи конфигурации браузера | openclaw sandbox recreate --browser --all |
no |
tools.exec.host_sandbox_no_sandbox_defaults |
warn | exec host=sandbox отказывает закрыто, когда песочница выключена |
tools.exec.host, agents.defaults.sandbox.mode |
no |
tools.exec.host_sandbox_no_sandbox_agents |
warn | Агентский exec host=sandbox отказывает закрыто, когда песочница выключена |
agents.list[].tools.exec.host, agents.list[].sandbox.mode |
no |
tools.exec.security_full_configured |
warn/critical | Выполнение на хосте работает с security="full" |
tools.exec.security, agents.list[].tools.exec.security |
no |
tools.exec.fs_tools_disabled_but_exec_enabled |
warn | Политика файловых инструментов не делает выполнение shell доступным только для чтения | tools.deny, agents.list[].tools.deny, agents.*.sandbox.workspaceAccess |
no |
tools.exec.auto_allow_skills_enabled |
warn | Одобрения exec неявно доверяют исполняемым файлам Skills | файл одобрений хоста | no |
tools.exec.allowlist_interpreter_without_strict_inline_eval |
warn | Списки разрешенных интерпретаторов допускают inline eval без принудительного повторного одобрения | tools.exec.strictInlineEval, agents.list[].tools.exec.strictInlineEval, список разрешений одобрений exec |
no |
tools.exec.safe_bins_interpreter_unprofiled |
warn | Исполняемые файлы интерпретаторов/сред выполнения в safeBins без явных профилей расширяют риск exec |
tools.exec.safeBins, tools.exec.safeBinProfiles, agents.list[].tools.exec.* |
no |
tools.exec.safe_bins_broad_behavior |
warn | Инструменты широкого поведения в safeBins ослабляют низкорисковую модель доверия с фильтрацией stdin |
tools.exec.safeBins, agents.list[].tools.exec.safeBins |
no |
tools.exec.safe_bin_trusted_dirs_risky |
warn | safeBinTrustedDirs включает изменяемые или рискованные каталоги |
tools.exec.safeBinTrustedDirs, agents.list[].tools.exec.safeBinTrustedDirs |
no |
skills.workspace.symlink_escape |
warn | skills/**/SKILL.md рабочей области разрешается за пределы корня рабочей области (дрейф цепочки символьных ссылок) |
состояние файловой системы рабочей области skills/** |
нет |
plugins.extensions_no_allowlist |
warn | Plugins установлены без явного списка разрешенных plugins | plugins.allowlist |
нет |
plugins.installs_unpinned_npm_specs |
warn | Записи индекса Plugin не закреплены за неизменяемыми спецификациями npm | метаданные установки plugin | нет |
plugins.installs_missing_integrity |
warn | В записях индекса Plugin отсутствуют метаданные целостности | метаданные установки plugin | нет |
plugins.installs_version_drift |
warn | Записи индекса Plugin расходятся с установленными пакетами | метаданные установки plugin | нет |
plugins.code_safety |
warn/critical | Сканирование кода Plugin обнаружило подозрительные или опасные паттерны | код plugin / источник установки | нет |
plugins.code_safety.entry_path |
warn | Путь входа Plugin указывает на скрытые расположения или расположения node_modules |
entry манифеста plugin |
нет |
plugins.code_safety.entry_escape |
critical | Точка входа Plugin выходит за пределы каталога plugin | entry манифеста plugin |
нет |
plugins.code_safety.scan_failed |
warn | Сканирование кода Plugin не удалось завершить | путь plugin / среда сканирования | нет |
skills.code_safety |
warn/critical | Метаданные/код установщика Skill содержит подозрительные или опасные паттерны | источник установки skill | нет |
skills.code_safety.scan_failed |
warn | Сканирование кода skill не удалось завершить | среда сканирования skill | нет |
security.exposure.open_channels_with_exec |
warn/critical | Общие/публичные комнаты могут получать доступ к агентам с включенным exec | channels.*.dmPolicy, channels.*.groupPolicy, tools.exec.*, agents.list[].tools.exec.* |
нет |
security.exposure.open_groups_with_elevated |
critical | Открытые личные сообщения/группы + расширенные инструменты создают высокоопасные пути prompt-injection | пути политик личных сообщений верхнего уровня или вложенные, переопределения аккаунтов, channels.*.groupPolicy |
нет |
security.exposure.open_groups_with_runtime_or_fs |
critical/warn | Открытые личные сообщения/группы могут получать доступ к инструментам команд/файлов без защит sandbox/рабочей области | пути политик личных сообщений/групп, tools.profile/deny, tools.fs.workspaceOnly, agents.*.sandbox.mode |
нет |
security.trust_model.multi_user_heuristic |
warn | Конфигурация выглядит многопользовательской, тогда как модель доверия Gateway рассчитана на личного ассистента | разделенные границы доверия или усиление защиты для общих пользователей (sandbox.mode, запрет инструментов/ограничение областью рабочей области) |
нет |
tools.profile_minimal_overridden |
warn | Переопределения агента обходят глобальный минимальный профиль | agents.list[].tools.profile |
нет |
plugins.tools_reachable_permissive_policy |
warn | Инструменты расширений доступны в разрешительных контекстах | tools.profile + разрешение/запрет инструментов |
нет |
models.legacy |
warn | Устаревшие семейства моделей все еще настроены | выбор модели | нет |
models.weak_tier |
warn | Настроенные модели ниже текущих рекомендуемых уровней | выбор модели | нет |
models.small_params |
critical/info | Малые модели + небезопасные поверхности инструментов повышают риск инъекций | выбор модели + политика sandbox/инструментов | нет |
summary.attack_surface |
info | Сводная оценка состояния аутентификации, каналов, инструментов и подверженности рискам | несколько ключей (см. сведения о находке) | нет |
Связанные материалы
Was this useful?