fs.state_dir.perms_world_writable | critical | 其他用户/进程可以修改完整的 OpenClaw 状态 | ~/.openclaw 上的文件系统权限 | 是 |
fs.state_dir.perms_group_writable | warn | 组用户可以修改完整的 OpenClaw 状态 | ~/.openclaw 上的文件系统权限 | 是 |
fs.state_dir.perms_readable | warn | 状态目录可被其他用户读取 | ~/.openclaw 上的文件系统权限 | 是 |
fs.state_dir.symlink | warn | 状态目录目标成为另一个信任边界 | 状态目录文件系统布局 | 否 |
fs.config.perms_writable | critical | 其他用户可以更改身份验证/工具策略/配置 | ~/.openclaw/openclaw.json 上的文件系统权限 | 是 |
fs.config.symlink | warn | 不支持写入符号链接配置文件,并且会增加另一个信任边界 | 替换为普通配置文件,或将 OPENCLAW_CONFIG_PATH 指向真实文件 | 否 |
fs.config.perms_group_readable | warn | 组用户可以读取配置令牌/设置 | 配置文件的文件系统权限 | 是 |
fs.config.perms_world_readable | critical | 配置可能暴露令牌/设置 | 配置文件的文件系统权限 | 是 |
fs.config_include.perms_writable | critical | 其他用户可以修改配置包含文件 | openclaw.json 引用的包含文件权限 | 是 |
fs.config_include.perms_group_readable | warn | 组用户可以读取包含的机密信息/设置 | openclaw.json 引用的包含文件权限 | 是 |
fs.config_include.perms_world_readable | critical | 包含的机密信息/设置可被所有用户读取 | openclaw.json 引用的包含文件权限 | 是 |
fs.auth_profiles.perms_writable | critical | 其他用户可以注入或替换已存储的模型凭据 | agents/<agentId>/agent/auth-profiles.json 的权限 | 是 |
fs.auth_profiles.perms_readable | warn | 其他用户可以读取 API 密钥和 OAuth 令牌 | agents/<agentId>/agent/auth-profiles.json 的权限 | 是 |
fs.credentials_dir.perms_writable | critical | 其他用户可以修改频道配对/凭据状态 | ~/.openclaw/credentials 上的文件系统权限 | 是 |
fs.credentials_dir.perms_readable | warn | 其他用户可以读取频道凭据状态 | ~/.openclaw/credentials 上的文件系统权限 | 是 |
fs.sessions_store.perms_readable | warn | 其他用户可以读取会话记录/元数据 | 会话存储权限 | 是 |
fs.log_file.perms_readable | warn | 其他用户可以读取经过脱敏但仍然敏感的日志 | Gateway 日志文件权限 | 是 |
fs.synced_dir | warn | iCloud/Dropbox/Drive 中的状态/配置扩大了令牌/会话记录的暴露范围 | 将配置/状态移出同步文件夹 | 否 |
gateway.bind_no_auth | critical | 远程绑定但没有共享密钥 | gateway.bind、gateway.auth.* | 否 |
gateway.loopback_no_auth | critical | 经过反向代理的环回地址可能变得未经身份验证 | gateway.auth.*、代理设置 | 否 |
gateway.trusted_proxies_missing | warn | 存在反向代理标头,但未将其代理设为可信 | gateway.trustedProxies | 否 |
gateway.http.no_auth | warn/critical | Gateway HTTP API 可通过 auth.mode="none" 访问 | gateway.auth.mode、gateway.http.endpoints.*、plugins.entries.admin-http-rpc | 否 |
gateway.http.session_key_override_enabled | info | HTTP API 调用方可以覆盖 sessionKey | gateway.http.allowSessionKeyOverride | 否 |
gateway.tools_invoke_http.dangerous_allow | warn/critical | 为所有者/管理员调用方重新启用通过 HTTP API 使用危险工具 | gateway.tools.allow | 否 |
gateway.nodes.allow_commands_dangerous | warn/critical | 启用高影响力的节点命令(桌面输入/摄像头/屏幕/联系人/日历/短信) | gateway.nodes.commands.allow | 否 |
gateway.nodes.deny_commands_ineffective | warn | 类似模式的拒绝条目无法匹配 shell 文本或命令组 | gateway.nodes.commands.deny | 否 |
gateway.tailscale_funnel | critical | 暴露到公共互联网 | gateway.tailscale.mode | 否 |
gateway.tailscale_serve | info | 通过 Serve 启用了 Tailnet 暴露 | gateway.tailscale.mode | 否 |
gateway.control_ui.allowed_origins_required | critical | 非环回 Control UI 未显式配置浏览器来源允许列表 | gateway.controlUi.allowedOrigins | 否 |
gateway.control_ui.allowed_origins_wildcard | warn/critical | allowedOrigins=["*"] 会禁用浏览器来源允许列表 | gateway.controlUi.allowedOrigins | 否 |
gateway.control_ui.host_header_origin_fallback | warn/critical | 启用 Host 标头来源回退(降低 DNS 重绑定防护) | gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback | 否 |
gateway.control_ui.device_auth_disabled | critical | 已退役的设备身份验证绕过迁移仍允许修复访问 | 完成 保护此浏览器 配对(gateway.controlUi.deviceAuthMigration 状态) | 否 |
gateway.real_ip_fallback_enabled | warn/critical | 信任 X-Real-IP 回退可能因代理配置错误而导致源 IP 欺骗 | gateway.allowRealIpFallback、gateway.trustedProxies | 否 |
gateway.token_too_short | warn | 较短的共享令牌更容易被暴力破解 | gateway.auth.token | 否 |
gateway.auth_no_rate_limit | warn | 暴露的身份验证没有速率限制,会增加暴力破解风险 | gateway.auth.rateLimit | 否 |
gateway.trusted_proxy_auth | critical | 代理身份现在成为身份验证边界 | gateway.auth.mode="trusted-proxy" | 否 |
gateway.trusted_proxy_no_proxies | critical | 没有可信代理 IP 的可信代理身份验证不安全 | gateway.trustedProxies | 否 |
gateway.trusted_proxy_no_user_header | critical | 可信代理身份验证无法安全解析用户身份 | gateway.auth.trustedProxy.userHeader | 否 |
gateway.trusted_proxy_no_allowlist | warn | 可信代理身份验证接受任何已通过上游身份验证的用户 | gateway.auth.trustedProxy.allowUsers | 否 |
gateway.trusted_proxy_allow_loopback | warn | 可信代理身份验证接受显式允许的环回代理来源 | gateway.auth.trustedProxy.allowLoopback | 否 |
gateway.probe_auth_secretref_unavailable | warn | 深度探测无法在此命令路径中解析身份验证 SecretRef | 深度探测身份验证源 / SecretRef 可用性 | 否 |
gateway.probe_failed | warn | 实时 Gateway 探测失败(仅限 --deep) | Gateway 可达性/身份验证 | 否 |
discovery.mdns_full_mode | warn/critical | mDNS 完整模式会在本地网络上公布 cliPath/sshPort 元数据 | discovery.mdns.mode、gateway.bind | 否 |
config.insecure_or_dangerous_flags | warn | 启用了一个不安全/危险的调试标志 | 发现详情中列出的键 | 否 |
security.audit.suppressions.active | info | 审计输出配置了抑制项,结果可能经过筛选 | security.audit.suppressions | 否 |
config.secrets.gateway_password_in_config | warn | Gateway 密码直接存储在配置中 | gateway.auth.password | 否 |
config.secrets.hooks_token_in_config | warn | Hook bearer 令牌直接存储在配置中 | hooks.token | 否 |
hooks.token_reuse_gateway_token | critical | Hook 入口令牌同时可以解锁 Gateway 身份验证 | hooks.token、gateway.auth.token、gateway.auth.password | 否 |
hooks.token_too_short | warn | Hook 入口更容易被暴力破解 | hooks.token | 否 |
hooks.default_session_key_unset | warn | Hook agent 运行会分散到按请求生成的会话中 | hooks.defaultSessionKey | 否 |
hooks.allowed_agent_ids_unrestricted | warn/critical | 已通过身份验证的 Hook 调用方可以路由到任何已配置的 agent | hooks.allowedAgentIds | 否 |
hooks.request_session_key_enabled | warn/critical | 外部调用方可以选择 sessionKey | hooks.allowRequestSessionKey | 否 |
hooks.request_session_key_prefixes_missing | warn/critical | 没有限制外部会话密钥格式 | hooks.allowedSessionKeyPrefixes | 否 |
hooks.path_root | critical | Hook 路径为 /,使入口更容易发生冲突或路由错误 | hooks.path | 否 |
hooks.installs_unpinned_npm_specs | warn | Hook 安装记录未固定到不可变的 npm 规范 | Hook 安装元数据 | 否 |
hooks.installs_missing_integrity | warn | Hook 安装记录缺少完整性元数据 | Hook 安装元数据 | 否 |
hooks.installs_version_drift | warn | Hook 安装记录与已安装的软件包发生版本偏移 | Hook 安装元数据 | 否 |
browser.control_invalid_config | warn | 浏览器控制配置在运行时之前即无效 | browser.* | 否 |
browser.control_no_auth | critical | 浏览器控制暴露时没有令牌/密码身份验证 | gateway.auth.* | 否 |
browser.remote_cdp_http | warn | 通过纯 HTTP 进行的远程 CDP 缺少传输加密 | 浏览器配置文件 cdpUrl | 否 |
browser.remote_cdp_private_host | warn | 远程 CDP 指向私有/内部主机 | 浏览器配置文件 cdpUrl、browser.ssrfPolicy.* | 否 |
browser.extension_relay_legacy_auth | warn | 旧版扩展中继 bearer/Basic/令牌身份验证仍处于启用状态 | browser.extensionRelay.allowLegacyAuth | 否 |
sandbox.docker_config_mode_off | warn | 存在 Sandbox Docker 配置,但处于非活动状态 | agents.*.sandbox.mode | 否 |
sandbox.bind_mount_non_absolute | warn | 相对绑定挂载的解析结果可能不可预测 | agents.*.sandbox.docker.binds[] | 否 |
sandbox.dangerous_bind_mount | critical | Sandbox 绑定挂载指向被阻止的系统、凭据或 Docker 套接字路径 | agents.*.sandbox.docker.binds[] | 否 |
sandbox.dangerous_network_mode | critical | Sandbox Docker 网络使用 host 或 container:* 命名空间加入模式 | agents.*.sandbox.docker.network | 否 |
sandbox.dangerous_seccomp_profile | critical | Sandbox seccomp 配置文件削弱了容器隔离 | agents.*.sandbox.docker.securityOpt | 否 |
sandbox.dangerous_apparmor_profile | critical | Sandbox AppArmor 配置文件削弱了容器隔离 | agents.*.sandbox.docker.securityOpt | 否 |
sandbox.browser_cdp_bridge_unrestricted | warn | Sandbox 浏览器桥接暴露时未限制来源范围 | sandbox.browser.cdpSourceRange | 否 |
sandbox.browser_container.non_loopback_publish | critical | 现有浏览器容器在非环回接口上发布 CDP | 浏览器 Sandbox 容器发布配置 | 否 |
sandbox.browser_container.hash_label_missing | warn | 现有浏览器容器早于当前配置哈希标签 | openclaw sandbox recreate --browser --all | 否 |
sandbox.browser_container.hash_epoch_stale | warn | 现有浏览器容器早于当前浏览器配置世代 | openclaw sandbox recreate --browser --all | 否 |
sandbox.browser_container.docker_probe_timeout | warn | 浏览器容器的 Docker 标签探测超时 | Docker 守护进程可达性 | 否 |
tools.exec.host_sandbox_no_sandbox_defaults | warn | Sandbox 关闭时,exec host=sandbox 会以故障关闭 | tools.exec.host、agents.defaults.sandbox.mode | 否 |
tools.exec.host_sandbox_no_sandbox_agents | warn | Sandbox 关闭时,按 agent 配置的 exec host=sandbox 会以故障关闭 | agents.entries.*.tools.exec.host、agents.entries.*.sandbox.mode | 否 |
tools.exec.security_full_configured | warn/critical | 主机 exec 运行时使用了 security="full" | tools.exec.security、agents.entries.*.tools.exec.security | 否 |
tools.exec.agent_skill_mcp_boundary_drift | warn | 存在 agent 技能允许列表,同时主机 exec 可以访问 MCP 客户端/注册表 | agents.entries.*.tools.exec.*、Sandbox/操作系统隔离、MCP 服务器凭据 | 否 |
tools.exec.fs_tools_disabled_but_exec_enabled | warn | 文件系统工具策略未使 shell 执行变为只读 | tools.deny、agents.entries.*.tools.deny、agents.*.sandbox.workspaceAccess | 否 |
tools.exec.auto_allow_skills_enabled | warn | Exec 审批会隐式信任技能二进制文件 | 主机审批文件 | 否 |
tools.exec.allowlist_interpreter_without_strict_inline_eval | warn | 解释器允许列表允许内联求值,但未强制重新审批 | tools.exec.strictInlineEval、agents.entries.*.tools.exec.strictInlineEval、exec 审批允许列表 | 否 |
tools.exec.safe_bins_interpreter_unprofiled | warn | safeBins 中的解释器/运行时二进制文件未配置显式配置文件,扩大了 exec 风险 | tools.exec.safeBins、tools.exec.safeBinProfiles、agents.entries.*.tools.exec.* | 否 |
tools.exec.safe_bins_broad_behavior | warn | safeBins 中的广泛行为工具削弱了低风险 stdin 过滤信任模型 | tools.exec.safeBins、agents.entries.*.tools.exec.safeBins | 否 |
tools.exec.safe_bin_trusted_dirs_risky | warn | safeBinTrustedDirs 包含可变或有风险的目录 | tools.exec.safeBinTrustedDirs、agents.entries.*.tools.exec.safeBinTrustedDirs | 否 |
tools.elevated.allowFrom.<provider>.wildcard | critical | tools.elevated.allowFrom.<provider> 包含 "*",会批准所有发送者 | tools.elevated.allowFrom.<provider> | 否 |
tools.elevated.allowFrom.<provider>.large | warn | <provider> 的提升权限允许列表包含超过 25 个条目 | tools.elevated.allowFrom.<provider> | 否 |
skills.workspace.symlink_escape | warn | 工作区 skills/**/SKILL.md 解析到工作区根目录之外(符号链接链偏移) | 工作区 skills/** 文件系统状态 | 否 |
skills.workspace.scan_truncated | warn | 工作区技能扫描在完成前达到目录访问上限 | 展平/简化工作区 skills/ 目录树 | 否 |
plugins.extensions_no_allowlist | warn | 安装插件时未配置显式插件允许列表 | plugins.allowlist | 否 |
plugins.allow_phantom_entries | warn | plugins.allow 列出了没有匹配已安装插件的 ID | plugins.allow | 否 |
plugins.installs_unpinned_npm_specs | warn | 插件索引记录未固定到不可变的 npm 规范 | 插件安装元数据 | 否 |
plugins.installs_missing_integrity | warn | 插件索引记录缺少完整性元数据 | 插件安装元数据 | 否 |
plugins.installs_version_drift | warn | 插件索引记录与已安装的软件包发生版本偏移 | 插件安装元数据 | 否 |
plugins.code_safety | warn/critical | 插件代码扫描发现可疑或危险模式(仅限 --deep) | 插件代码 / 安装源 | 否 |
plugins.code_safety.entry_path | warn | 插件入口路径指向隐藏目录或 node_modules 位置 | 插件清单 entry | 否 |
plugins.code_safety.entry_escape | critical | 插件入口逃逸出插件目录 | 插件清单 entry | 否 |
plugins.code_safety.manifest_parse_error | warn | 代码安全扫描期间无法解析插件清单 | 插件清单文件 | 否 |
plugins.code_safety.scan_failed | warn | 插件代码扫描无法完成(仅限 --deep) | 插件路径 / 扫描环境 | 否 |
plugins.<pluginId>.security_audit_failed | warn | 插件自有的安全审计收集器抛出错误 | 该插件的安全审计收集器 | 否 |
skills.code_safety | warn/critical | 技能安装器元数据/代码包含可疑或危险模式(仅限 --deep) | 技能安装源 | 否 |
skills.code_safety.scan_failed | warn | 技能代码扫描无法完成(仅限 --deep) | 技能扫描环境 | 否 |
channels.discord.allowlisted_groups.broad_members | warn | 允许列表中的 Discord guild/channel 目标没有成员或角色限制 | channels.discord.guilds.*.users/roles、每个频道的 users/roles | 否 |
security.exposure.open_channels_with_exec | warn/critical | 共享/公共房间可以访问启用了 exec 的 agent | channels.*.dmPolicy、channels.*.groupPolicy、tools.exec.*、agents.entries.*.tools.exec.* | 否 |
security.exposure.open_groups_with_elevated | critical | 开放 DM/群组加上提升权限工具会形成高影响力的提示注入路径 | 顶层或嵌套的 DM 策略路径、账户覆盖设置、channels.*.groupPolicy | 否 |
security.exposure.open_groups_with_runtime_or_fs | critical/warn | 开放 DM/群组可以访问命令/文件工具,且没有 Sandbox/工作区防护 | DM/群组策略路径、tools.profile/deny、tools.fs.workspaceOnly、agents.*.sandbox.mode | 否 |
security.exposure.open_groups_with_control_plane_tools | critical | 开放 DM/群组可以访问 Gateway/cron 控制平面工具 | DM/群组策略路径、tools.allow、tools.alsoAllow、tools.profile、gateway、cron | 否 |
security.trust_model.multi_user_heuristic | warn | 配置看起来是多用户模式,而 Gateway 信任模型是个人助理模式 | 拆分信任边界,或加强共享用户防护(sandbox.mode、工具拒绝/工作区范围限制) | 否 |
tools.profile_minimal_overridden | warn | agent 覆盖设置绕过了全局最小配置文件 | agents.entries.*.tools.profile | 否 |
plugins.tools_reachable_permissive_policy | warn | 在宽松上下文中可以访问扩展工具 | tools.profile + 工具允许/拒绝策略 | 否 |
models.legacy | warn | 仍配置了旧版模型系列 | 模型选择 | 否 |
models.weak_tier | warn | 已配置模型低于当前推荐等级 | 模型选择 | 否 |
models.small_params | critical/info | 小型模型加上不安全的工具面会提高注入风险 | 模型选择 + Sandbox/工具策略 | 否 |
channels.<provider>.dm.open | critical | <provider> DM 策略为 "open";任何人都可以私信机器人 | channels.<provider>.dmPolicy、.allowFrom | 否 |
channels.<provider>.dm.open_invalid | warn | dmPolicy="open" 但 allowFrom 中没有 "*",配置不一致 | channels.<provider>.allowFrom | 否 |
channels.<provider>.dm.scope_main_multiuser | warn | 多个 DM 发送者当前共享主会话 | session.dmScope | 否 |
channels.<provider>.allowFrom.dangerous_name_matching_enabled | info | dangerouslyAllowNameMatching 重新启用了可变的名称/邮箱/标签发送者匹配 | 禁用 dangerouslyAllowNameMatching,使用稳定的发送者 ID | 否 |
channels.<provider>.account.read_only_resolution | warn | 无法为审计完整解析频道账户(缺少机密信息/Gateway) | 确保所引用的机密信息可解析,或针对实时 Gateway 快照运行 | 否 |
channels.<provider>.warning.<n> | info/warn/critical | 提供商特定的安全警告,根据插件自由格式文本分类 | 参见发现详情 | 否 |
summary.attack_surface | info | 身份验证、频道、工具和暴露状态的汇总 | 多个键(参见发现详情) | 否 |