Aikido

設計上どのようにAikidoが、AIペネトレーションテストエージェントを確実に保護するのか

執筆者
Sooraj Shah

AIエージェントに関するあらゆる熱狂的な議論や、一見無限に見える可能性について耳にされていることでしょう。それらの可能性は素晴らしいものですが、実際に直面している問題を直接解決するエージェントAI機能にのみ関心があるのではないでしょうか。

そして、生産性の向上やROIのメリットを考えると、立ち止まって「これは素晴らしいが、これらのエージェントがスコープ外に出てしまったらどうなるだろうか?」と考えることでしょう。それは、自社でAIエージェントを内部展開しているか、外部ベンダーのAIエージェント機能を利用しているかに関わらずです。

そして、それは当然の疑問です。エージェントは、他のAI機能と同様に、制約が必要です。制約がなければ、暴走する可能性があります。エージェントは設計上、好奇心旺盛です。幼児のように、手の届くあらゆるドアを試そうとします。多くの場合、探索させる必要がありますが、開くべきではないドアは物理的に施錠されていることを確認する必要もあります。 

サイバーセキュリティにおいては、このことはさらに重要になります。AIエージェントの最小限の安全要件は、さらに厳格である必要があります。当社のAIペンテスト機能であるAikido Attackでは、エージェントがスコープ外に出るのを防ぐため、あらゆるレイヤーを考慮しました。これには、誤って本番環境をテストしてしまうことや、制御を失うことなどが含まれます。

スコープ外への逸脱は、セキュリティリーダーやエンジニアからよく質問される主要なトピックの1つであり、当社がプラットフォームを開発する当初から考慮していたことです。当然のことながら、サイバーセキュリティ企業として、この点を正しく対処したいと考えていました。

エージェントは予期せぬ、または危険な経路を試行することが期待されますが、その行動を防止するのではなく、封じ込めるためのガードレールが存在するということを覚えておく価値があります。

Aikido AttackとInfiniteは、ハードバウンダリとソフトバウンダリの両方を使用し、多層的なアプローチで機能します。知っておくべき主要な要素は次のとおりです。

レイヤー1: 厳格なアーキテクチャ上の分離: コントロールプレーンと実行環境

Aikidoのシステムは、ペンテストを計画・評価するシステム(コントロールプレーン)と、実際にアクションを実行する環境(分離された実行サンドボックス)との間に厳格な分離を設けて設計されています。 

すべての推論、オーケストレーション、および機密データへのアクセスはコントロールプレーンで行われます。ツールの実行、ブラウザの自動化、およびネットワークインタラクションは別の環境で行われます。

この分離が存在するのは、実行が不正な動作をする可能性があると想定しているためであり、したがって、いかなる影響も封じ込められなければなりません。このため、実行環境はオーケストレーションシークレット、内部インフラストラクチャ、またはコントロールプレーンシステムへのアクセス権を持ちません。 

レイヤー2: ランタイムスコープの強制

本番環境は決してスコープ内とは見なされません

当社のシステムは、本番環境が攻撃対象のスコープ内にあるとは決して想定しません。ペンテストは、ステージング環境およびテスト環境に対してのみ実行されることが想定されています。本番環境は明示的にスコープ内として設定される必要があり、その場合でも、何かが実行される前にレビューされ、承認されます。 

当社のガードレールが実際に機能していることを確認しました。あるケースでは、エージェントが本番環境のインフラストラクチャにつながる可能性のあるアプリケーションの動作を追跡しました。当社が導入している厳格な境界が、ネットワーク層でそのリクエストをブロックしました。しかし、エージェントが試行したことは確認できました。このブロックされた試行は、当社のガードレールが機能していることの証明です。 

許可されたドメインのみアクセス可能です 

当社のエージェントは、明示的に設定されたドメインとのみやり取りできます。ドメインが許可リストに登録されていない場合、ネットワークレベルでブロックされます。これはお客様自身で設定可能で、どのドメインが攻撃可能またはアクセス可能かを指定できます。簡単に言えば、エージェントが本来やり取りすべきでないサーバーとやり取りするのを防ぐため、デフォルトでドメインをブロックしています。

これは、スコープの強制適用において、プロンプトや人間に依存しないことを意味します。Aikidoが技術的にこれを強制適用します。

意図しないスコープの逸脱はブロックされます

幼児の例えに戻りましょう。他のほとんどの安全制御によってエージェントがスコープから逸脱しないとしても、ごく一部のエージェントは、やはり逸脱してしまうことがあります。特に250のエージェントが同時に実行されている場合はなおさらです。 

その典型的な例は、エージェントがリンクを介して外部アプリケーションにリダイレクトされた場合です。エージェントはまだ同じページにいると思い込みますが、実際には別のウェブサイトにいます。そのため、突然XやRedditにアクセスし、これがスコープの一部であると見なしてしまうのです。

だからこそ、エージェント自身から保護するための厳格なチェック体制が必要なのです。Aikido SecurityのAIペンテストリード、フィリップ・ドゥラソフは次のように述べています。

「常に賢明とは限らない5%のエージェントが存在します。だからこそ、私たちはこの5%に対処することを確実にしています。」

レイヤー3:プロンプトインジェクションとデータ持ち出し 

プロンプトインジェクションが自律型AIシステムにおける主要なリスクであることは認識しています。これは、攻撃者がエージェントが読み取るコンテンツに悪意のある指示を挿入し、エージェントがそれらの指示を正当なガイダンスとして解釈し、それに従ってしまうというものです。

これは、エージェントにソースコードや内部データを不適切な場所に送信するよう促すコンテンツを意味する可能性があります。この脆弱性(Vulnerability)は、信頼できないコンテンツに晒され、それに基づいて行動することから生じます。Aikidoはこれらの両方の選択肢を排除します。

まず、Aikidoのエージェントはオープンなインターネットアクセスを持ちません。これは、エージェントがGoogle検索で特定の技術がどのように機能するかを調べたり、Redditにアクセスして安全でないことを行う指示を受け入れたりすることができないことを意味します。エージェントが処理するコンテンツは、スコープ内のアプリケーション自体に存在するものです。 

次に、たとえ悪意のある指示が何らかの形でターゲットアプリケーション内に仕込まれたとしても、エージェントはデータの持ち出しを許可されません。ネットワークレベルの制限により、ランダムな宛先へのアウトバウンド接続が防止されるため、エージェントはソースコードをGoogle Driveにアップロードしたり、外部エンドポイントに投稿したり、攻撃者が制御するドメインにデータを送信したりすることはできません。

当社は、エージェントからのHTTPおよびDNSトラフィックの両方を傍受し、制御することで、ネットワーク層でこれを強制します。これにより、明示的に承認されていないドメインとの名前解決や通信を防止します。

したがって、モデルが指示を誤って解釈するという最悪のシナリオでも、外部に何かを送信することはできません。

言及すべきエッジケースとして、お客様が意図的に自身の環境に悪意のある指示を注入した場合(なぜそのような状況になるのかは不明ですが?!)、エージェントはこれを処理する可能性があります。しかし、その場合でも、唯一の影響は顧客自身のテストに限定されます。既に制御している範囲を超えるテナント間のリスク、インフラストラクチャの露出、またはデータ漏洩は発生しません。 

レイヤー4:各エージェント向けの隔離されたサンドボックス

当社の各エージェントは、それぞれ独自の小さな隔離されたサンドボックス(例:ベビーサークルの中の幼児)を持っています。これは、Aikidoの内部インフラストラクチャと、同時に実行されている他のエージェントの両方から分離されていることを意味します。つまり、Aikidoのネットワーク、インフラストラクチャ、データベースへのアクセスから分離されており、他のアクティブなセッションに干渉したり影響を与えたりすることはありません。

テスト中に何かが予期せぬ動作をした場合でも、その影響はその単一のサンドボックス内に限定され、エージェント全体への影響とテナント間の露出の両方を防ぎます。 

レイヤー5:運用上の安全策

すべてのリクエストはレート制限され、負荷を認識するため、テストがターゲットシステムを過負荷にしたり、大量のアラートをトリガーしたりすることはありません。

さらに、テストはいつでも即座に一時停止または終了できます。お客様はエージェントがリアルタイムで何をしているかを確認できます。すべてのリクエストとアクションが可視化されます。これにより、必要と判断した場合、チームは介入できます。

セットアップ検証

悪意のある行動よりも設定ミスの方が起こりやすいです。このため、テスト開始前に、Aikidoはプリフライトチェックを使用して認証と到達可能性を検証します。設定が誤っているように見える場合や、本番環境に似ている場合、早期に警告が表示されます。これは、回避可能なセットアップミスをランタイム制御で修正することに依存するのではなく、実行開始前に人為的なエラーを検出するようにセキュリティ対策が設計されていることを意味します。

ソフトな境界

当社の階層的なアプローチは、ソフトな境界も備えていることを意味します。これにより、エージェントが使用するためにドメインがアクセス可能である必要はありません。 

例えば、認証ポータルがある場合、エージェントがそのポータル内の認証を使用してアプリケーションにログインすることは望ましいですが、エージェントがポータル自体を攻撃することは望ましくありません。

ソフトバウンダリとは、エージェントが認証ポータルに到達できるものの、攻撃しないよう具体的に指示されていることを意味します。 

スコープの強制方法:人間 vs AIペンテスト

従来のペンテストでは、スコープはドキュメント、契約、および専門的な判断を通じて強制されます。テスターは、どの環境がスコープ内であるかについて説明を受けます。これは実際にはうまく機能しますが、境界内に留まることはテスターの規律と経験に依存します。 

例えば、テスターがリダイレクトをたどって誤った環境に入ったり、システムを誤認したりした場合、その問題は通常、後でログやレビューを通じて発見されます。

AIペンテストでは、スコープは技術的な制御を通じて強制されます。ドメインが許可リストにない場合、接続はブロックされます。本番環境が明示的に選択されていない場合、到達できず、リダイレクトがスコープ外に誘導する場合、リクエストは自動的に失敗します。 

どちらのアプローチも効果的です。技術的な強制の利点は、ドキュメントと解釈への依存を減らすことです。 

致命的および高深刻度の問題の発見において、手動ペンテストよりも優れた結果をすでに示しているAIペンテストの恩恵を受けるには、今すぐAikido Attackをお試しください

共有:

https://www.aikido.dev/blog/ai-pentesting-agent-security

本日より無料で開始いただけます。

無料で始める
CC不要

脅威ニュースをサブスクライブ

4.7/5
誤検知にうんざりしていませんか?
10万人以上のユーザーと同様に Aikido をお試しください。
今すぐ始める
パーソナライズされたウォークスルーを受ける

10万以上のチームに信頼されています

今すぐ予約
アプリをスキャンして IDORs と実際の攻撃パスを検出します

10万以上のチームに信頼されています

スキャンを開始
AI がどのようにアプリをペンテストするかをご覧ください

10万以上のチームに信頼されています

テストを開始

今すぐ、安全な環境へ。

コード、クラウド、ランタイムを1つの中央システムでセキュアに。
脆弱性を迅速に発見し、自動的に修正。

クレジットカードは不要です。 | スキャン結果は32秒で表示されます。