OpenClaw 脅威モデル v1.0
MITRE ATLASフレームワーク
バージョン: 1.0-draft 最終更新日: 2026-02-04 方法論: MITRE ATLAS + データフロー図 フレームワーク: MITRE ATLAS(AIシステム向け敵対的脅威ランドスケープ)フレームワークの帰属
この脅威モデルは、AI/MLシステムに対する敵対的脅威を文書化する業界標準フレームワークである MITRE ATLAS に基づいています。ATLAS は、AIセキュリティコミュニティと連携しながら MITRE によって維持されています。 主なATLASリソース:この脅威モデルへの貢献
これは OpenClaw コミュニティによって維持される生きた文書です。貢献ガイドラインについては CONTRIBUTING-THREAT-MODEL.md を参照してください。- 新しい脅威の報告
- 既存の脅威の更新
- 攻撃チェーンの提案
- 緩和策の提案
1. はじめに
1.1 目的
この脅威モデルは、AI/MLシステム向けに特化して設計された MITRE ATLAS フレームワークを使用して、OpenClaw AIエージェントプラットフォームおよび ClawHub Skills マーケットプレイスに対する敵対的脅威を文書化します。1.2 対象範囲
| コンポーネント | 含む | 注記 |
|---|---|---|
| OpenClaw Agent Runtime | はい | コアのエージェント実行、ツール呼び出し、セッション |
| Gateway | はい | 認証、ルーティング、チャネル統合 |
| チャネル統合 | はい | WhatsApp、Telegram、Discord、Signal、Slack など |
| ClawHub Marketplace | はい | Skills の公開、モデレーション、配布 |
| MCP Servers | はい | 外部ツールプロバイダー |
| ユーザーデバイス | 一部 | モバイルアプリ、デスクトップクライアント |
1.3 対象外
この脅威モデルでは、明示的に対象外とされるものはありません。2. システムアーキテクチャ
2.1 信頼境界
2.2 データフロー
| フロー | ソース | 宛先 | データ | 保護 |
|---|---|---|---|---|
| F1 | チャネル | Gateway | ユーザーメッセージ | TLS、AllowFrom |
| F2 | Gateway | Agent | ルーティング済みメッセージ | セッション分離 |
| F3 | Agent | Tools | ツール呼び出し | ポリシー適用 |
| F4 | Agent | External | web_fetch リクエスト | SSRF ブロック |
| F5 | ClawHub | Agent | Skill コード | モデレーション、スキャン |
| F6 | Agent | Channel | 応答 | 出力フィルタリング |
3. ATLAS戦術別の脅威分析
3.1 偵察(AML.TA0002)
T-RECON-001: エージェントエンドポイントの発見
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0006 - Active Scanning |
| 説明 | 攻撃者が公開された OpenClaw Gateway エンドポイントをスキャンする |
| 攻撃ベクトル | ネットワークスキャン、shodan クエリ、DNS 列挙 |
| 影響を受けるコンポーネント | Gateway、公開 API エンドポイント |
| 現在の緩和策 | Tailscale 認証オプション、デフォルトで loopback に bind |
| 残留リスク | 中 - 公開 Gateway は発見可能 |
| 推奨事項 | 安全なデプロイを文書化し、発見用エンドポイントにレート制限を追加する |
T-RECON-002: チャネル統合のプロービング
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0006 - Active Scanning |
| 説明 | 攻撃者がメッセージングチャネルを調査して AI 管理アカウントを特定する |
| 攻撃ベクトル | テストメッセージの送信、応答パターンの観察 |
| 影響を受けるコンポーネント | すべてのチャネル統合 |
| 現在の緩和策 | 特になし |
| 残留リスク | 低 - 発見だけでは価値が限定的 |
| 推奨事項 | 応答タイミングのランダム化を検討する |
3.2 初期アクセス(AML.TA0004)
T-ACCESS-001: ペアリングコードの傍受
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0040 - AI Model Inference API Access |
| 説明 | 攻撃者がペアリング猶予期間中にペアリングコードを傍受する(DM チャネルペアリングは1時間、ノードペアリングは5分) |
| 攻撃ベクトル | ショルダーサーフィン、ネットワーク盗聴、ソーシャルエンジニアリング |
| 影響を受けるコンポーネント | デバイスペアリングシステム |
| 現在の緩和策 | 1時間の有効期限(DM ペアリング)/ 5分の有効期限(ノードペアリング)、既存チャネル経由でコード送信 |
| 残留リスク | 中 - 猶予期間が悪用されうる |
| 推奨事項 | 猶予期間を短縮し、確認ステップを追加する |
T-ACCESS-002: AllowFrom のなりすまし
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0040 - AI Model Inference API Access |
| 説明 | 攻撃者がチャネル内で許可済み送信者の ID を偽装する |
| 攻撃ベクトル | チャネルに依存 - 電話番号のなりすまし、ユーザー名の偽装 |
| 影響を受けるコンポーネント | チャネルごとの AllowFrom 検証 |
| 現在の緩和策 | チャネル固有の ID 検証 |
| 残留リスク | 中 - 一部チャネルはなりすましに脆弱 |
| 推奨事項 | チャネル固有のリスクを文書化し、可能な場合は暗号学的検証を追加する |
T-ACCESS-003: トークン窃取
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0040 - AI Model Inference API Access |
| 説明 | 攻撃者が設定ファイルから認証トークンを盗む |
| 攻撃ベクトル | マルウェア、不正なデバイスアクセス、設定バックアップの露出 |
| 影響を受けるコンポーネント | ~/.openclaw/credentials/、設定保存領域 |
| 現在の緩和策 | ファイル権限 |
| 残留リスク | 高 - トークンが平文で保存されている |
| 推奨事項 | 保存時トークン暗号化を実装し、トークンローテーションを追加する |
3.3 実行(AML.TA0005)
T-EXEC-001: 直接プロンプトインジェクション
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0051.000 - LLM Prompt Injection: Direct |
| 説明 | 攻撃者が細工したプロンプトを送り、エージェントの挙動を操作する |
| 攻撃ベクトル | 敵対的指示を含むチャネルメッセージ |
| 影響を受けるコンポーネント | エージェント LLM、すべての入力面 |
| 現在の緩和策 | パターン検出、外部コンテンツのラップ |
| 残留リスク | 重大 - 検出のみでブロックなし。高度な攻撃は回避可能 |
| 推奨事項 | 多層防御、出力検証、機微な操作に対するユーザー確認を実装する |
T-EXEC-002: 間接プロンプトインジェクション
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0051.001 - LLM Prompt Injection: Indirect |
| 説明 | 攻撃者が取得コンテンツに悪意ある指示を埋め込む |
| 攻撃ベクトル | 悪意ある URL、汚染されたメール、侵害された webhook |
| 影響を受けるコンポーネント | web_fetch、メール取り込み、外部データソース |
| 現在の緩和策 | XML タグとセキュリティ通知によるコンテンツラップ |
| 残留リスク | 高 - LLM がラッパー指示を無視する可能性がある |
| 推奨事項 | コンテンツサニタイズ、実行コンテキストの分離を実装する |
T-EXEC-003: ツール引数インジェクション
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0051.000 - LLM Prompt Injection: Direct |
| 説明 | 攻撃者がプロンプトインジェクションを通じてツール引数を操作する |
| 攻撃ベクトル | ツールパラメータ値に影響を与える細工済みプロンプト |
| 影響を受けるコンポーネント | すべてのツール呼び出し |
| 現在の緩和策 | 危険なコマンドに対する exec approvals |
| 残留リスク | 高 - ユーザー判断に依存する |
| 推奨事項 | 引数検証とパラメータ化されたツール呼び出しを実装する |
T-EXEC-004: Exec Approval の回避
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0043 - Craft Adversarial Data |
| 説明 | 攻撃者が承認 allowlist を回避するコマンドを細工する |
| 攻撃ベクトル | コマンド難読化、エイリアス悪用、パス操作 |
| 影響を受けるコンポーネント | exec-approvals.ts、コマンド allowlist |
| 現在の緩和策 | Allowlist + ask モード |
| 残留リスク | 高 - コマンドサニタイズがない |
| 推奨事項 | コマンド正規化を実装し、blocklist を拡張する |
3.4 永続化(AML.TA0006)
T-PERSIST-001: 悪意ある Skill のインストール
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0010.001 - Supply Chain Compromise: AI Software |
| 説明 | 攻撃者が ClawHub に悪意ある Skill を公開する |
| 攻撃ベクトル | アカウント作成、隠れた悪意あるコードを含む Skill の公開 |
| 影響を受けるコンポーネント | ClawHub、Skill の読み込み、エージェント実行 |
| 現在の緩和策 | GitHub アカウント作成期間の検証、パターンベースのモデレーションフラグ |
| 残留リスク | 重大 - サンドボックスなし、レビューも限定的 |
| 推奨事項 | VirusTotal 統合(進行中)、Skill のサンドボックス化、コミュニティレビュー |
T-PERSIST-002: Skill 更新の汚染
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0010.001 - Supply Chain Compromise: AI Software |
| 説明 | 攻撃者が人気 Skill を侵害し、悪意ある更新を配信する |
| 攻撃ベクトル | アカウント侵害、Skill 所有者へのソーシャルエンジニアリング |
| 影響を受けるコンポーネント | ClawHub のバージョニング、自動更新フロー |
| 現在の緩和策 | バージョンフィンガープリント |
| 残留リスク | 高 - 自動更新で悪意あるバージョンを取得する可能性がある |
| 推奨事項 | 更新署名、ロールバック機能、バージョン pinning を実装する |
T-PERSIST-003: エージェント設定の改ざん
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0010.002 - Supply Chain Compromise: Data |
| 説明 | 攻撃者がアクセスを永続化するためにエージェント設定を変更する |
| 攻撃ベクトル | 設定ファイルの改変、設定インジェクション |
| 影響を受けるコンポーネント | エージェント設定、ツールポリシー |
| 現在の緩和策 | ファイル権限 |
| 残留リスク | 中 - ローカルアクセスが必要 |
| 推奨事項 | 設定整合性検証と、設定変更の監査ログを実装する |
3.5 防御回避(AML.TA0007)
T-EVADE-001: モデレーションパターンの回避
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0043 - Craft Adversarial Data |
| 説明 | 攻撃者がモデレーションパターンを回避する Skill コンテンツを細工する |
| 攻撃ベクトル | Unicode 同形異義文字、エンコードのトリック、動的読み込み |
| 影響を受けるコンポーネント | ClawHub moderation.ts |
| 現在の緩和策 | パターンベースの FLAG_RULES |
| 残留リスク | 高 - 単純な regex は容易に回避される |
| 推奨事項 | 挙動分析(VirusTotal Code Insight)、AST ベース検出を追加する |
T-EVADE-002: コンテンツラッパーの脱出
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0043 - Craft Adversarial Data |
| 説明 | 攻撃者が XML ラッパーの文脈から脱出するコンテンツを細工する |
| 攻撃ベクトル | タグ操作、文脈の混乱、指示の上書き |
| 影響を受けるコンポーネント | 外部コンテンツのラップ |
| 現在の緩和策 | XML タグ + セキュリティ通知 |
| 残留リスク | 中 - 新しい脱出手法が定期的に発見される |
| 推奨事項 | 複数のラップ層、出力側検証 |
3.6 発見(AML.TA0008)
T-DISC-001: ツール列挙
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0040 - AI Model Inference API Access |
| 説明 | 攻撃者がプロンプトを通じて利用可能なツールを列挙する |
| 攻撃ベクトル | 「どんなツールを持っていますか?」のような問い合わせ |
| 影響を受けるコンポーネント | エージェントツールレジストリ |
| 現在の緩和策 | 特になし |
| 残留リスク | 低 - ツールは通常文書化されている |
| 推奨事項 | ツール可視性制御を検討する |
T-DISC-002: セッションデータの抽出
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0040 - AI Model Inference API Access |
| 説明 | 攻撃者がセッション文脈から機微データを抽出する |
| 攻撃ベクトル | 「何を話しましたか?」のような問い合わせ、文脈プロービング |
| 影響を受けるコンポーネント | セッショントランスクリプト、コンテキストウィンドウ |
| 現在の緩和策 | 送信者ごとのセッション分離 |
| 残留リスク | 中 - セッション内データにはアクセス可能 |
| 推奨事項 | コンテキスト内の機微データのリダクションを実装する |
3.7 収集と流出(AML.TA0009, AML.TA0010)
T-EXFIL-001: web_fetch によるデータ窃取
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0009 - Collection |
| 説明 | 攻撃者がエージェントに外部 URL への送信を指示してデータを流出させる |
| 攻撃ベクトル | プロンプトインジェクションにより、エージェントが攻撃者サーバーにデータを POST する |
| 影響を受けるコンポーネント | web_fetch ツール |
| 現在の緩和策 | 内部ネットワーク向け SSRF ブロック |
| 残留リスク | 高 - 外部 URL は許可されている |
| 推奨事項 | URL allowlisting とデータ分類認識を実装する |
T-EXFIL-002: 不正なメッセージ送信
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0009 - Collection |
| 説明 | 攻撃者がエージェントに機微データを含むメッセージを送らせる |
| 攻撃ベクトル | プロンプトインジェクションにより、エージェントが攻撃者にメッセージを送る |
| 影響を受けるコンポーネント | メッセージツール、チャネル統合 |
| 現在の緩和策 | 送信メッセージのゲーティング |
| 残留リスク | 中 - ゲーティングが回避される可能性がある |
| 推奨事項 | 新しい受信者には明示的確認を必須にする |
T-EXFIL-003: 認証情報の収集
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0009 - Collection |
| 説明 | 悪意ある Skill がエージェント文脈から認証情報を収集する |
| 攻撃ベクトル | Skill コードが環境変数や設定ファイルを読む |
| 影響を受けるコンポーネント | Skill 実行環境 |
| 現在の緩和策 | Skills に特化したものは特になし |
| 残留リスク | 重大 - Skills はエージェント権限で実行される |
| 推奨事項 | Skill のサンドボックス化、認証情報の分離 |
3.8 影響(AML.TA0011)
T-IMPACT-001: 不正なコマンド実行
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0031 - Erode AI Model Integrity |
| 説明 | 攻撃者がユーザーシステム上で任意のコマンドを実行する |
| 攻撃ベクトル | プロンプトインジェクションと exec approval 回避の組み合わせ |
| 影響を受けるコンポーネント | Bash ツール、コマンド実行 |
| 現在の緩和策 | Exec approvals、Docker sandbox オプション |
| 残留リスク | 重大 - サンドボックスなしの Host 実行 |
| 推奨事項 | デフォルトで sandbox を使い、承認 UX を改善する |
T-IMPACT-002: リソース枯渇(DoS)
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0031 - Erode AI Model Integrity |
| 説明 | 攻撃者が API クレジットまたは計算資源を使い果たす |
| 攻撃ベクトル | 自動メッセージフラッディング、高コストなツール呼び出し |
| 影響を受けるコンポーネント | Gateway、エージェントセッション、API プロバイダー |
| 現在の緩和策 | なし |
| 残留リスク | 高 - レート制限がない |
| 推奨事項 | 送信者ごとのレート制限とコスト予算を実装する |
T-IMPACT-003: 評判への損害
| 属性 | 値 |
|---|---|
| ATLAS ID | AML.T0031 - Erode AI Model Integrity |
| 説明 | 攻撃者がエージェントに有害または攻撃的な内容を送信させる |
| 攻撃ベクトル | プロンプトインジェクションにより、不適切な応答を誘発する |
| 影響を受けるコンポーネント | 出力生成、チャネルメッセージング |
| 現在の緩和策 | LLM プロバイダーのコンテンツポリシー |
| 残留リスク | 中 - プロバイダーフィルターは不完全 |
| 推奨事項 | 出力フィルタリング層、ユーザー制御を追加する |
4. ClawHub サプライチェーン分析
4.1 現在のセキュリティコントロール
| コントロール | 実装 | 有効性 |
|---|---|---|
| GitHub アカウント作成期間 | requireGitHubAccountAge() | 中 - 新規攻撃者へのハードルを上げる |
| パスのサニタイズ | sanitizePath() | 高 - パストラバーサルを防止 |
| ファイル種別の検証 | isTextFile() | 中 - テキストファイルのみに制限されるが、依然として悪意ある可能性はある |
| サイズ制限 | 合計バンドル 50MB | 高 - リソース枯渇を防止 |
| 必須の SKILL.md | readme を必須化 | 低いセキュリティ価値 - 情報提供のみ |
| パターンモデレーション | moderation.ts の FLAG_RULES | 低 - 容易に回避される |
| モデレーション状態 | moderationStatus フィールド | 中 - 手動レビューが可能 |
4.2 モデレーションフラグパターン
moderation.ts の現在のパターン:
- slug、displayName、summary、frontmatter、metadata、ファイルパスのみをチェックする
- 実際の Skill コード内容は解析しない
- 単純な regex は難読化で容易に回避される
- 挙動分析がない
4.3 計画中の改善
| 改善項目 | ステータス | 影響 |
|---|---|---|
| VirusTotal 統合 | 進行中 | 高 - Code Insight による挙動分析 |
| コミュニティ報告 | 一部対応(skillReports テーブルあり) | 中 |
| 監査ログ | 一部対応(auditLogs テーブルあり) | 中 |
| バッジシステム | 実装済み | 中 - highlighted, official, deprecated, redactionApproved |
5. リスクマトリクス
5.1 発生可能性と影響度
| Threat ID | 発生可能性 | 影響度 | リスクレベル | 優先度 |
|---|---|---|---|---|
| T-EXEC-001 | 高 | 重大 | 重大 | P0 |
| T-PERSIST-001 | 高 | 重大 | 重大 | P0 |
| T-EXFIL-003 | 中 | 重大 | 重大 | P0 |
| T-IMPACT-001 | 中 | 重大 | 高 | P1 |
| T-EXEC-002 | 高 | 高 | 高 | P1 |
| T-EXEC-004 | 中 | 高 | 高 | P1 |
| T-ACCESS-003 | 中 | 高 | 高 | P1 |
| T-EXFIL-001 | 中 | 高 | 高 | P1 |
| T-IMPACT-002 | 高 | 中 | 高 | P1 |
| T-EVADE-001 | 高 | 中 | 中 | P2 |
| T-ACCESS-001 | 低 | 高 | 中 | P2 |
| T-ACCESS-002 | 低 | 高 | 中 | P2 |
| T-PERSIST-002 | 低 | 高 | 中 | P2 |
5.2 クリティカルパス攻撃チェーン
攻撃チェーン 1: Skill ベースのデータ窃取6. 推奨事項の要約
6.1 即時対応(P0)
| ID | 推奨事項 | 対応する脅威 |
|---|---|---|
| R-001 | VirusTotal 統合を完了する | T-PERSIST-001, T-EVADE-001 |
| R-002 | Skill のサンドボックス化を実装する | T-PERSIST-001, T-EXFIL-003 |
| R-003 | 機微な操作向けの出力検証を追加する | T-EXEC-001, T-EXEC-002 |
6.2 短期対応(P1)
| ID | 推奨事項 | 対応する脅威 |
|---|---|---|
| R-004 | レート制限を実装する | T-IMPACT-002 |
| R-005 | 保存時トークン暗号化を追加する | T-ACCESS-003 |
| R-006 | exec approval の UX と検証を改善する | T-EXEC-004 |
| R-007 | web_fetch 向け URL allowlisting を実装する | T-EXFIL-001 |
6.3 中期対応(P2)
| ID | 推奨事項 | 対応する脅威 |
|---|---|---|
| R-008 | 可能な箇所に暗号学的チャネル検証を追加する | T-ACCESS-002 |
| R-009 | 設定整合性検証を実装する | T-PERSIST-003 |
| R-010 | 更新署名とバージョン pinning を追加する | T-PERSIST-002 |
7. 付録
7.1 ATLAS手法マッピング
| ATLAS ID | 手法名 | OpenClaw の脅威 |
|---|---|---|
| AML.T0006 | Active Scanning | T-RECON-001, T-RECON-002 |
| AML.T0009 | Collection | T-EXFIL-001, T-EXFIL-002, T-EXFIL-003 |
| AML.T0010.001 | Supply Chain: AI Software | T-PERSIST-001, T-PERSIST-002 |
| AML.T0010.002 | Supply Chain: Data | T-PERSIST-003 |
| AML.T0031 | Erode AI Model Integrity | T-IMPACT-001, T-IMPACT-002, T-IMPACT-003 |
| AML.T0040 | AI Model Inference API Access | T-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002 |
| AML.T0043 | Craft Adversarial Data | T-EXEC-004, T-EVADE-001, T-EVADE-002 |
| AML.T0051.000 | LLM Prompt Injection: Direct | T-EXEC-001, T-EXEC-003 |
| AML.T0051.001 | LLM Prompt Injection: Indirect | T-EXEC-002 |
7.2 主なセキュリティファイル
| パス | 目的 | リスクレベル |
|---|---|---|
src/infra/exec-approvals.ts | コマンド承認ロジック | 重大 |
src/gateway/auth.ts | Gateway 認証 | 重大 |
src/infra/net/ssrf.ts | SSRF 保護 | 重大 |
src/security/external-content.ts | プロンプトインジェクション緩和 | 重大 |
src/agents/sandbox/tool-policy.ts | ツールポリシー適用 | 重大 |
src/routing/resolve-route.ts | セッション分離 | 中 |
7.3 用語集
| 用語 | 定義 |
|---|---|
| ATLAS | MITRE の Adversarial Threat Landscape for AI Systems |
| ClawHub | OpenClaw の Skills マーケットプレイス |
| Gateway | OpenClaw のメッセージルーティングおよび認証レイヤー |
| MCP | Model Context Protocol - ツールプロバイダーインターフェース |
| Prompt Injection | 悪意ある指示が入力に埋め込まれる攻撃 |
| Skill | OpenClaw エージェント向けのダウンロード可能な拡張 |
| SSRF | Server-Side Request Forgery |
この脅威モデルは生きた文書です。セキュリティ上の問題は security@openclaw.ai に報告してください