サイバーセキュリティ

AIエージェントがあなたになりすますとき:継承された認証情報が人間と機械を混同させる

ユーザーのAzure認証情報を使用したソフトウェアエージェントの実測により、システムがその操作を同じ人間の名前で記録していたことが示された。2つの本番データストアでの権限は、2権限から107権限まで幅があった。この事例は、アクセス範囲と監査が、ログに表示されるアイデンティティよりも、接続経路やグループ所属に左右される可能性を明らかにしている。

2026-10-08
1 分で読めます
529 閲覧数
certi.news Editorial Team
AIエージェントがあなたになりすますとき:継承された認証情報が人間と機械を混同させる

AIエージェントが人間ユーザーの認証情報を使ってデータベースにアクセスすると、システムはアカウントの背後に隠れた「エージェントのアイデンティティ」を取得するのではなく、ユーザー本人を認識する。これは、Azure、Azure CLI、sqlcmdを使用する本番環境で、Naseeb Ahmed Mianが実施した測定の中心的な結論である。

調査対象の構成では、ソフトウェアエージェントのスキルは、Azure CLIによる認証を用い、sqlcmdコマンド経由でデータベースに接続していた。このコマンドは、ユーザーのログイン後にキャッシュされたアクセストークンを取り出し、それをデータベースに提示する。その結果、クエリをユーザー自身が入力した場合でも、エージェントが実行した場合でも、接続はユーザー名、ユーザーのデバイス名、sqlcmdツールとともに記録された。

監査ログが認識するのは認証情報であり、意図ではない

セッションログには、ユーザーのログイン名、ワークステーション名、クライアントインターフェースが表示されたが、エージェントが実行した操作を識別するフィールドは含まれていなかった。そのため、人間によるクエリと自動実行されたクエリはログ上で同一となり、後続の制御では、実行元に基づいてリクエストレート、承認ステップ、保持ポリシーを異なるものにすることができない。

問題はセキュリティ調査に限られない。数か月前に実行されたクエリが後から問題視された場合、ユーザーが自ら記述したのか、自動ツールが実行したのかをログは証明できない。ログは操作を認証情報に正確に帰属させる一方で、意図や実際の実行者については沈黙している。

アクセストークンが明らかにするもの

Azure CLIが渡したトークンにはuser_impersonationスコープが含まれており、認証に多要素認証が含まれていたことを示すクレームも含まれていた。実際には、エージェントが実行するすべての操作に、ユーザーが多要素認証を通過した証拠が付随する。たとえそれが数時間前に、別のタスクの文脈で行われたものであっても同様である。

また、トークンの有効期間は84分だが、必ずしもエージェントの実行終了を意味しない。CLIはリフレッシュトークンを使ってトークンを自動更新するため、リフレッシュトークンの期限が切れるか、ユーザーアカウントが無効化されるまで、監視されていない実行が継続する可能性がある。

グループ所属が全体像を広げる

ロール割り当てを調べた結果、表示された行は1つだけで、非本番サブスクリプションにおけるReaderロールだった。しかし、アクセストークンには37のグループが含まれていた一方、直接的な所属を調べるクエリでは34グループが示され、入れ子になったグループも存在していた。アクセスに関連するグループには、SQLデータベース閲覧者、特権ユーザー、リソース共同作成者、データベース管理者などのロールが含まれていた。

危険なのは、こうした所属がデータ層における実際の権限を持つ可能性があり、必ずしもコントロールプレーンのロール検査に表示されない点である。そのため、従来の方法で確認するとエージェントのアクセス範囲は限定的に見える一方、グループ所属によって、より大きな能力が与えられている可能性がある。

実際には何が変わるのか

同じアイデンティティを、1時間の間隔を空けて2つの本番データストアでテストしたところ、結果は大きく異なった。一方では、そのアイデンティティが持っていたのはCONNECTとSELECTの2権限だけで、安全な層には接続できなかった。これに対し、別の本番分析エンドポイントでは430のテーブルと107の権限が示され、その中には読み取り、書き込み、スキーマ定義、データベース管理が含まれていた。

この比較は、権限範囲がアイデンティティだけで決まるのではなく、アクセス経路、エンジン、エンドポイントに関連付けられた制御も重要な要因であることを示している。文書上は読み取り専用のエンドポイントであっても、別のエンジン経由でデータが呼び出された際に、そのセキュリティルールが必ずしも引き継がれるとは限らない。

certi.newsの編集部による見解:問題は、エージェントに「アイデンティティがない」ことではない。人間のアイデンティティが、独立した機械用アイデンティティの代替として手早く使われていることにある。これは、帰属、権限の拡大、無効化という3つの地点で破綻する。また、認証情報が安全なデータベースから削除する能力を持っていた環境は、監査ログが有効化されていなかった唯一の環境だったことも、測定によって明らかになった。グループ所属の一貫性、発行済みトークン内での一時的な権限の継続、単なる認証情報の所有者ではなく実行意図を記録する組織の能力については、重要な疑問が残されている。

ニュースの出典
The New Stack - Software Development
原文を開く ↗
c
著者

certi.news Editorial Team

知っておくべきこと

AIエージェントが Azure CLI を介して人間ユーザーの認証情報を使用すると、その操作は監査ログ上で人間本人によるものとして表示され、人間による実行と自動実行を明確に区別できません。また、グループメンバーシップとアクセス経路によって、従来のロールチェックで確認できる範囲を超えて実効権限が拡大する可能性があります。

  • エージェントはユーザーの Azure CLI セッションから取得したアクセストークンを使用したため、接続はユーザー名、ユーザーのデバイス、sqlcmd ツールの名前で記録された。
  • 監査ログには、エージェントが実行したクエリとユーザーが作成したクエリを区別するフィールドが含まれていなかった。
  • アクセストークンには user_impersonation スコープと多要素認証の表示が含まれており、トークンの更新によって無人実行が継続する可能性がある。
  • トークンには37のグループが示されていた一方、直接メンバーシップのクエリでは34グループが示され、広範なデータアクセスを付与し得るロールも含まれていた。
  • 2つの本番データストアで権限は異なり、CONNECT と SELECT のみに限られる場合から、読み取り、書き込み、スキーマ定義、データベース管理を含む107の権限まで及んだ。
  • この測定結果は、アクセス範囲がユーザーの身元だけでなく、接続経路、エンジン、エンドポイントの制御にも依存することを示している。

よくある質問

エージェントの活動は監査ログにどのように表示されたか?

人間ユーザー本人の名前で表示され、ユーザーのデバイス名と sqlcmd ツールも記録されたが、実行がエージェントによるものだと示すフィールドはなかった。

アクセストークンの有効期間はエージェントの実行時間と同じか?

必ずしも同じではない。記載されたトークンの有効期間は84分だが、Azure CLI は更新トークンを使用して更新できるため、更新トークンの期限が切れるかアカウントが無効化されるまで実行が継続する可能性がある。

実効権限がロールレビューで確認できる範囲を超える可能性があるのはなぜか?

グループメンバーシップがデータレベルの権限を持つ可能性があり、それらがコントロールプレーンのロールチェックに常に表示されるとは限らないため。

2つの本番データストアで権限は同一だったか?

いいえ。一方ではアクセスが CONNECT と SELECT に限られていた一方、別の本番分析エンドポイントでは430のテーブルに対して107の権限が示された。

同じカテゴリー

おすすめ記事

すべてのニュースを見る