ISO 27001とAIエージェントの関係

ISO/IEC 27001は情報セキュリティマネジメントシステム(ISMS)の国際規格です。2022年に改訂されたISO 27001:2022版はデジタルトランスフォーメーションやクラウド利用を前提とした管理策が追加されており、AIシステムの導入・運用に対しても適用が広がっています。

NemoClawのようなAIエージェントシステムはISO 27001の文脈では以下の3つの観点から評価が必要です。

観点内容主な関連Annex A管理策
情報資産としてのAIシステムNemoClawのモデル・設定ファイル・推論ログ自体が情報資産A.5.9(情報資産台帳)・A.5.10(許容使用)
処理・保管する情報のセキュリティAIエージェントが扱う業務データ・個人情報の保護A.8.10(情報削除)・A.8.11(データマスキング)
AI特有のリスクへの対応プロンプトインジェクション・モデル汚染・ハルシネーション等A.8.8(技術的脆弱性の管理)・A.5.7(脅威インテリジェンス)

ISO 27001:2022版では「脅威インテリジェンス」(A.5.7)や「安全な開発のためのライフサイクル」(A.8.25)が新設されており、AIシステムの開発・運用に直接関連する管理策が増加しています。

AI特有リスクのAnnex Aへのマッピング

ISO 27001の認証審査では自社の情報資産に存在するリスクを特定し、適切な管理策(Annex Aから選択または追加)を実装していることを証明する必要があります。NemoClaw導入時に新たに考慮すべきAI特有のリスクとAnnex Aのマッピングを以下に示します。

AIリスクとISO 27001管理策のマッピング表

AIリスク項目リスク内容対応Annex A管理策NemoClawでの実装方法
プロンプトインジェクション悪意ある入力によるエージェントの意図しない動作誘発A.8.8(技術的脆弱性)・A.8.20(ネットワークセキュリティ)OpenShellプロンプトシールドの有効化・sensitivityをhighに設定
モデル汚染(ポイズニング)訓練データやRAGデータへの悪意ある介入A.8.9(構成管理)・A.8.25(安全な開発ライフサイクル)RAGデータソースへのアクセス制御・データ更新の承認フロー
データ漏洩推論プロンプト・ログ経由の機密情報流出A.8.11(データマスキング)・A.8.12(データ漏洩防止)PIIマスキング・include_prompts: false・ログの暗号化
ハルシネーションAIが事実と異なる情報を生成し業務判断を誤らせるA.5.30(ICTの継続性)・A.8.28(安全なコーディング)NeMo Guardrailsの事実確認機能・Human-in-the-loop設計
モデルの不正アクセスNIMモデルファイルへの不正な読み取り・改ざんA.8.3(情報へのアクセス制限)・A.8.5(安全な認証)ファイルシステムアクセス制御・モデルファイルの整合性チェック
サードパーティリスクNVIDIAクラウドAPI・外部NIMレジストリへの依存A.5.19(サプライヤーリレーションシップ)・A.5.20(ICTサプライチェーン)ローカル推論優先・外部依存の文書化・SLAの確認
エージェントの権限昇格エージェントが想定外のシステム権限を取得A.8.2(特権的アクセス権)・A.8.18(特権ユーティリティの使用)blueprint.yamlのsandboxでファイル・ネットワーク・コマンドを最小権限に制限

NemoClawのISMS統合手順

既存のISMSフレームワークにNemoClawを統合するための実践的な手順を示します。ISO 27001のPDCAサイクルに沿って整理しています。

情報資産台帳への登録(Plan)

ISO 27001 A.5.9は全情報資産の特定・記録を要求しています。NemoClaw導入時に追加すべき情報資産を情報資産台帳に登録します。

情報資産分類保管場所機密性オーナー
NIMモデルファイル(nemotron-3-nano-30b等)ソフトウェアNVIDIAレジストリ・自社VPS内部限定AIインフラ担当
blueprint.yaml(エージェント設定)設定情報Gitリポジトリ機密AIシステム管理者
OpenShell監査ログログ情報VPS /var/log/nemoclaw/内部限定セキュリティ担当
RAGナレッジベースデータベース自社VPS機密(内容による)業務担当
エージェント用APIキー・シークレット認証情報シークレット管理システム極秘AIシステム管理者

リスクアセスメントの実施(Plan)

ISO 27001のリスクアセスメントはリスクの特定→分析→評価のプロセスを要求します。NemoClaw固有のリスクについて、既存のリスクアセスメント手法を適用します。

# リスクアセスメント記録例(簡易フォーマット)

リスクID: AI-001
リスク名: プロンプトインジェクション攻撃
影響資産: 顧客データ・AIエージェントの動作
脅威: 悪意あるユーザーによるシステムプロンプト改ざん試行
脆弱性: 入力検証の不備
発生可能性: 中(3/5)  ※外部公開AIの場合は高
影響度: 高(4/5)       ※機密データアクセス可能な場合
リスク値: 12(高リスク)
管理策: OpenShellプロンプトシールド(sensitivity: high)
残余リスク: 低(2/5)
承認者: ISMS管理責任者

管理策の実装(Do)

リスクアセスメントで特定したリスクに対応する管理策をNemoClawの設定として実装します。以下は主要なISO 27001管理策とblueprint.yaml設定の対応です。

ISO 27001管理策要求内容blueprint.yaml実装
A.8.3(情報へのアクセス制限)業務上必要な最小権限でのアクセスsandbox.filesystemのallow/deny・tools.deniedの設定
A.8.5(安全な認証)エージェントへのアクセスに適切な認証access_control.allowed_rolesによるロールベースアクセス制御
A.8.11(データマスキング)機密データのマスキングprivacy.pii_detection: true + pii_action: mask
A.8.12(データ漏洩防止)データ漏洩の防止措置data.external_access: false + 出力フィルタリング
A.8.15(ログ管理)セキュリティ関連イベントのログ記録audit.enabled: true + log_path設定
A.8.8(技術的脆弱性の管理)脆弱性の特定と対応NeMo GuardrailsとNIMモデルの定期更新手順の整備

証跡管理と内部監査(Check/Act)

ISO 27001の認証維持には定期的な内部監査と管理策の有効性確認が必要です。NemoClawの監査ログを証跡として活用する方法を示します。

# 証跡として保管すべきファイルと確認項目

1. blueprint.yaml(Gitコミット履歴付き)
   - 管理策の設定内容を文書化
   - 変更履歴で「誰が・いつ・何を変更したか」を追跡

2. OpenShell監査ログ(/var/log/nemoclaw/)
   - エージェントの動作記録
   - ガードレール発動記録(guardrail_triggered: true)
   - 異常アクセスパターンの記録

3. リスクアセスメント文書
   - 四半期ごとに更新(NemoClawモデル更新時は追加更新)

4. 管理策の有効性チェックリスト
   - プロンプトシールドのテスト結果
   - PIIマスキングの動作確認テスト
   - アクセス制御の設定確認

5. インシデント記録
   - ガードレール発動のインシデント化判断記録
   - 是正措置の実施記録

適用宣言書(SoA)へのAI管理策の追加

ISO 27001では組織はすべてのAnnex A管理策について「適用する・適用しない」の判断とその理由を適用宣言書(Statement of Applicability: SoA)に記載する必要があります。NemoClaw導入に際して追加・更新すべきSoA項目を示します。

Annex A管理策NemoClaw適用区分適用理由実装証跡
A.5.7(脅威インテリジェンス)適用AIエージェント特有の脅威(プロンプトインジェクション等)の情報収集が必要NVIDIA Security Advisory購読記録・定期レビュー議事録
A.5.9(情報資産台帳)適用(更新)NIMモデル・blueprint.yaml・監査ログの資産追加情報資産台帳(更新版)
A.5.19(サプライヤーリレーションシップ)適用NVIDIAをAIシステムのサプライヤーとして管理NVIDIAとの契約確認記録・リスク評価
A.8.11(データマスキング)適用推論入出力に含まれる個人情報のマスキングが必要blueprint.yamlのpii設定・マスキング動作テスト結果
A.8.12(データ漏洩防止)適用AIエージェントによる意図しない機密情報出力の防止出力フィルタ設定・外部アクセス制限設定
A.8.25(安全な開発ライフサイクル)適用blueprint.yaml変更管理・NIMモデル更新のセキュリティ確認が必要Gitブランチ保護設定・変更承認記録

blueprint.yamlのバージョン管理と変更承認

ISO 27001 A.8.32(変更管理)はシステム変更の計画・テスト・承認プロセスの整備を求めています。NemoClawのセキュリティポリシーファイルであるblueprint.yamlをGitで管理し、変更承認フローに組み込む方法を示します。

Gitブランチ保護によるポリシー変更管理

# blueprint.yaml変更管理のGitHubブランチ保護設定(概念)

# ブランチ保護ルール(mainブランチ)
- 直接プッシュを禁止(管理者含む)
- プルリクエストのレビュー必須(最低1名)
- レビュワー候補: セキュリティ担当・ISMS管理責任者
- CI/CDでのlintチェック通過必須
- レビュー後の変更(新規コミット)でレビュー無効化

# blueprint.yaml変更時のコミットメッセージテンプレート
# 変更タイプ: security-policy-change
# 変更内容: [変更した設定項目]
# 変更理由: [リスクアセスメント参照番号またはビジネス要件]
# 影響範囲: [対象エージェント名]
# 承認者: [承認者名]
# 証跡番号: ISMS-CHANGE-2026-001

変更ログの記録と保管

ISO 27001の内部監査・外部審査では変更記録の提出を求められる場合があります。blueprint.yamlのGitコミット履歴に変更理由・承認者・証跡番号を含めることで、変更管理の証跡を自動的に残せます。

記録すべき変更項目Gitでの記録方法補足文書
PIIマスキング設定の変更コミットメッセージに変更理由を記載マスキング動作確認テスト結果
サンドボックス権限の拡張プルリクエストの説明欄に業務要件を記載リスクアセスメント更新版
NIMモデルのバージョンアップタグ付きリリースで管理新バージョンのリリースノート・セキュリティ確認記録
外部アクセス設定の変更コミットメッセージ+ISMS変更記録番号業務要件書・DPO確認記録(GDPR対象の場合)

AIエージェントのインシデント対応計画

ISO 27001 A.5.24〜A.5.26(情報セキュリティインシデント管理)はインシデント対応計画の整備を求めています。NemoClawに関連する特有のインシデントシナリオと対応手順を整備します。

NemoClaw固有のインシデントシナリオ

インシデント種別検知方法初動対応根本原因調査
プロンプトインジェクション成功ガードレールアラート・出力の異常パターン対象エージェントセッションの即時停止監査ログのシーケンス分析・blueprint.yaml見直し
機密情報の意図しない出力出力フィルタアラート・ユーザー報告該当セッションの停止・影響範囲の特定出力フィルタ設定の見直し・PIIルール追加
監査ログの改ざん・削除ログファイルのハッシュ検証失敗ログへの書き込みを読み取り専用に変更アクセスログの調査・認証情報の見直し
NIMモデルファイルの改ざんモデルファイルのハッシュ検証失敗エージェントの停止・モデルの再取得ファイルシステムアクセスログの調査
RAGデータへの不正注入出力の品質異常・内部整合性チェック失敗RAGデータソースを前バージョンに切り戻しデータソースへのアクセスログ調査・入力バリデーション強化

インシデント時の証跡収集

インシデント発生時にISO 27001の要求(A.5.25〜A.5.28)に従って証跡を収集・保管する手順を示します。

# インシデント発生時の証跡収集コマンド例(Linux環境)

# 1. 監査ログの即時バックアップ(改ざん防止)
cp -r /var/log/nemoclaw/ /var/log/nemoclaw-incident-backup-$(date +%Y%m%d-%H%M%S)/
# ハッシュ値の記録
sha256sum /var/log/nemoclaw-incident-backup-*/audit.log > incident-hash-record.txt

# 2. エージェントプロセスの状態スナップショット
ps aux | grep nemoclaw > incident-process-snapshot.txt
netstat -an | grep ESTABLISHED > incident-network-snapshot.txt

# 3. 対象セッションのログ抽出(session_idでフィルタ)
grep "session_id: TARGET_SESSION_ID" /var/log/nemoclaw/audit.log > incident-session-log.txt

# 4. blueprint.yamlの現在の設定を記録
git log --oneline -20 blueprint.yaml > incident-blueprint-history.txt
git show HEAD:blueprint.yaml > incident-blueprint-current.txt