Gateway
セキュリティ監査チェック
openclaw security audit は、checkId をキーとする構造化された検出結果を出力します。この
ページは、それらの ID のリファレンスカタログです。脅威モデルの概要と
強化のガイダンスについては、セキュリティを参照してください。
一部のチェックは openclaw security audit --deep を指定した場合にのみ実行されます。具体的には、plugin/skill コードの
スキャン(plugins.code_safety*、skills.code_safety*)と、稼働中の Gateway のプローブ
チェック(gateway.probe_*)です。この表にあるその他すべてのチェックは、通常の
openclaw security audit で実行されます。
warn/critical のような重大度は、設定に応じて同じ checkId が
いずれかのレベルで出力される可能性があることを意味します(たとえば、Gateway がリモートに
公開されているかどうかによります)。実際のデプロイで目にする可能性が最も高い、重要度の高い値は次のとおりです(網羅的な一覧ではありません)。
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 |
重大 | リバースプロキシ経由のループバックが未認証になる可能性がある | gateway.auth.*、プロキシ設定 |
いいえ |
gateway.trusted_proxies_missing |
警告 | リバースプロキシヘッダーが存在するが、信頼されていない | gateway.trustedProxies |
いいえ |
gateway.http.no_auth |
警告/重大 | auth.mode="none" で Gateway HTTP API に到達できる |
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 |
警告/重大 | 影響の大きい Node コマンド(デスクトップ入力/カメラ/画面/連絡先/カレンダー/SMS)を有効にする | gateway.nodes.commands.allow |
いいえ |
gateway.nodes.deny_commands_ineffective |
警告 | パターン形式の拒否エントリはシェルテキストやグループに一致しない | gateway.nodes.commands.deny |
いいえ |
gateway.tailscale_funnel |
重大 | 公開インターネットへの露出 | gateway.tailscale.mode |
いいえ |
gateway.tailscale_serve |
情報 | Serve を介した tailnet への露出が有効になっている | gateway.tailscale.mode |
いいえ |
gateway.control_ui.allowed_origins_required |
重大 | ブラウザーオリジンの明示的な許可リストなしで、ループバック以外の Control UI が公開されている | gateway.controlUi.allowedOrigins |
いいえ |
gateway.control_ui.allowed_origins_wildcard |
警告/重大 | allowedOrigins=["*"] がブラウザーオリジンの許可リストを無効にする |
gateway.controlUi.allowedOrigins |
いいえ |
gateway.control_ui.host_header_origin_fallback |
警告/重大 | Host ヘッダーによるオリジンのフォールバックを有効にする(DNS リバインディング対策の弱体化) | gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback |
いいえ |
gateway.control_ui.insecure_auth |
警告 | 安全でない認証の互換性切り替えが有効になっている | gateway.controlUi.allowInsecureAuth |
いいえ |
gateway.control_ui.device_auth_disabled |
重大 | 廃止されたデバイス認証バイパスの移行処理が、依然として修復アクセスを許可している | このブラウザーを保護 のペアリングを完了する(gateway.controlUi.deviceAuthMigration の状態) |
いいえ |
gateway.real_ip_fallback_enabled |
警告/重大 | 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 |
警告 | 信頼済みプロキシ認証が、明示的に許可されたループバックプロキシの送信元を受け入れる | gateway.auth.trustedProxy.allowLoopback |
いいえ |
gateway.probe_auth_secretref_unavailable |
警告 | このコマンドパスでは、詳細プローブが認証 SecretRef を解決できませんでした | 詳細プローブの認証ソース / SecretRef の可用性 | いいえ |
gateway.probe_failed |
警告 | ライブ Gateway プローブに失敗しました(--deep のみ) |
Gateway の到達可能性/認証 | いいえ |
discovery.mdns_full_mode |
警告/重大 | mDNS フルモードは、ローカルネットワーク上で cliPath/sshPort メタデータを公開します |
discovery.mdns.mode、gateway.bind |
いいえ |
config.insecure_or_dangerous_flags |
警告 | 安全でない/危険なデバッグフラグが 1 つ有効になっています | 検出結果の詳細に記載されたキー | いいえ |
security.audit.suppressions.active |
情報 | 監査出力には抑制が設定されており、フィルタリングされる可能性があります | security.audit.suppressions |
いいえ |
config.secrets.gateway_password_in_config |
警告 | Gateway のパスワードが設定に直接保存されています | gateway.auth.password |
いいえ |
config.secrets.hooks_token_in_config |
警告 | フックのベアラートークンが設定に直接保存されています | hooks.token |
いいえ |
hooks.token_reuse_gateway_token |
重大 | フックの受信トークンによって Gateway 認証も解除されます | hooks.token、gateway.auth.token、gateway.auth.password |
いいえ |
hooks.token_too_short |
警告 | フックの受信に対するブルートフォース攻撃が容易になります | hooks.token |
いいえ |
hooks.default_session_key_unset |
警告 | フックエージェントの実行が、リクエストごとに生成されるセッションへ分散します | hooks.defaultSessionKey |
いいえ |
hooks.allowed_agent_ids_unrestricted |
警告/重大 | 認証済みのフック呼び出し元は、設定済みの任意のエージェントにルーティングできます | hooks.allowedAgentIds |
いいえ |
hooks.request_session_key_enabled |
警告/重大 | 外部の呼び出し元が sessionKey を選択できます | hooks.allowRequestSessionKey |
いいえ |
hooks.request_session_key_prefixes_missing |
警告/重大 | 外部セッションキーの形式に制限がありません | hooks.allowedSessionKeyPrefixes |
いいえ |
hooks.path_root |
重大 | フックパスが / であるため、受信時の衝突や誤ルーティングが起きやすくなります |
hooks.path |
いいえ |
hooks.installs_unpinned_npm_specs |
警告 | フックのインストール記録が不変の npm 仕様に固定されていません | フックのインストールメタデータ | いいえ |
hooks.installs_missing_integrity |
警告 | フックのインストール記録に整合性メタデータがありません | フックのインストールメタデータ | いいえ |
hooks.installs_version_drift |
警告 | フックのインストール記録がインストール済みパッケージから乖離しています | フックのインストールメタデータ | いいえ |
logging.redact_off |
警告 | 機密値がログ/ステータスに漏洩します | logging.redactSensitive |
はい |
browser.control_invalid_config |
警告 | ブラウザ制御の設定がランタイム実行前の時点で無効です | browser.* |
いいえ |
browser.control_no_auth |
重大 | トークン/パスワード認証なしでブラウザ制御が公開されています | gateway.auth.* |
いいえ |
browser.remote_cdp_http |
警告 | 平文 HTTP 経由のリモート CDP には通信の暗号化がありません | ブラウザプロファイル cdpUrl |
いいえ |
browser.remote_cdp_private_host |
警告 | リモート CDP がプライベート/内部ホストを対象にしています | ブラウザプロファイル cdpUrl、browser.ssrfPolicy.* |
いいえ |
sandbox.docker_config_mode_off |
警告 | Sandbox の Docker 設定が存在しますが、有効ではありません | agents.*.sandbox.mode |
いいえ |
sandbox.bind_mount_non_absolute |
警告 | 相対バインドマウントは予測不能なパスに解決される可能性があります | agents.*.sandbox.docker.binds[] |
いいえ |
sandbox.dangerous_bind_mount |
重大 | Sandbox のバインドマウントが、ブロック対象のシステム、認証情報、または Docker ソケットのパスを指しています | agents.*.sandbox.docker.binds[] |
いいえ |
sandbox.dangerous_network_mode |
重大 | Sandbox の Docker ネットワークが host または container:* の名前空間参加モードを使用しています |
agents.*.sandbox.docker.network |
いいえ |
sandbox.dangerous_seccomp_profile |
重大 | Sandbox の seccomp プロファイルがコンテナの分離を弱めています | agents.*.sandbox.docker.securityOpt |
いいえ |
sandbox.dangerous_apparmor_profile |
重大 | Sandbox の AppArmor プロファイルがコンテナの分離を弱めています | agents.*.sandbox.docker.securityOpt |
いいえ |
sandbox.browser_cdp_bridge_unrestricted |
警告 | Sandbox のブラウザブリッジが送信元範囲の制限なしで公開されています | sandbox.browser.cdpSourceRange |
いいえ |
sandbox.browser_container.non_loopback_publish |
重大 | 既存のブラウザコンテナが非ループバックインターフェースで CDP を公開しています | ブラウザ Sandbox コンテナの公開設定 | いいえ |
sandbox.browser_container.hash_label_missing |
警告 | 既存のブラウザコンテナが現在の設定ハッシュラベルより前に作成されています | openclaw sandbox recreate --browser --all |
いいえ |
sandbox.browser_container.hash_epoch_stale |
警告 | 既存のブラウザコンテナが現在のブラウザ設定エポックより前に作成されています | openclaw sandbox recreate --browser --all |
いいえ |
sandbox.browser_container.docker_probe_timeout |
警告 | ブラウザコンテナに対する Docker ラベルプローブがタイムアウトしました | Docker デーモンの到達可能性 | いいえ |
tools.exec.host_sandbox_no_sandbox_defaults |
警告 | Sandbox がオフの場合、exec host=sandbox はフェイルクローズします |
tools.exec.host、agents.defaults.sandbox.mode |
いいえ |
tools.exec.host_sandbox_no_sandbox_agents |
警告 | Sandbox がオフの場合、エージェントごとの exec host=sandbox はフェイルクローズします |
agents.entries.*.tools.exec.host、agents.entries.*.sandbox.mode |
いいえ |
tools.exec.security_full_configured |
警告/重大 | ホストでのコマンド実行が security="full" で動作しています |
tools.exec.security、agents.entries.*.tools.exec.security |
いいえ |
tools.exec.agent_skill_mcp_boundary_drift |
警告 | ホストでのコマンド実行が MCP クライアント/レジストリに到達できる状態で、エージェント Skills の許可リストが存在します | agents.entries.*.tools.exec.*、Sandbox/OS の分離、MCP サーバーの認証情報 |
いいえ |
tools.exec.fs_tools_disabled_but_exec_enabled |
警告 | ファイルシステムツールのポリシーでは、シェル実行は読み取り専用になりません | tools.deny、agents.entries.*.tools.deny、agents.*.sandbox.workspaceAccess |
いいえ |
tools.exec.auto_allow_skills_enabled |
警告 | 実行承認は Skills のバイナリを暗黙的に信頼します | ホストの承認ファイル | いいえ |
tools.exec.allowlist_interpreter_without_strict_inline_eval |
警告 | インタープリターの許可リストにより、強制的な再承認なしでインライン評価が許可されます | tools.exec.strictInlineEval、agents.entries.*.tools.exec.strictInlineEval、実行承認の許可リスト |
いいえ |
tools.exec.safe_bins_interpreter_unprofiled |
警告 | 明示的なプロファイルなしで safeBins にインタープリター/ランタイムのバイナリがあると、実行リスクが広がります |
tools.exec.safeBins、tools.exec.safeBinProfiles、agents.entries.*.tools.exec.* |
いいえ |
tools.exec.safe_bins_broad_behavior |
警告 | safeBins に含まれる広範な動作を行うツールは、低リスクの標準入力フィルター信頼モデルを弱めます |
tools.exec.safeBins、agents.entries.*.tools.exec.safeBins |
いいえ |
tools.exec.safe_bin_trusted_dirs_risky |
警告 | safeBinTrustedDirs に変更可能または危険なディレクトリが含まれています |
tools.exec.safeBinTrustedDirs、agents.entries.*.tools.exec.safeBinTrustedDirs |
いいえ |
tools.elevated.allowFrom.<provider>.wildcard |
重大 | tools.elevated.allowFrom.<provider> に "*" が含まれており、すべての送信者が承認されます |
tools.elevated.allowFrom.<provider> |
いいえ |
tools.elevated.allowFrom.<provider>.large |
警告 | <provider> の昇格許可リストに 25 件を超えるエントリがあります |
tools.elevated.allowFrom.<provider> |
いいえ |
skills.workspace.symlink_escape |
警告 | ワークスペース skills/**/SKILL.md がワークスペースルート外に解決されます(シンボリックリンクチェーンのずれ) |
ワークスペース skills/** のファイルシステム状態 |
いいえ |
skills.workspace.scan_truncated |
警告 | ワークスペースのスキルスキャンが完了前にディレクトリ訪問上限に達しました | ワークスペース skills/ のディレクトリツリーをフラット化または簡素化 |
いいえ |
plugins.extensions_no_allowlist |
警告 | 明示的な Plugin 許可リストなしで Plugin がインストールされています | plugins.allowlist |
いいえ |
plugins.allow_phantom_entries |
警告 | plugins.allow に、インストール済み Plugin と一致しない ID が含まれています |
plugins.allow |
いいえ |
plugins.installs_unpinned_npm_specs |
警告 | Plugin インデックスレコードが不変の npm 仕様に固定されていません | Plugin のインストールメタデータ | いいえ |
plugins.installs_missing_integrity |
警告 | Plugin インデックスレコードに整合性メタデータがありません | Plugin のインストールメタデータ | いいえ |
plugins.installs_version_drift |
警告 | Plugin インデックスレコードがインストール済みパッケージと一致していません | Plugin のインストールメタデータ | いいえ |
plugins.code_safety |
警告/重大 | Plugin コードスキャンで疑わしい、または危険なパターンが見つかりました(--deep のみ) |
Plugin コード / インストール元 | いいえ |
plugins.code_safety.entry_path |
警告 | Plugin のエントリパスが非表示または node_modules の場所を指しています |
Plugin マニフェスト entry |
いいえ |
plugins.code_safety.entry_escape |
重大 | Plugin のエントリが Plugin ディレクトリ外に抜けています | Plugin マニフェスト entry |
いいえ |
plugins.code_safety.manifest_parse_error |
警告 | コード安全性スキャン中に Plugin マニフェストを解析できませんでした | Plugin マニフェストファイル | いいえ |
plugins.code_safety.scan_failed |
警告 | Plugin コードスキャンを完了できませんでした(--deep のみ) |
Plugin のパス / スキャン環境 | いいえ |
plugins.<pluginId>.security_audit_failed |
警告 | Plugin が所有するセキュリティ監査コレクターでエラーが発生しました | その Plugin のセキュリティ監査コレクター | いいえ |
skills.code_safety |
警告/重大 | スキルインストーラーのメタデータまたはコードに疑わしい、または危険なパターンが含まれています(--deep のみ) |
スキルのインストール元 | いいえ |
skills.code_safety.scan_failed |
警告 | スキルコードのスキャンを完了できませんでした(--deep のみ) |
スキルスキャン環境 | いいえ |
channels.discord.allowlisted_groups.broad_members |
警告 | 許可リストに登録された Discord のギルド/チャンネル対象にメンバーまたはロールの制限がありません | channels.discord.guilds.*.users/roles、チャンネルごとの users/roles |
いいえ |
security.exposure.open_channels_with_exec |
警告/重大 | 共有/公開ルームから exec が有効なエージェントにアクセスできます | channels.*.dmPolicy、channels.*.groupPolicy、tools.exec.*、agents.entries.*.tools.exec.* |
いいえ |
security.exposure.open_groups_with_elevated |
重大 | 開放された DM/グループと昇格ツールの組み合わせにより、影響の大きいプロンプトインジェクション経路が生じます | トップレベルまたはネストされた DM ポリシーのパス、アカウントのオーバーライド、channels.*.groupPolicy |
いいえ |
security.exposure.open_groups_with_runtime_or_fs |
重大/警告 | 開放された DM/グループから、サンドボックス/ワークスペースのガードなしでコマンド/ファイルツールにアクセスできます | DM/グループポリシーのパス、tools.profile/deny、tools.fs.workspaceOnly、agents.*.sandbox.mode |
いいえ |
security.exposure.open_groups_with_control_plane_tools |
重大 | 開放された DM/グループから Gateway/Cron のコントロールプレーンツールにアクセスできます | DM/グループポリシーのパス、tools.allow、tools.alsoAllow、tools.profile、gateway、cron |
いいえ |
security.trust_model.multi_user_heuristic |
警告 | 設定はマルチユーザー向けに見えますが、Gateway の信頼モデルはパーソナルアシスタント向けです | 信頼境界を分離するか、共有ユーザー向けの強化(sandbox.mode、ツールの拒否/ワークスペースのスコープ設定) |
いいえ |
tools.profile_minimal_overridden |
警告 | エージェントのオーバーライドがグローバルな最小プロファイルを回避しています | agents.entries.*.tools.profile |
いいえ |
plugins.tools_reachable_permissive_policy |
警告 | 制限の緩いコンテキストから拡張ツールにアクセスできます | tools.profile + ツールの許可/拒否 |
いいえ |
models.legacy |
警告 | 従来のモデルファミリーが引き続き設定されています | モデルの選択 | いいえ |
models.weak_tier |
警告 | 設定されたモデルが現在の推奨ティアを下回っています | モデルの選択 | いいえ |
models.small_params |
重大/情報 | 小規模モデルと安全でないツールサーフェスの組み合わせにより、インジェクションリスクが高まります | モデルの選択 + サンドボックス/ツールポリシー | いいえ |
channels.<provider>.dm.open |
重大 | <provider> の DM ポリシーが "open" です。誰でもボットに DM を送信できます |
channels.<provider>.dmPolicy、.allowFrom |
いいえ |
channels.<provider>.dm.open_invalid |
警告 | allowFrom で "*" なしに dmPolicy="open" を使用するのは一貫性がありません |
channels.<provider>.allowFrom |
いいえ |
channels.<provider>.dm.scope_main_multiuser |
警告 | 現在、複数の DM 送信者がメインセッションを共有しています | session.dmScope |
いいえ |
channels.<provider>.allowFrom.dangerous_name_matching_enabled |
情報 | dangerouslyAllowNameMatching により、変更可能な名前/メール/タグによる送信者照合が再び有効になります |
dangerouslyAllowNameMatching を無効にし、安定した送信者 ID を使用する |
いいえ |
channels.<provider>.account.read_only_resolution |
警告 | チャンネルアカウントを監査用に完全には解決できませんでした(シークレット/Gateway の欠落) | 参照されるシークレットを解決可能にするか、稼働中の Gateway スナップショットに対して実行する | いいえ |
channels.<provider>.warning.<n> |
情報/警告/重大 | 自由形式の Plugin テキストから分類されたプロバイダー固有のセキュリティ警告 | 検出結果の詳細を参照 | いいえ |
summary.attack_surface |
情報 | 認証、チャンネル、ツール、公開状態に関する全体概要 | 複数のキー(検出結果の詳細を参照) | いいえ |
channels.<provider>.* および tools.elevated.allowFrom.<provider>.* の checkId は、
設定されたチャンネル/プロバイダーごとに生成されるため、実際の出力では <provider> はリテラル文字列ではなく、実在するチャンネル ID
(例: telegram、discord)になります。
関連項目
Was this useful?