サイバーセキュリティリスク管理会社UpGuardが実施した分析により、Supabaseを使用する1万6000件以上のデータベースが誤った設定によって公開され、個人データ、認証情報、認証トークンを含むテーブルを読み取れる状態になっていたことが明らかになった。同社は、公開されたデータのごく一部に、テーブルスキーマの分析に基づいてクレジットカード情報が含まれている可能性があると指摘している。
SupabaseはPostgreSQLを中心に構築されたオープンソースのプラットフォームで、アプリケーションやウェブサイトの構築と迅速なリリースを支援するバックエンドサービスを提供している。AIツールを使用する開発者の間で同プラットフォームの人気が高まっており、UpGuardによると、AI支援開発は新たに作成されたデータベースの60%以上を占めている。ただし、同社は、調査によって影響を受けたすべてのサイトがAIプログラミングエージェントを使用して構築されたことが証明されるわけではないと強調している。
調査で明らかになったデータの範囲
UpGuardの研究者は、Supabaseの使用を示す兆候が見られた約30万のドメインを含む集合を分析し、usersという名前のテーブルを調べた。一部のケースではクエリによってデータベースのページが返され、別のケースでは異なる名前のテーブルが利用可能であることが示された。研究者は、テーブルスキーマに基づいて、アクセス可能なデータの種類を推定した。
公開されたデータベースの半数以上には個人を特定できる情報が含まれており、より小規模なグループにはパスワードや認証トークンが含まれていた。同社が挙げた例は以下のとおり。
- 米国の駐車サービスが、連絡先情報、車両のナンバープレート、訪問履歴を含む10万件以上の顧客記録を公開していた。
- カナダの移民サービスが、884件の平文パスワードを含む約5000件のユーザー記録を公開していた。
- インドの成人向けコンテンツ制作者向けプラットフォームが、本人確認情報、決済アカウント、10万件以上のプライベートメッセージを公開していた。
- フィリピンのOTPサービスが、2000人を超えるユーザーのデータと10万件のSMSメッセージを公開しており、その中には同サービスに関連しないとみられる個人的な通信も含まれていた。
- アフリカの政府領事館が、住所や緊急居住場所を含む2万5000人分の記録を公開していた。
この問題によって何が公開されるのか
UpGuardは、露出したケースの原因として、行レベルセキュリティポリシーの欠如または無効化や、公開キーの不適切な使用など、アプリケーションのセキュリティ設定の弱さを挙げた。同社は、事業活動の種類では問題を説明できないとみている。共通する要因は、アプリケーションの開発者または運用者が、保存されているデータの機密性に応じてデータベースを設定していなかったことだ。
これらの結果は、AIの支援があるかどうかにかかわらず、アプリケーションを迅速に構築しても、アクセス権限とデータベースポリシーを見直す必要性に取って代わるものではないことを示している。ただし、情報源は実際にAIによって作成されたサイトの割合を特定する証拠を示していないため、これらのツールの使用をすべての公開事例の確定した原因とみなすことはできない。
Supabaseユーザーが見直すべき点
UpGuardは、詳細な分析によって重大な露出が明らかになった場合、アプリケーション所有者に通知したと述べた。また、Supabaseユーザーに対し、露出のリスクを探して対処するため、アドバイザーのツールやAPIセキュリティガイドを含む、プラットフォームのセキュリティ文書を見直すよう呼びかけた。各データベースに関する、公開されていた期間やアクセス回数などの詳細は、原資料では記載されていない。