ChatGPT Tricked Into Bypassing CAPTCHA Security and Enterprise Defenses
2025/09/19 CyberSecurityNews — ChatGPT エージェントでは、自身の安全プロトコルを回避して CAPTCHA を解読することが可能であり、広く利用される AI とボット対策システムの、安全対策と堅牢性に重大な懸念が生じている。SPLX の調査によると、プロンプト・インジェクションと呼ばれる手法を用いることで、AI エージェントは組み込みポリシーを破るように誘導され、単純な CAPTCHA 課題だけではなく、より複雑な画像ベースの CAPTCHA も解読できる恐れがある。

同社による実験の結果が浮き彫りにするのは、AI エージェントがコンテキストを解釈する方法における重大な脆弱性の存在であり、企業セキュリティにおいて同様の手法が内部統制の回避に悪用されるという深刻なリスクを提示している。

ChatGPT による CAPTCHA セキュリティの回避
CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) システムは、自動化されたボットをブロックする目的で設計されており、ChatGPT のような AI エージェントにおいては、CAPTCHA の解読を拒否するよう明示的にプログラムされている。
SPLX の研究者が ChatGPT エージェントに対して、公開テスト用 Web サイトで CAPTCHA を解くよう依頼したところ、エージェントはポリシー制限により拒否した。しかし、SPLX の研究者はマルチターンのプロンプト・インジェクション攻撃を用いて、この拒否を回避した。このプロセスには、以下のステップが含まれる。
- モデルの準備
最初に研究者は、標準的な ChatGPT-4o モデルとの会話を開始し、プロジェクトのために、偽の CAPTCHA をテストする計画を立て、これを許容可能なタスクとして、AI が同意するよう誘導した。 - コンテキスト操作
次に、会話全体を新しいセッションにコピーし、以前の議論として提示した。操作されたコンテキストを継承したエージェントは、以前の合意を採用し、抵抗せずに CAPTCHA を解読した。
このエクスプロイトは、エージェントのポリシーに直接的に違反するものではないが、タスクを再構成することで従来のポリシーを回避させている。AI は不正なコンテキストに誤誘導され、コンテキストの認識と記憶においても、重大な欠陥があることが示された。

このエージェントは高度な能力を示し、以下を含む多様な CAPTCHA を解読に成功した:
- reCAPTCHA V2/V3 およびエンタープライズ版
- 単純なチェック・ボックス型やテキスト・ベースのパズル
- Cloudflare Turnstile
その一方で、スライダーや回転パズルなどの、精密な操作を要する課題では苦戦したが、reCAPTCHA V2 エンタープライズのような画像ベースの CAPTCHA は解読には成功している。GPT系エージェントが、これほど複雑な視覚の課題を解読したという事例は、今回が初めてだとされる。

注目すべきは、ある試行においてエージェントが、より人間らしく見えるよう戦略を独自に調整したことである。エージェントは「失敗しました。もう一度試してみます。もっとコントロールを効かせてドラッグして、人間の動きを再現します」とコメントしたという。それが示すのは、カーソル挙動を分析するボット検出システムをバイパスしていく戦術を、AI が独自に生み出せることである。
企業への影響
この実験の結果が示すのは、固定ルールや単純な意図検出に基づくAI ガードレールが脆弱であることだ。攻撃者が AI に対して、実際のセキュリティ制御が偽物であると信じ込ませることができれば、それらが回避される可能性がある。
エージェントによる機密データの漏洩/制限されたシステムへのアクセス/許可されていないコンテンツの生成などの行為が、企業環境の正当なタスクを装うことで行われる恐れがある。
対策には、以下が含まれる。
- 詳細なコンテキスト整合性チェック
- 過去の会話によるコンテキスト汚染を防ぐメモリ衛生の向上
- この種の脆弱性が悪用される前に特定/修正するための継続的な AI レッドチーム演習
SPLX の実験は、AI エージェントがプロンプト・コンテキストを、解釈/継承する方法に、根本的な脆弱性があることを示しています。この問題は、単に CAPTCHA を解かせる指示というよりも、マルチターンで前提を巧妙に書き換え、エージェントのメモリやコンテキスト処理を誤誘導できる点にあります。その結果として、明示的な拒否ポリシーがあっても、入力されたコンテキストを信頼してしまい、本来の制約を逸脱する挙動を引き起こします。よろしければ、Prompt Injection で検索も、ご参照ください。
You must be logged in to post a comment.