攻撃者の影響
攻撃者は、MVP 導入における一般的な見落としを悪用して、機密のユーザー データに不正にアクセスしたり、データベース レコードを変更したり、インフラストラクチャを乗っ取ったりする可能性があります。これには、アクセス制御 [S4] の欠如によるクロステナント データへのアクセスや、漏洩した API キーを使用してコストが発生し、統合サービス [S2] からデータを抜き出すことが含まれます。
根本原因
MVP の立ち上げを急ぐあまり、開発者、特に AI 支援の「バイブ コーディング」を使用する開発者は、基本的なセキュリティ構成を見落とすことがよくあります。これらの脆弱性の主な要因は次のとおりです。
- 秘密漏洩: データベース文字列や AI プロバイダー キーなどの資格情報が、誤ってバージョン コントロール [S2] にコミットされます。
- アクセス制御の違反: アプリケーションが厳密な認証境界を強制できず、ユーザーが他の [S4] に属するリソースにアクセスできるようになります。
- 寛容なデータベース ポリシー: Supabase のような最新の BaaS (サービスとしてのバックエンド) セットアップでは、行レベル セキュリティ (RLS) を有効にして正しく構成できないと、データベースがクライアント側ライブラリ [S5] 経由で直接悪用される可能性が残ります。
- 弱いトークン管理: 認証トークンの不適切な処理により、セッション ハイジャックや不正な API アクセス ([S3]) が発生する可能性があります。
具体的な修正
行レベルのセキュリティを実装する (RLS)
Supabase のような Postgres ベースのバックエンドを使用するアプリケーションの場合、すべてのテーブルで RLS を有効にする必要があります。 RLS は、データベース エンジン自体がアクセス制限を強制することを保証し、有効な認証トークン [S5] を持っている場合でも、ユーザーが別のユーザーのデータをクエリできないようにします。
シークレットスキャンを自動化する
開発ワークフローにシークレット スキャンを統合し、API キーや証明書 [S2] などの機密資格情報のプッシュを検出してブロックします。秘密が漏洩した場合は、侵害されたものとみなされるため、直ちに取り消してローテーションする必要があります。
厳格なトークン慣行を強制する
トークンのセキュリティに関する業界標準に従います。これには、セッション管理に安全な HTTP 専用 Cookie を使用することや、攻撃者による再利用を防ぐために可能な限りトークンが送信者に制限されていることを保証することが含まれます。
一般的な Web セキュリティ ヘッダーを適用する
一般的なブラウザベースの攻撃 ([S1]) を軽減するために、アプリケーションがコンテンツ セキュリティ ポリシー (CSP) や安全なトランスポート プロトコルなどの標準的な Web セキュリティ対策を実装していることを確認します。
FixVibe がそれをテストする方法
FixVibe は、複数のライブ スキャン サーフェスにわたるこのデータ漏洩クラスをすでにカバーしています。
- Supabase RLS 公開:
baas.supabase-rlsは、同じ生成元バンドルからパブリック Supabase URL/非キー ペアを抽出し、公開された PostgREST テーブルを列挙し、読み取り専用の匿名 SELECT チェックを実行してテーブル データが公開されているかどうかを確認します。 - リポジトリ RLS ギャップ:
repo.supabase.missing-rlsは、一致するALTER TABLE ... ENABLE ROW LEVEL SECURITY移行なしで作成されたパブリック テーブルの承認された GitHub リポジトリ SQL 移行をレビューします。 - Supabase ストレージの姿勢:
baas.supabase-security-checklist-backfillは、顧客データのアップロードや変更を行わずに、パブリック ストレージ バケットのメタデータと匿名リストの公開をレビューします。 - シークレットとブラウザーの状態:
secrets.js-bundle-sweep、headers.security-headers、およびheaders.cookie-attributesフラグは、クライアント側の資格情報の漏洩、ブラウザー強化ヘッダーの欠落、および弱い認証 Cookie フラグをフラグします。 - ゲート型アクセス制御プローブ: 顧客がアクティブ スキャンを有効にし、ドメインの所有権が確認されると、
active.idor-walkingおよびactive.tenant-isolationテストにより、IDOR/BOLA スタイルのリソース間およびテナント間のデータ漏洩のルートが検出されました。
