Renderへのデプロイ手順を教えるはずの指示が、誰も確認しなかった架空のドメインへトークンを送る指示になっていました。
OpenAIの公式スキルリポジトリで、前例のないサプライチェーンの脆弱性が見つかりました。
OpenAIはGitHub上で公式のスキルリポジトリを管理しています。スキルとは、AIエージェントにさまざまなプラットフォームやサービスの扱い方を教えるものです。公式スキルは、認証済みのベンダーが提供または審査したものであるため、暗黙のうちに信頼されがちです。
問題の発端は、アプリケーションをRenderにデプロイする最適な方法をエージェントに教えるOpenAIのスキルでした。このスキルは、本番環境のアプリに対し、未登録のドメイン(render-internal.com)へトークンを送信するよう指示していたのです。
この欠陥を発見したAIR Securityの研究チームは、当該ドメインを自ら登録し、受信専用のシンクホールに向けました。すると、実際の本番アプリからトークンやAPI呼び出しが届き始めました。
Codexでスキルを試したところ、このドメインが既定の選択肢として実際のアプリケーションコードに組み込まれることも確認されました。
AIR Securityはこの問題をOpenAIとRenderに報告し、8月中旬に解決されました。これを受けて研究チームは、この欠陥に関する技術的な解説を公開しました。問題が混入したのは、1月のコミットです。
Renderはスキルからrender-internal.comへの参照をすべて削除し、OpenAIはopenai/pluginsからRenderプラグインを削除しました。ドメインもRenderの安全な管理下に移管されています。
厳選されたはずのこのスキルには、実在しないドメインが含まれていました。デプロイされたアプリはこれを信頼できる社内サービスとして扱い、そのドメインを登録した人物に機密情報を渡しかねない状態になっていました。
サプライチェーンのリスク
研究者が先にRenderスキルの欠陥を見つけていなければ、攻撃者が誰も取得していなかったドメインを悪用し、サプライチェーン攻撃を仕掛けていた可能性があります。
AIR Securityの共同創業者兼CTOであるNiv Hoffman氏は、公式でベンダーが公開しているAIスキルであっても、誤りや安全でない前提、依存関係、脆弱性を含み、秘密トークンの流出につながり得ると指摘しています。
「スキルは、ソフトウェアサプライチェーンの他の要素と同様に、審査と監視を行うべきです。そうすれば、脆弱性が見つかったときに修正や無効化ができます」とHoffman氏は述べています。
攻撃者は、スキルなどのAI向け指示ファイルを操作して悪用する新たな手口を模索しています。同時に、自らのAI活用を実用化するため、AIの認証情報を盗んで悪用しようとする動きも強まっています。
最近も、トロイの木馬化されたAIスキルが確認されました。オープンなエージェントスキルのエコシステムであるskills.shで、人気のAI関連サービスPaperclipやBrowser Useになりすましたものです。エージェントにGitHubから認証情報窃取マルウェアをインストールさせる手口で、170万件のインストールを集めました。