---
read_when:
    - 你在 `openclaw security audit` 输出中看到了特定的 `checkId`，想知道它是什么意思
    - 你需要某个发现项对应的修复键/路径
    - 你正在对一次安全审计运行中的严重性进行分级
summary: '`openclaw security audit` 发出的 checkId 参考目录'
title: 安全审计检查项
x-i18n:
    generated_at: "2026-04-23T20:50:11Z"
    model: gpt-5.4
    provider: openai
    source_hash: 107232e94aae9e12b160840691f5a12be6c354dd6162ff5f59b6a56475d27649
    source_path: gateway/security/audit-checks.md
    workflow: 15
---

`openclaw security audit` 会输出按 `checkId` 标识的结构化发现项。本页是这些 ID 的参考目录。有关高层威胁模型和加固指南，请参见 [Security](/zh-CN/gateway/security)。

在真实部署中你最有可能看到的高信号 `checkId` 值（非完整列表）：

| `checkId` | 严重性 | 为什么重要 | 主要修复键/路径 | 自动修复 |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | -------- |
| `fs.state_dir.perms_world_writable` | critical | 其他用户/进程可以修改完整 OpenClaw 状态 | `~/.openclaw` 上的文件系统权限 | yes |
| `fs.state_dir.perms_group_writable` | warn | 同组用户可以修改完整 OpenClaw 状态 | `~/.openclaw` 上的文件系统权限 | yes |
| `fs.state_dir.perms_readable` | warn | 状态目录对其他人可读 | `~/.openclaw` 上的文件系统权限 | yes |
| `fs.state_dir.symlink` | warn | 状态目录目标会变成另一个信任边界 | 状态目录文件系统布局 | no |
| `fs.config.perms_writable` | critical | 其他人可以更改认证/工具策略/配置 | `~/.openclaw/openclaw.json` 上的文件系统权限 | yes |
| `fs.config.symlink` | warn | 符号链接配置文件不支持写入，并增加另一个信任边界 | 替换为常规配置文件，或将 `OPENCLAW_CONFIG_PATH` 指向真实文件 | no |
| `fs.config.perms_group_readable` | warn | 同组用户可以读取配置 token/设置 | 配置文件上的文件系统权限 | yes |
| `fs.config.perms_world_readable` | critical | 配置可能泄露 token/设置 | 配置文件上的文件系统权限 | yes |
| `fs.config_include.perms_writable` | critical | 配置 include 文件可被其他人修改 | `openclaw.json` 引用的 include 文件权限 | yes |
| `fs.config_include.perms_group_readable` | warn | 同组用户可以读取包含的密钥/设置 | `openclaw.json` 引用的 include 文件权限 | yes |
| `fs.config_include.perms_world_readable` | critical | 包含的密钥/设置对所有人可读 | `openclaw.json` 引用的 include 文件权限 | yes |
| `fs.auth_profiles.perms_writable` | critical | 其他人可以注入或替换已存储的模型凭证 | `agents/<agentId>/agent/auth-profiles.json` 权限 | yes |
| `fs.auth_profiles.perms_readable` | warn | 其他人可以读取 API 密钥和 OAuth token | `agents/<agentId>/agent/auth-profiles.json` 权限 | yes |
| `fs.credentials_dir.perms_writable` | critical | 其他人可以修改渠道配对/凭证状态 | `~/.openclaw/credentials` 上的文件系统权限 | yes |
| `fs.credentials_dir.perms_readable` | warn | 其他人可以读取渠道凭证状态 | `~/.openclaw/credentials` 上的文件系统权限 | yes |
| `fs.sessions_store.perms_readable` | warn | 其他人可以读取会话转录/元数据 | 会话存储权限 | yes |
| `fs.log_file.perms_readable` | warn | 其他人可以读取虽经脱敏但仍敏感的日志 | gateway 日志文件权限 | yes |
| `fs.synced_dir` | warn | 将状态/配置放在 iCloud/Dropbox/Drive 中会扩大 token/转录暴露范围 | 将配置/状态移出同步文件夹 | no |
| `gateway.bind_no_auth` | critical | 远程绑定但没有共享密钥 | `gateway.bind`、`gateway.auth.*` | no |
| `gateway.loopback_no_auth` | critical | 反向代理后的 loopback 可能变成未认证 | `gateway.auth.*`、代理设置 | no |
| `gateway.trusted_proxies_missing` | warn | 存在反向代理头，但未被信任 | `gateway.trustedProxies` | no |
| `gateway.http.no_auth` | warn/critical | 使用 `auth.mode="none"` 时 Gateway 网关 HTTP API 可达 | `gateway.auth.mode`、`gateway.http.endpoints.*` | no |
| `gateway.http.session_key_override_enabled` | info | HTTP API 调用方可以覆盖 `sessionKey` | `gateway.http.allowSessionKeyOverride` | no |
| `gateway.tools_invoke_http.dangerous_allow` | warn/critical | 通过 HTTP API 重新启用危险工具 | `gateway.tools.allow` | no |
| `gateway.nodes.allow_commands_dangerous` | warn/critical | 启用高影响节点命令（camera/screen/contacts/calendar/SMS） | `gateway.nodes.allowCommands` | no |
| `gateway.nodes.deny_commands_ineffective` | warn | 类似模式的 deny 条目不会匹配 shell 文本或分组 | `gateway.nodes.denyCommands` | no |
| `gateway.tailscale_funnel` | critical | 暴露到公共互联网 | `gateway.tailscale.mode` | no |
| `gateway.tailscale_serve` | info | 已通过 Serve 启用 tailnet 暴露 | `gateway.tailscale.mode` | no |
| `gateway.control_ui.allowed_origins_required` | critical | 非 loopback 的 Control UI 未显式设置浏览器来源允许列表 | `gateway.controlUi.allowedOrigins` | no |
| `gateway.control_ui.allowed_origins_wildcard` | warn/critical | `allowedOrigins=["*"]` 会禁用浏览器来源允许列表 | `gateway.controlUi.allowedOrigins` | no |
| `gateway.control_ui.host_header_origin_fallback` | warn/critical | 启用 Host 标头来源回退（降低 DNS rebinding 加固强度） | `gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback` | no |
| `gateway.control_ui.insecure_auth` | warn | 启用了不安全认证兼容开关 | `gateway.controlUi.allowInsecureAuth` | no |
| `gateway.control_ui.device_auth_disabled` | critical | 禁用了设备身份检查 | `gateway.controlUi.dangerouslyDisableDeviceAuth` | no |
| `gateway.real_ip_fallback_enabled` | warn/critical | 信任 `X-Real-IP` 回退可能因代理配置错误而导致源 IP 伪造 | `gateway.allowRealIpFallback`、`gateway.trustedProxies` | no |
| `gateway.token_too_short` | warn | 共享 token 过短，更容易被暴力破解 | `gateway.auth.token` | no |
| `gateway.auth_no_rate_limit` | warn | 暴露的认证没有速率限制会增加暴力破解风险 | `gateway.auth.rateLimit` | no |
| `gateway.trusted_proxy_auth` | critical | 代理身份现在成为认证边界 | `gateway.auth.mode="trusted-proxy"` | no |
| `gateway.trusted_proxy_no_proxies` | critical | 没有受信任代理 IP 的 trusted-proxy 认证是不安全的 | `gateway.trustedProxies` | no |
| `gateway.trusted_proxy_no_user_header` | critical | trusted-proxy 认证无法安全解析用户身份 | `gateway.auth.trustedProxy.userHeader` | no |
| `gateway.trusted_proxy_no_allowlist` | warn | trusted-proxy 认证会接受任何已认证的上游用户 | `gateway.auth.trustedProxy.allowUsers` | no |
| `checkId` | 严重性 | 为什么重要 | 主要修复键/路径 | 自动修复 |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | -------- |
| `gateway.probe_auth_secretref_unavailable` | warn | 深度探测无法在此命令路径中解析认证 SecretRef | 深度探测认证来源 / SecretRef 可用性 | no |
| `gateway.probe_failed` | warn/critical | 实时 Gateway 网关探测失败 | gateway 可达性/认证 | no |
| `discovery.mdns_full_mode` | warn/critical | mDNS full 模式会在本地网络上广播 `cliPath`/`sshPort` 元数据 | `discovery.mdns.mode`、`gateway.bind` | no |
| `config.insecure_or_dangerous_flags` | warn | 启用了任意不安全/危险调试标志 | 多个键（见发现详情） | no |
| `config.secrets.gateway_password_in_config` | warn | Gateway 网关密码被直接存储在配置中 | `gateway.auth.password` | no |
| `config.secrets.hooks_token_in_config` | warn | Hook bearer token 被直接存储在配置中 | `hooks.token` | no |
| `hooks.token_reuse_gateway_token` | critical | Hook 入口 token 同时也能解锁 Gateway 网关认证 | `hooks.token`、`gateway.auth.token` | 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 specs | 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 | 浏览器控制在无 token/password 认证下暴露 | `gateway.auth.*` | no |
| `browser.remote_cdp_http` | warn | 通过明文 HTTP 访问远程 CDP 缺乏传输加密 | 浏览器 profile `cdpUrl` | no |
| `browser.remote_cdp_private_host` | warn | 远程 CDP 指向私有/内部主机 | 浏览器 profile `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 socket 路径 | `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 | 现有浏览器容器在非 loopback 接口上发布 CDP | 浏览器沙箱容器发布配置 | no |
| `sandbox.browser_container.hash_label_missing` | warn | 现有浏览器容器早于当前配置哈希标签 | `openclaw sandbox recreate --browser --all` | no |
| `sandbox.browser_container.hash_epoch_stale` | warn | 现有浏览器容器早于当前浏览器配置 epoch | `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 | 主机 exec 正在使用 `security="full"` 运行 | `tools.exec.security`、`agents.list[].tools.exec.security` | no |
| `tools.exec.auto_allow_skills_enabled` | warn | Exec 审批会隐式信任 skill bin | `~/.openclaw/exec-approvals.json` | no |
| `tools.exec.allowlist_interpreter_without_strict_inline_eval` | warn | 解释器允许列表允许内联 eval，且未强制重新审批 | `tools.exec.strictInlineEval`、`agents.list[].tools.exec.strictInlineEval`、exec approvals allowlist | no |
| `tools.exec.safe_bins_interpreter_unprofiled` | warn | `safeBins` 中的解释器/运行时 bin 没有显式 profile，会扩大 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/**` 文件系统状态 | no |
| `plugins.extensions_no_allowlist` | warn | 安装插件时没有显式插件允许列表 | `plugins.allowlist` | no |
| `plugins.installs_unpinned_npm_specs` | warn | 插件安装记录未固定到不可变 npm specs | 插件安装元数据 | no |
| `checkId` | 严重性 | 为什么重要 | 主要修复键/路径 | 自动修复 |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | -------- |
| `plugins.installs_missing_integrity` | warn | 插件安装记录缺少完整性元数据 | 插件安装元数据 | no |
| `plugins.installs_version_drift` | warn | 插件安装记录与已安装包发生漂移 | 插件安装元数据 | no |
| `plugins.code_safety` | warn/critical | 插件代码扫描发现可疑或危险模式 | 插件代码 / 安装来源 | no |
| `plugins.code_safety.entry_path` | warn | 插件入口路径指向隐藏目录或 `node_modules` 位置 | 插件 manifest `entry` | no |
| `plugins.code_safety.entry_escape` | critical | 插件入口逃逸出插件目录 | 插件 manifest `entry` | no |
| `plugins.code_safety.scan_failed` | warn | 插件代码扫描无法完成 | 插件路径 / 扫描环境 | no |
| `skills.code_safety` | warn/critical | Skills 安装器元数据/代码包含可疑或危险模式 | skill 安装来源 | no |
| `skills.code_safety.scan_failed` | warn | skill 代码扫描无法完成 | skill 扫描环境 | no |
| `security.exposure.open_channels_with_exec` | warn/critical | 共享/公共房间可以访问启用了 exec 的智能体 | `channels.*.dmPolicy`、`channels.*.groupPolicy`、`tools.exec.*`、`agents.list[].tools.exec.*` | no |
| `security.exposure.open_groups_with_elevated` | critical | 开放群组 + elevated 工具会形成高影响提示词注入路径 | `channels.*.groupPolicy`、`tools.elevated.*` | no |
| `security.exposure.open_groups_with_runtime_or_fs` | critical/warn | 开放群组可以在没有沙箱/工作区防护的情况下访问命令/文件工具 | `channels.*.groupPolicy`、`tools.profile/deny`、`tools.fs.workspaceOnly`、`agents.*.sandbox.mode` | no |
| `security.trust_model.multi_user_heuristic` | warn | 配置看起来是多用户环境，但 gateway 信任模型是个人助理 | 拆分信任边界，或进行共享用户加固（`sandbox.mode`、工具 deny/工作区范围控制） | no |
| `tools.profile_minimal_overridden` | warn | 智能体覆盖绕过了全局最小配置文件 | `agents.list[].tools.profile` | no |
| `plugins.tools_reachable_permissive_policy` | warn | 扩展工具在宽松上下文中可达 | `tools.profile` + 工具 allow/deny | no |
| `models.legacy` | warn | 仍配置了旧版模型家族 | 模型选择 | no |
| `models.weak_tier` | warn | 已配置模型低于当前推荐层级 | 模型选择 | no |
| `models.small_params` | critical/info | 小模型 + 不安全工具界面会提高注入风险 | 模型选择 + 沙箱/工具策略 | no |
| `summary.attack_surface` | info | 对认证、渠道、工具和暴露姿态的汇总摘要 | 多个键（见发现详情） | no |

## 相关内容

- [Security](/zh-CN/gateway/security)
- [Configuration](/zh-CN/gateway/configuration)
- [Trusted proxy auth](/zh-CN/gateway/trusted-proxy-auth)
