最近、ドイツのセキュリティ研究者ベンジャミン・フライシュ氏がマイクロソフトのGitHub上に報告書を発表し、OpenAIのChatGPT APIに深刻なセキュリティホールが存在し、分散型サービス拒否(DDoS)攻撃に悪用される可能性があると指摘しました。この脆弱性により、攻撃者は簡単なHTTPリクエストを利用してChatGPTのクローラーを介し、任意のウェブサイトに大規模なネットワークリクエストを送信し、目標ウェブサイトの機能停止を引き起こす可能性があります。
画像出典:AI生成画像、画像ライセンス提供元Midjourney
フライシュ氏の報告によると、ChatGPTのAPIは特定のウェブサイトを指すHTTP POSTリクエストの処理において深刻な欠陥を示しています。ChatGPTがウェブサイトを参照する際、「attributions」と呼ばれるAPIエンドポイントを呼び出し、そのウェブサイトに情報を要求します。攻撃者が多数の異なるリンクを含むリクエストをこのAPIに送信すると、ChatGPTのクローラーはこれらのリンクに同時にアクセスし、目標ウェブサイトに大量のリクエストを送りつけます。
フライシュ氏は、APIが受信したリンクの重複チェックを行っておらず、リンク数にも制限がないと指摘しています。つまり、攻撃者は一度のリクエストで数千個のリンクを送信でき、それらのリンクはすべて同じ目標ウェブサイトを指すことができます。簡単なツールを使って、攻撃者は認証なしでChatGPTのエンドポイントにリクエストを送信でき、OpenAIのサーバーは各リンクに対してリクエストを送信し、目標ウェブサイトに毎秒20~5000件のリクエストを送信する可能性があります。
リクエストは異なるIPアドレスから送信されるため、被害者は攻撃の発生に気づきにくいでしょう。たとえ被害者がファイアウォールを有効にしてChatGPTのIPアドレスをブロックしても、クローラーは次の瞬間にもリクエストを再送信します。フライシュ氏は、OpenAIとマイクロソフトにこの問題を複数の経路で報告したが、いまだに返答がないと述べています。
DDoS脆弱性に加えて、フライシュ氏はAPIに提示注入の脆弱性など、他のセキュリティ問題も存在すると述べています。これにより、クローラーはウェブサイトの情報取得だけでなく、同じAPIエンドポイントで質問に答えることもできます。フライシュ氏は、OpenAIがこれらの悪用行為を防ぐための基本的なセキュリティ対策をなぜ実装しなかったのか疑問を呈し、これらは長年にわたってソフトウェア開発者が一般的に採用してきた単純な検証ロジックだと指摘しています。
彼は、この脆弱性はOpenAIが「AIエージェント」の開発においてセキュリティを十分に考慮していなかった可能性を示唆していると主張しています。長期間稼働するネットワーククローラーにおいて、同じウェブサイトへのリクエスト数の制限がないことは特に不合理です。
要点:
1. 🚨 OpenAIのChatGPT APIにセキュリティホールが発見され、DDoS攻撃に悪用される可能性があります。
2. 📈 攻撃者は一度のリクエストで数千個の同じウェブサイトを指すリンクを送信し、目標ウェブサイトをダウンさせる可能性があります。
3. ❗ この脆弱性はOpenAIとマイクロソフトに報告されましたが、いまだに返答がなく、セキュリティ管理の怠慢を示しています。