AI Security Playbook

解説 / 約12分

AIに任せる操作と、確認する操作を分ける

読む・変更する・公開する境界を決め、指示だけに頼らず実際の権限を制限する。

実践 · AIに任せる作業が決まっており、使える操作や権限を確認する方へ。

読む前の補足
  • 指示と実際の権限を区別する。
  • 目的に必要な操作だけをまとめて許可する。
  • 公開・送信・削除の前に確認する内容を決める。
この記事の目次

対象と前提

コードの変更、調査、ブラウザ操作などをAIに任せる人向けです。AIエージェントは、結果を見ながらツールの利用を繰り返して作業する仕組みです。便利さと同時に、利用できるツールの権限が影響範囲を決めます。

プロンプトインジェクションは、読ませた文章などに含まれる指示によって、AIが本来の依頼と違う行動へ誘導される問題です。OWASPの説明にあるように、外部データも入口になります。

AIにコード変更やブラウザ操作を任せるとき誤字直しを頼んだだけ。公開まで任せてよかった?

仕組みをつかむ

誤字を直す依頼で、任せる境界を決める

  1. 依頼の範囲

    テスト用の複製を編集し、ローカルで確認。

  2. 別に判断する操作

    本番公開・顧客への通知・別資料の削除。

架空例です。すでに明確に許可した操作の確認を、毎回繰り返す必要はありません。

すべての操作で同じ確認を繰り返すより、任せる範囲と人が判断する境界を具体化します。

「削除しないで」という指示は有用ですが、削除権限そのものを外すこととは違います。保存先の権限、使えるツール、ネットワークの制限など、仕組み側でも範囲を狭めます。OWASPのExcessive Agencyは、過剰な機能・権限・自律性を分けて扱っています。

想定リスク

表がはみ出す場合は、横にスクロールして読めます。

任せた操作 見落としやすいこと 決める境界
資料を読む 私的な資料も読める、外部へ送れる 読む資料と送信先
コードを直す 本番設定や秘密も変更できる 作業フォルダーと変更対象
サイトで操作する 投稿・購入・共有まで実行できる 対象アカウントと確定操作
テストを実行する 外部APIや実メールへつながる テスト用の接続先と利用量

読み取り専用でも、読める秘密を外へ送れるなら流出は起こり得ます。動作する範囲を隔離するサンドボックスでも、ファイルと通信の両方を考える必要があることは、Anthropicのサンドボックス解説でも説明されています。

過去の事例から学ぶ

分類:再現実験。 Invariant Labsの2025-05-26の報告は、外部Issueを読む通常の依頼から、非公開情報を公開PRへ出す流れを再現しています。攻撃文の転載や実行を、ここでの確認手順にはしません。

この実験は現在の全製品で同じように成功する証拠ではありません。学ぶ点は、読んだ文章を操作の許可として扱わず、情報を読む権限と公開する権限を分けることです。

フックは、どこまで見ている?

「危ない操作を止めるフックを入れたから、秘密には触れないはず」。そう思っていても、文字列を検知する仕組みと、実際に読める権限は別です。フックは、実行前後の決まったタイミングで処理を確認する仕組みですが、見ている範囲には限界があります。

Tsukinekoの2026年10月18日公開の記事では、自作ガードが検知する呼び出し方と、別の方法で同じ情報へ触れる経路とのずれを確認しています。これは著者自身の検証報告です。実際の認証情報を読む手順を、ここで再現する必要はありません。

フックの検知と、実行できる権限を分ける

  1. フック:見つけて止める

    見ている文字列や呼び出し方によって、検知できる範囲が変わる。

  2. 権限:そもそも届かせない

    OS・実行アカウント・隔離環境で、読める場所と操作を制限する。

どちらも設定と検証が必要です。フックの成功だけで権限制限を確認したことにはなりません。

自分の環境では、まず「読んでよい練習用ファイル」と「触れてはいけないダミーの練習用ファイル」を分け、管理者が用意した検証環境で権限を確かめます。本物の秘密が入ったフォルダーを、抜け道の実験に使いません。フックが止めたという結果だけでなく、実行アカウントにどこまで権限があるかも確認します。

ガードの抜けを見つけても、AIへの指示を強くするだけで終えず、読める場所・使えるツール・送信先を必要な範囲へ狭めます。

誰が何を確認するか

表がはみ出す場合は、横にスクロールして読めます。

役割 確認すること 判断に使うもの
依頼する人 完了条件と任せる範囲 対象・変更内容・公開先を含む依頼
設定する人 実際に使える権限 ツール・アカウント・隔離の設定
最終操作を判断する人 公開や削除の具体的な結果 差分、送信内容、宛先、戻し方

一つ確かめてみる

指示と、実際にできる操作を分ける

  1. 「削除しないで」

    作業の意図を伝える指示。

  2. 削除権限を外す

    ツールやアカウントの設定で制限。

外部ページやメール内の指示は、依頼した人の許可ではありません。読む資料と通信先も別に制限します。

架空の作業「案内ページの誤字を直す」を考えます。テスト用の複製で、対象ページの編集とローカル確認まではまとめて任せられます。一方、本番公開、顧客への通知、他の資料の削除は、この依頼に自動で含めません。

確かめるのは、具体的な結果。

承認が必要な場面では、「続けてよい?」だけでなく、変更箇所・宛先・公開範囲・取り消し方法が分かる結果を確認します。すでに明確に許可した範囲の操作について、同じ確認を繰り返す設計にする必要はありません。

確認チェックリスト

  • 目的: 対象と完了条件を説明でき、依頼外の作業を区別できる。
  • 実権限: 不要な管理者権限、本番への接続、秘密へのアクセスを付けていない。
  • 外部データ: Webページ・Issue・メール内の指示を、利用者の許可と混同しない。
  • 確定操作: 公開・送信・購入・削除などは、具体的な内容を確認する境界を決めた。
  • 復旧: 差分や履歴を見られ、異常時に追加操作を止める方法が分かる。

次の行動

MCPの接続前確認で連携先を点検します。本番へ反映する前には公開前の確認を使い、AIの「完了」という報告と実際の結果を照合します。別のAIのレビューの合格をマージの判断に使う場合は、AIレビューの合格の教材も参考にしてください。

一次資料

書いた人

マーケティングの現場から、AIをつくり、仕事で使う側へ。実際に試したことや、つまずいたことを、図解と具体例で伝えています。

この記事のURL:https://nekoai-lab.github.io/ai-security-playbook/learn/agent-permissions/

このシリーズはここまで

シリーズ · 全3記事のうち3記事目

次のテーマへAWSを使う個人開発者へ。所有者・日常の操作・アプリの実行を分け、MFA、短期の認証、信頼する相手、復旧先を具体的に確認する。
読む順番・ルートを見るAI連携の権限を決める
  1. AIとの会話を閉じたあと、秘密はどこに残る?
  2. MCPをつなぐ前に、渡す権限を確かめる
  3. AIに任せる操作と、確認する操作を分ける

AIに任せる操作の教材へ戻る →