AI時代の非人間アイデンティティ(NHI)セキュリティ|AIエージェントがもたらすリスクと対策

※この記事はGitGuardianのブログを日本語に翻訳したものです。

企業におけるAIやAIエージェントの急速な普及により、攻撃対象領域が拡大しています。なかでも、非人間アイデンティティ(NHI / Non-Human Identity)の増加に伴い、シークレットやAPIキーなどの認証情報をめぐるセキュリティリスクへの対応が重要になっています。本稿では、AI時代におけるNHIの主なセキュリティリスクと、企業に求められるNHIガバナンスについて解説します。

Non-Human Identity Security in the Age of AI
https://blog.gitguardian.com/nhi-security-in-the-age-of-ai/

この記事のポイント

  • AIエージェントの普及に伴い、非人間アイデンティティ(NHI)が増加し、シークレットやAPIキーなどの認証情報を適切に管理する重要性が高まっています。
  • AIエージェントの活用において注意すべきリスクとして、シークレットの拡散や過剰な権限、所有者不明のAPIキーなどが挙げられます。
  • AIへのプロンプトやAI生成コードにシークレットが含まれることで、認証情報の漏えいにつながる可能性があります。
  • AI時代のNHIセキュリティでは、シークレットを検出するだけでなく、NHIが「何に」「どの権限で」アクセスできるのかを可視化し、継続的に管理することが重要です。

AI時代に重要性が高まる非人間アイデンティティ(NHI / Non-Human Identity)

AIを活用したツールや自律型エージェントの導入が急速に進む中、最近では非人間アイデンティティ(NHI)という言葉をよく耳にするようになりました。これは偶然などではなく、むしろこうした自律型エージェントの急速な普及が、NHIの爆発的増加の一因であると考えてもいいでしょう。このような状況を受け、マシンアイデンティティやガバナンスに関する研究・議論が各所で始まっています。

システムを使う人間のユーザーと同様に、AIエージェント、ボット、スクリプト、クラウドワークロードなどのNHIは、シークレットを使って動作します。こうした認証情報は、機密システムやデータへのアクセス権を付与します。形式もさまざまで、生成から無効化に至るまで、常に状況を把握できていることが求められます。人間と違って、機械は多要素認証やパスキーを使えません。また、このような認証情報は、開発者がアプリケーションをデプロイする過程で大量に「量産」されます。

企業におけるAIの導入速度には目を見張るものがあり、その結果として開発者がNHIを「量産」するペースも過去最高レベルになっています。AIは、より多くの作業を効率的に処理する機会をもたらす一方で、プライバシーやシークレットの漏えい、安全性の低いコードといった現実的なリスクももたらします。LLMには驚くようなユースケースもありますが、ほかの技術と同様、自社環境への導入が進むほど、攻撃対象領域も拡大するという事実を忘れてはいけません。AIエージェントに自律的な判断能力を持たせるのであれば、なおさらです。

それでは、AIエージェント型NHIに関連するリスクを見ていくことにしましょう。

AI・AIエージェントがもたらすNHIのセキュリティリスク

AIエージェントによるシークレットの拡散と過剰なアクセス権限

「AIエージェント」とは、与えられたタスクの達成のために自律的に判断し行動する、LLMをベースとしたシステムを指します。これまでの間、多くのワークフローで用いられてきた、決定論型のボットとは異なります。従来のボットは、決められた指示を決められた通りにしか実行できませんでした。一方、AIエージェントは違います。内部データソースにアクセスして情報を探しに行く、インターネットで検索する、ほかのアプリケーションとやり取りする。こういったタスクをユーザーに代わって自律的に行うことができるのです。

例えば、AIを活用した調達エージェントは、購買ニーズを分析し、オンラインショッピングサイト経由でベンダーを比較し、AIチャットボットと価格交渉を行い、許可されていれば自らの判断で発注まで実行できます。それぞれのコミュニケーションをセキュアに行うには、アクセスするための認証情報が必要です。このような新しいエージェントは、DevOpsプロセスで構築されています。そのため、パイプラインにおける工程ごとに認証が必要になります。その過程でよく起こるのが、認証情報の拡散です。多くは不注意によるものですが、認証情報がほかのシステムやログ、リポジトリ全体に拡散するといったことが起こります。

動作があらかじめ定義されたボットとは異なり、AIエージェントに緩めの読み取り・書き込み、場合によっては作成・削除権限を付与するのは珍しいことではありません。従来型の自動処理の場合、どのシステムへのアクセスを許可し、どのシステムへのアクセスを許可しないかは、処理の一部としてあらかじめ定義されています。しかし、AIエージェントの場合、最適な実行方法を人間の介入なしに自ら判断します。そのため、アクセス権限の範囲を厳しく制限し過ぎると、要求された業務を遂行できなくなってしまいます。どのような読み取り権限や書き込み権限が必要になるのかを最初から明確にしているケースはまれで、その結果として、AIエージェントには過剰な権限が付与される傾向があります。

このような認証情報は数多く存在しますが、その中の一つでも漏えいすれば、データ侵害や不正購入をはじめとするさまざまなリスクにつながる可能性があります。AIエージェントの安全を確保するためには、非人間アイデンティティの強固なガバナンスが不可欠です。シークレット管理基盤(Vault)に保管されている既知の認証情報については、「最小特権の原則」を徹底し、APIキーの保護や監査ログの取得を行うことで、不正利用を防止するようにしてください。また、シークレットはシークレット管理基盤(Vault)の外部でも確実に見つかるという前提で戦略を策定する必要があります。

所有者不明の「オーファンドAPIキー(Orphaned API Keys)」がもたらすリスク

オーファンドAPIキー(Orphaned API Key)とは、ユーザーアカウントとの関連付けが失われ、放置された状態にあるAPIキーのことを言います。ユーザーが会社を退職したり、アカウントを削除したりした際に生じます。ステータスは有効な状態で所有者がいなくなった場合、適切な管理が行われない限り、そうしたAPIキーはローテーションや削除が行われないまま放置される可能性が高くなります。

マシンアイデンティティの世界では、「NHIの所有者は誰なのか」という問いは実は難しい質問です。それは作成した人なのか?それとも専任のDevOpsチームなのか。所有者が明確でなければ、認証情報が放置された状態で、アクセスを許可し続ける可能性が非常に高くなります。 むしろ問うべきなのは、「こうしたAPIキーが発端となった漏えいに伴うリスクの責任は誰が負うのか」ということでしょう。

AIプロンプトへの機密情報・シークレット入力による情報漏えいリスク

AIアシスタントと聞いて真っ先に思い浮かぶのは、ChatGPTやGemini、Claudeのようなサービスでしょう。これらはいずれもプロンプトベースのアーキテクチャを採用しています。GitHub Copilotも例外ではありません。このようなサービスのAIモデルは、プロンプトを通じて機密情報を処理・保存・送信し、コンテキスト、指示、データを大規模言語モデル(LLM)プロバイダーへ送ります。このアプローチのおかげで、ツールの操作性が向上し、プロトタイプの作成やツールの開発が短時間でできるようになっています。

こうした状況は開発チームに限ったものではありません。実際、多くの組織ではシャドーITがIT支出の大半を占めるようになっており、データの露出や、企業の機密情報、認証情報の漏えいといったリスクが組織全体へと広がっています。

例えば、請求処理を自動化する目的でAI搭載のチャットボットを導入した経理部門があったとしましょう。そのプロンプトに「過去6か月間の10万ドルを超える請求書を、APIキーABC123を使ってすべて検索してください」と入力された場合、このAPIキーがログに記録される可能性は高いと思ってください。そのログが平文で保存されていれば、その請求システムは外部からの不正アクセスが可能ということになります。こうなれば、そのAPIキーに適切なアクセス範囲の制限が設定されていることを願うしかありません。

開発者だけでなく、すべての利用者がプロンプトやログに機密データを埋め込まないよう、セーフガード(防止策)を講じる必要があります。その場合、各LLMの出力をスキャンし、本来含まれるべきではない情報が含まれていないか確認するのが理想です。スキャンデータのうち、何を機密情報と定義するかは難しい場合がありますが、シークレットの検出と排除については比較的容易に実施できるため、この2つを優先するといいでしょう。

AIエージェントによるデータ収集・アクセスのセキュリティリスク

AIエージェントの多くは、さまざまなデータソースからデータを取り込み、処理・保存します。取り込み先のデータソースには次のようなものがあります:

  • AWS S3やGoogle Driveなどのクラウドストレージ
  • Jira、Confluence、Salesforceなどのエンタープライズアプリケーション
  • SlackやMicrosoft Teamsをはじめとするメッセージングシステム

こうしたシステムに、認証情報、個人情報(PII)、非公開データといった機密情報が書き込まれることのないよう対策を講じる必要があります。AIエージェントがこれらのシステム内のデータにアクセスできるということは、そのNHIを悪用するための経路も存在するということを意味します。

この攻撃経路を確実に排除する方法は1つしかありません。AIエージェントが関連するすべての社内システムにおいて、上記のような機密情報の有無を確認し、見つかった場合は一つ残らずローテーションすることです。対象は、バージョン管理システム、チケット管理システム、メッセージングプラットフォームなどです。これに、ログのサニタイズを組み合わせれば、対策としては万全と言えるでしょう。

AI生成コードにAPIキーやシークレットが埋め込まれるリスク

GitHub Copilot、Amazon CodeWhisperer、TabnineといったAIを活用した開発支援ツールは急速に普及しています。今や、AIコーディング支援ツールを利用する開発者は50%を超えています。こうしたツールは、大量の学習データを基にコード片を自動生成します。しかし、そこには重大なセキュリティリスクが存在します。AIが生成したコードの場合、時間に追われる開発者が、APIキー、データベースの認証情報、あるいはOAuthトークンといったシークレットをコードに直接書き込んでしまうということが起こり得るのです。

AIが生み出すリスクの一例として、クラウドサービスのAPIを呼び出すコードをCopilotに生成してもらうケースを見てみましょう。この場合、次のようなコードが生成されます。

このサンプルは、ChatGPTが出力したものです。

サンプル中のキーは実際のAPIキーではありません。しかし、時間に追われる開発者や、シークレットのセキュリティに詳しくない開発者の場合、生成されたキーを実際のAPIキーに置き換えてしまうこともあるかもしれません。こうしたコードが、チェックされないまま、バージョン管理システムにコミットされてしまうと、そのリポジトリが公開された場合に認証情報が漏えいする恐れがあります。

今挙げた例は、シークレットのスプロール化が時間とともに悪化の一途を辿る一因です。そのため、開発者の生産性を損なうことなくすべてのコードをコミット前にスキャンする「ガードレール」が必要です。GitGuardianのggshieldやpre-commitフックは、そのための仕組みです。できれば、開発者が「git add」を実行する前の段階でシークレットを検出できるのが理想です。例えば、GitGuardianのVS Code拡張では、ファイルが保存されるタイミングでシークレットを検出できます。

GitGuardianで実現する非人間アイデンティティ(NHI)の可視化と保護

NHIを適切に管理するための第一歩は、自社がどのようなシークレットを保有しているかを把握することです。GitGuardianのNon-Human Identity Securityプラットフォームは、企業環境全体に分散するAIエージェントの認証情報を自動で検出できます。また、CyberArkのConjurのようなエンタープライズ向けシークレット管理プラットフォームと連携することで、ボルト内外を問わずすべてのシークレットを検出できます。シークレットがどこに存在していても把握し、適切な管理場所へと導きます。

NHIの認証情報の把握は最初の一歩ですが、平文のキーを見つけるだけでは、何がリスクにさらされているのかを理解する上では不十分です。そのキーがどこで使用されているのか、どのような用途に利用できるのか、そしてどの重要システムへアクセスできるのかを把握する必要があります。そこでGitGuardianはSecret Analyzerを導入しました。Secret Analyzerは、キーに割り当てられている権限を自動で表示し、過剰な権限が付与されたシークレットを迅速に是正できるよう支援してくれるツールです。

シークレットを把握し、相互接続関係を可視化することで、各シークレットが何に接続されているのかを理解し、さらに万一シークレットが漏えいした場合のリスクを把握するのに必要な情報を得ることができます。

GitGuardianは、機密データがプロンプトやログに埋め込まれることを防ぐこともできます。こうしたインシデントをリアルタイムで検出することで、適切なサニタイズの実施を徹底し、ログが攻撃者にとって有用な情報源となるリスクを低減できます。

まとめ:AI時代に求められるNHIガバナンス

AIエージェントが今後どのような価値をもたらすのか、そのすべてを現時点で予測することはできません。ただし、その進化と導入が非常に速いペースで進んでいることは明らかです。自律型AIエージェントがほかのシステムやエージェントと連携することで、業務効率化の可能性が広がる一方、セキュリティや管理の複雑さも増しています。

こうした環境では、増え続ける非人間アイデンティティ(NHI)を適切に把握し、管理・保護していくことが重要です。シークレットを検出するだけでなく、NHIがどのリソースにアクセスし、どのような権限を持っているのかを可視化し、継続的に管理することが、AI時代のNHIガバナンスには求められます。

AIの導入が進む今、NHIの保護はもはや選択肢ではなく、不可欠な取り組みとなっています。GitGuardianは、シークレットスキャンの自動化からNHIのアクセス先や権限の可視化まで、企業が増え続けるNHIを大規模かつ安全に管理・保護できるよう支援します。

GitGuardianとは

GitGuardianは、シークレットセキュリティと非人間アイデンティティ(NHI)セキュリティを支援するセキュリティプラットフォームを提供しています。

コンステラセキュリティジャパンでは、GitGuardianのソリューションを通じて、企業におけるシークレットの検出・管理やNHIの可視化・保護を支援しています。
NHIやシークレットの管理に課題をお持ちの方、GitGuardianの導入・活用について詳しく知りたい方は、お気軽にお問い合わせください。

一緒によく読まれている記事

関連したサービスの紹介記事

最新の脅威情報
をお届け

BLOGブログ

情報セキュリティに対する啓蒙のため、
3つのメディアを運用し、
情報発信を行っています。

わたしたちはサイバー領域や
認知領域の未知なる脅威に、
テクノロジーとインテリジェンスで対抗します。

私たちが選ばれる理由

CONTACT リスクマネジメントサービスの
ご相談窓口

コンステラ セキュリティ ジャパンは
最先端のサービスを
お客様のニーズに
カスタマイズして提供し、
効果が出るまで寄り添います。