Vibe codingのセキュリティ監査は、AIで作成したアプリが顧客データを保存したり、決済を受け付けたりする段階で、事業上の判断になります。画面は動き、デモは説得力があり、購入を希望する人もいます。サービスを公開する前に、顧客が自分の情報だけにアクセスできること、有料機能には有効な利用権限が必要なこと、特権操作を自社で管理できることを裏付ける証拠が必要です。

Vibe codingのセキュリティ監査は、事業の実際のリスクに照らしてコード、設定、稼働中のアプリを調べます。有料顧客を迎える前には、アカウント権限、顧客データの分離、秘密情報、決済の流れを優先してください。公開を妨げる問題を修正して再テストし、確認した範囲と対象外の範囲を明確に記録します。

このガイドは、AIを使った試作品を製品に変える創業者向けです。顧客の所在地は問いません。何を依頼すべきか、有用なレビューが何を提供すべきか、個別の修正と根本的な設計変更をどう判断するかを説明します。

Vibe codingのセキュリティ監査で答えるべきこと

Vibe codingは一般に、AIコーディングツールへ指示を出し、生成された結果を繰り返し調整してソフトウェアを作る方法を指します。実務上のセキュリティの問いは、完成したアプリに向けられます。誰がどの操作をできるのか、どのデータに届くのか、そのルールはどこで強制されるのか、という問いです。

顧客ポータルを考えると、説得力のあるデモと守りを説明できる製品の違いが見えます。顧客がログインし、自分の請求書を確認して書類をダウンロードできたとします。これは想定された流れが動く証拠です。別のアカウントが同じ請求書を要求したり、書類を直接取得したりできないことまでは確認できません。

監査では、許可されたテストアカウントと人工的なデータで、この境界を調べるべきです。同僚の招待、料金プランの変更、データの出力といった特権操作も追跡します。各操作には、バックエンドまたはデータベースが実際に適用する明示的なルールが必要です。

求める成果は、再現できる証拠に支えられた、優先順位付きの修正計画です。不安をあおる専門用語の一覧だけでは足りません。影響する業務、起こり得る結果、修正の有効性をどう確認するかが理解できなければなりません。

レビューを依頼する前に開発ツールの安全性チェックを使う

開発プラットフォームのセキュリティ機能を実行し、内容を理解できる指摘を解決してください。結果は、無視した指摘とその理由も含め、レビュー担当者へ共有します。監査の出発点が改善され、明白な未解決の警告を再発見する作業に費用を払わずに済みます。

Lovableのセキュリティ文書は、組み込みのQuickとDeepのスキャン、および追加できるセキュリティ連携を説明しています。また、これらのツールは十分なセキュリティレビューを代替せず、機密データや重要な機能を扱うアプリでは専門家による追加レビューの検討を勧めています。

この違いを調査範囲に反映させてください。プラットフォームがすでに提供した証拠を踏まえ、それ以外に具体的な業務の流れをどう評価するのか説明を求めます。スキャンは公開判断の全体を担わなくても役立ちます。一方、範囲が曖昧なら、手作業のレビューでも問題を見落とすことがあります。

継続的な開発では、AIによる自動コードレビューを追加のフィードバックとして使えます。公開前の監査は、コードの指摘を本番に配置する設定と結び付け、実際の顧客アカウントが何をできるか確認する必要があります。

画面の仕上げより先に顧客間の分離を確認する

漏れると顧客の信頼を損なう資産から始めてください。書類、アカウント情報、私的なメッセージ、請求情報、管理操作が該当します。各種類の記録を誰が読み、作成し、変更し、削除できるか定義します。チームがそのルールを説明できなければ、担当者は信頼できる基準で試験できません。

複数の企業が利用する製品では、個々のユーザーだけでなく組織ごとの分離も必要です。社員が同じ会社の同僚の記録を閲覧することは、業務上許可されているかもしれません。しかし、同じ製品を使っているという理由だけで、他社の情報にアクセスできてはいけません。

権限表を文書で作り、期待する動作を定めます。アプリの画面と、それに対応するバックエンドへの要求で試験してください。ボタンを隠すのは画面設計として有用ですが、裏側の操作も権限のない呼び出し元を拒否する必要があります。

ファイルとデータ出力にも同じ原則が当てはまります。通常の画面を経由しない要求でも、非公開の書類は非公開のままでなければなりません。バックグラウンドでの出力にも、通常のアカウント画面と同じ顧客の境界を適用します。ログイン成功だけで接続先の資源がすべて守られると考えず、これらの経路も明示的に含めてください。

各アクセス境界で求める証拠

対象動くデモが示すこと監査で確認すべきこと
顧客の記録アカウントに想定の記録が表示される権限のないアカウントは閲覧も変更もできない
チーム管理所有者が同僚を招待できる一般メンバーは自分の権限を昇格できない
非公開ファイルアカウントの画面から書類を開ける直接取得にも所定のアクセスルールが適用される
有料機能契約者に有料の選択肢が表示される保護された操作ごとにバックエンドが利用権を強制する
データ出力レポートをダウンロードできる要求者が出力できる記録だけを含む

データベースのポリシーと特権バックエンドの経路を調べる

ブラウザーが管理型のバックエンドに接続するアプリでは、データベースのアクセスを個別にレビューする価値があります。担当者はテーブルの権限とアクセス方針を、クエリを作るコードと合わせて確認すべきです。制限が厳しそうなルールでも、関数や特権サービスを通じて想定外の経路が残ることがあります。

SupabaseのAPIキーの説明は、公開コンポーネント用の公開可能なキーと、強い権限を持つ秘密キーを区別しています。秘密キーは行レベルセキュリティを回避するロールを使うため、開発者が管理する安全なコンポーネント内に置く必要があります。ユーザー認証は公開可能なキーとは別です。

したがって、ブラウザーのコードに公開可能なキーがあるだけで、秘密の漏えいとは判断できません。キーの種類と、周囲の権限が許すアクセスを確認する必要があります。強い権限を使うバックエンドには、顧客の記録を読み書きする前の独自の確認が必要です。

特権のあるデータベースクライアントを使う出力用エンドポイントを想像してください。許可された組織は、認証済みの呼び出し元と、その正式な所属関係から判断しなければなりません。ブラウザーから渡された組織IDを信頼すると、他の箇所で意図した分離を無効にしかねません。これは仮の調査例であり、特定の開発ツールが生成するコードについての指摘ではありません。

決済から製品への利用権付与まで追跡する

定期契約型の製品では、決済の安全性に利用権を与える判断も含まれます。アプリが商品と価格をどう選ぶか、購入をどのアカウントに関連付けるか、利用権をどう更新するかを調べます。ブラウザーで完了ページに移動しただけで、有料プランが有効になってはいけません。

Stripeの公式Webhook文書は、変更されていないリクエスト本文、署名ヘッダー、エンドポイントのシークレットでイベント署名を検証する方法を説明しています。同じイベントが複数回届く場合があることと、その重複処理を避ける方法も示しています。

これらを連携のレビューに含めます。不正なイベントが拒否され、再配信でクレジットを重ねて付与したり、同じ履行処理を繰り返したりしないことを試験すべきです。解約、更新の失敗、確認の遅延への対応も、選んだ課金モデルに従って定義する必要があります。

現実的な試験はアカウントの一連の流れを追います。テスト顧客を作り、プランを購入し、保護された機能を使い、契約を変更して、結果の権限を確認します。失敗した購入や未完了の購入も含めてください。各状態で許されるアクセスを受け入れ基準に記述すれば、合意したルールに照らして実装を確認できます。

秘密情報、依存関係、デプロイへのアクセスを点検する

アカウント権限が正しくても、リポジトリ、ブラウザー用のバンドル、運用ログから特権の認証情報が漏れることがあります。秘密情報がどうシステムに入り、どこに保存され、誰やどのサービスが取得できるかを確認します。本番連携を共有する開発環境やプレビュー環境も調べてください。

秘密情報が露出した場合、現在のファイルから消しただけでは、以前のコピーが無害になった証拠にはなりません。流出経路、認証情報の交換、影響するアクセスを処理する必要があります。正当な業務を止めずに交換し、確認する方法と担当者を合意します。

依存関係の指摘にも背景が必要です。どのパッケージが影響を受けるか、問題の動作が実際の環境で呼び出せるか、更新で何が変わるかを尋ねてください。修正には認証、決済、書類処理の回帰テストが必要かもしれません。設定ファイルの更新だけで完了とせず、動くリリースに結び付けて確認します。

デプロイの所有権も引き継ぎの一部です。運用、アクセスの回復、元協力者の権限取り消しに必要なアカウントは、事業側が管理すべきです。対象範囲ならバックアップと復元の試験を含めます。回復できる状態は明示的な成果物として確認し、脆弱性スキャンから推測しないでください。

見積もりを比べる前に監査範囲を決める

意味のある見積もりはシステムの一覧から始まります。顧客の役割、機密データ、決済、外部連携、配置先環境を説明します。ソースコードと設定の閲覧権を渡すのか、動いているアプリだけを試験するのかを明記してください。それぞれ異なる証拠を得る方法であり、提案書に記載すべきです。

OWASP Application Security Verification Standardは、安全な開発の要件とアプリの技術的な安全対策を試験する基準を提供します。関連するどの要件を評価に使うか、どの業務を手動試験するか、除外をどう記録するかを尋ねてください。OWASPに言及するだけでは、購入する作業の内容は分かりません。

許可する対象と試験条件を書面で合意します。人工的な顧客データ、適切なテスト用ロール、サンドボックス連携を持つ、本番を代表するステージング環境を優先してください。本番での検証が必要なら、開始前にその限界と運用上の注意を担当者と決めます。

書面で合意する成果物

成果物着手前に合意する内容
範囲アプリ、環境、役割、連携、除外するシステム
証拠影響する業務と結果に結び付いた再現可能な指摘
優先順位公開を妨げる問題と管理する作業一覧に回す問題
修正コードや設定を変える担当者と変更の確認者
再テスト修正の検証方法と残る指摘の記録方法
引き継ぎ試験済みリリース、限界、次回レビューの契機

依頼書の文章でも同じ点を明確にしてください。依頼するのは特定のリリースの評価であり、対応可能な指摘と修正の検証方法を伴うものです。

AIで作成したアプリの調査費用を左右するもの

「AIで作った」という分類だけでは価格仕様として不十分です。目的が単一で権限モデルが小さいアプリと、組織、外部協力者、非公開アップロード、請求、管理連携を持つ基盤では範囲が異なります。実際の攻撃対象となる部分と、必要な証拠に基づいて費用を算定します。

アクセスとプロジェクトの整理状態も重要です。設定の欠落、不安定な試験環境、未文書化のロールは、試験前の調査作業を増やします。反対に、再現できるデプロイと明確な権限表は、必要な対策の確認に時間を使う助けになります。

見積もりでは評価、修正、再テストを分けます。料金に修正の実施まで含むか、報告だけか、再確認が含まれるか、範囲が変わったらどうするかを確認してください。安価なスキャンと、コード分析、業務の試験、再テストを含むレビューでは成果物が違います。

予算上限と公開日を示して、書面の範囲を依頼します。全体評価が収まらないなら、どの機能を延期するか、どの影響の大きい業務を優先するか合意してください。範囲を減らした場合は残るリスクを明確に記録します。それをアプリ全体の検証として説明してはいけません。

アプリを修正するか、作り直すか

監査は、AIが生成したコードの交換を前提にすべきではありません。まず、チームが理解して保守できる構造の中で、重要な対策を修正できるか判断します。権限に絞った修正なら、すでに作った価値のある部分を残せるかもしれません。

責任、権限、業務ルールが矛盾した複数の実装に散らばっているときは、より深い設計作業が合理的になります。どの経路がアクセスを与え、変更をどう試験するか誰も説明できないなら、さらにパッチを加えても別の場所に同じ曖昧さが残ります。作り直しを受け入れる前に、その問題の証拠を求めます。

同じ受け入れ基準で修正と置き換えを比べてください。どちらの提案にも、保持する機能、データ移行への影響、運用の引き継ぎ、必要な対策の検証方法を含めます。保守可能にする費用とともに、動いている製品を交換する際の混乱も考慮します。

創業者にとって有用なのは、限界が分かる次の一歩です。アクセス制御の具体的な欠陥を修正する、利用権のサービスを単純化する、危険な機能を延期する、といった選択があります。レビューの価値はこの判断を明確にすることであり、終わりのない開発契約を生むことではありません。

試験したリリースに基づいて公開を決める

監査結果を実際に調べたコードと設定に対応させます。未解決の指摘、合意した除外、リスクを受け入れる理由を記録してください。ステージングの評価が、異なるポリシーや認証情報を使った後の本番環境を自動的に説明するわけではありません。

顧客間の不正アクセス、許可されない特権操作、誤った有料利用権が実証された場合は、対象機能を削除するか有効に封じ込めない限り、公開を止める問題として扱います。根本の対策を修正して対象の流れを再テストしてください。正当な顧客が予定どおりの操作をできることも確認します。

レビューを再実施する条件も実務的に定める必要があります。チームの役割、決済連携、ファイル共有、特権エンドポイントを追加すると安全性のモデルが変わります。以前の公開評価に未解決の重要指摘がなくても、こうした変更では対象を絞ったレビューを行うべきです。

どの評価も、ソフトウェアが永久に侵害されないことを証明しません。得られるのは、特定の製品を公開するための文書化した根拠です。試験した対策、理解した限界、残る作業の担当者が含まれます。理由のない「安全」表示より、事業運営には有用です。

有料顧客を迎える前に範囲を決めたレビューを依頼する

AIで作成した製品の公開が近いなら、アプリケーションのセキュリティテストから始めてください。このサービスは静的解析、実行時の試験、依存関係の監査、手動コードレビューを組み合わせます。顧客の業務を使って、必要な部分を決めます。

アプリの目的、技術構成、ホスティング、役割、機密情報、決済や外部連携を簡潔に説明する依頼書を送ります。公開予定日、予算の幅、気になる部分も含めてください。ソースコード、ステージング、既存のスキャン結果を用意できるか伝えます。匿名化した例を使い、合意した安全な経路で非公開アクセスを手配します。

複数の国に顧客がいる事業では、市場と契約上のセキュリティ要件を依頼書に記載します。技術試験と別の法令対応の問題を、意図して担当分けできます。一般的なアプリ監査を、あらゆる法的義務を満たした確認として説明してはいけません。

最初の判断は、対象を絞ったレビューが公開に使える証拠を提供できるかどうかです。その後、評価、修正責任、再テストを合意します。製品を作り続けながら、漠然とした安全性の不安を、範囲と受け入れ基準の明確な作業に変えられます。


よくある質問

Vibe codingのセキュリティ監査とは何ですか? Vibe codingのセキュリティ監査は、AIで作成したアプリのコード、設定、実行時の動作を事業リスクに照らして評価します。再現できる指摘、修正の優先順位、試験した対策と範囲の限界の記録を提供すべきです。

開発ツールにセキュリティスキャンがあっても監査は必要ですか? まず開発ツールのスキャンを使い、指摘を確認してください。機密データ、決済、重要な処理を扱う場合は、アプリ固有の権限と業務を対象にした専門家の追加レビューを検討します。

Supabaseの公開キーはセキュリティ上の漏えいですか? 公開可能なキーは公開コンポーネント向けで、それだけで秘密の漏えいにはなりません。キーの種類、ユーザー認証、データベース権限を合わせて確認します。秘密キーには強い権限があり、開発者が管理する安全なコンポーネント内に置く必要があります。

Vibe codingのセキュリティ監査はいくらかかりますか? 費用は役割、データ、連携、環境、必要な試験の深さで変わります。評価、修正、再テストを分けた範囲付きの見積もりを依頼し、価格を比べる前に除外を確認してください。

監査を受けるとアプリを作り直すことになりますか? 必ずしもそうではありません。個別の修正で合意した対策と保守要件を満たせるかを調べます。作り直しを勧める場合は、構造上の問題、代案、移行への影響、判断を支える証拠を説明すべきです。