バイブコーディングのリスクとは?APIキーの流出から本番運用まで

バイブコーディングのリスクとは?APIキーの流出から本番運用まで

この記事の要点

  1. 01バイブコーディングのリスクは、鍵の管理、コードと設定、本番運用、データと規約の4つの領域にあり、いずれも指示しなければ作られにくい部分です。
  2. 02APIキーは、GitHubへの公開、チャットへの貼り付け、画面側のコードへの埋め込みの3つの経路で流出し、第三者に使われると利用料を請求されます。
  3. 03Google Cloudの予算アラートは利用を自動では止めないため、利用の上限と、流出に気づいたときの再発行を前提にします。
  4. 04AIが書いたコードは、認証・権限、入力チェック、データベースのアクセス制御、クラウドの設定、依存パッケージに穴が出やすく、画面の確認だけでは見つかりません。
  5. 05公開前に、バックアップ・監視・障害対応を誰が担うかと、個人情報や利用規約の確認を済ませておく必要があります。
目次
  1. バイブコーディングのリスクは、どこにあるのか
  2. ① 鍵の管理:APIキーは、どこから流出するのか
  3. ② コードと設定:AIが書いたコードは、どこに穴が出やすいのか
  4. ③④ 本番運用とデータ:公開前に、何を決めておくのか
  5. ③ 本番運用で決めること
  6. ④ データと規約で確かめること
  7. まとめ

AIに指示するだけで、業務アプリが動く時代になりました。ただし、動くことと、安全に・効果的に使い続けられることは別の話です。この記事では、バイブコーディングで自社開発を始める前に押さえておきたいリスクを、4つの領域に分けて整理します。

バイブコーディングのリスクは、どこにあるのか

リスクは、コードそのものよりも、コードの周りにあります。主な領域は次の4つです。

領域主なリスク起きること
① 鍵の管理APIキーやトークンの流出第三者に使われ、利用料を請求される
② コードと設定権限や設定の不備、入力チェックの不足、外部の部品の脆弱性他人のデータを見られる、書き換えられる
③ 本番運用バックアップ・監視・障害対応の不在止まっても気づかず、誰も直せない
④ データと規約個人情報の扱い、外部サービスの利用規約法令や契約に反する使い方になる

画面の要望はAIに伝わりますが、要望に書かれていない守りは抜けやすくなります。使う環境ごとの具体的な設定は、「バイブコーディングに最適な環境とは?VercelとSupabaseで社内ツールを作る構成」で解説しています。

バイブコーディングのリスクを4つの領域に分けた図。鍵の管理、コードと設定、本番運用、データと規約
画面の外にある4つの領域で、リスクが生まれる

① 鍵の管理:APIキーは、どこから流出するのか

流出の経路は、主に3つです。

  • GitHubへの公開:設定ファイル(.env など)や認証ファイルを、コードと一緒にリポジトリへ上げてしまう
  • チャットへの貼り付け:AIや同僚とのチャットに、キーをそのまま貼って渡してしまう
  • 画面側への埋め込み:ブラウザやスマートフォンで動くコードにキーを書き、誰でも読める状態にしてしまう

APIキーは、外部サービスを自社の名義で使う鍵です。OpenAIは、流出したキーで想定外の利用料が発生しうると注意し、キーを自社のサーバー経由で使うよう求めています。

GitHubには、コードに含まれるキーを検出する「シークレットスキャン」があり、公開リポジトリでは無料で過去の履歴まで調べます。ただし、検出できるのは決まった形式のキーだけです。チャットや画面側のコードに置いたキーは守れません。また、privateにしているからといって、シークレットキーをリポジトリに上げるのも危険です。 先日GitHubの内部リポジトリへの不正アクセスも報告されています。

https://www.itmedia.co.jp/news/article/2605/20/1260520085

対策は、キーを環境変数に置いてコードから切り離すこと、google cloud などでシークレットマネジャーを利用すること、人ごとに別のキーを発行することです。貼ってしまった、上げてしまったと気づいたら、消すだけでなく、すぐに再発行(ローテート)します。

APIキーが流出する3つの経路と、それぞれの対策を並べた図
流出の経路は3つ。気づいたら「消す」ではなく「再発行」

② コードと設定:AIが書いたコードは、どこに穴が出やすいのか

穴が出やすいのは、「誰が、どのデータに触れてよいか」を決める部分です。Webアプリの代表的なリスクをまとめたOWASP Top 10(2025年版)では、1位がアクセス制御の不備、2位が設定の不備、3位が外部の部品を含むサプライチェーンの不備です。

穴が出やすい箇所起きること
認証・権限ログインはできても、他人のデータのURLを開くと見えてしまう
入力チェック入力欄から想定外の値を送られ、データベースを操作される(SQLインジェクション)
データベースのアクセス制御画面からは見えないが、データベースに直接問い合わせると全件読める
クラウドの設定権限を必要以上に広く与え、1つの鍵の流出が全体の被害になる
依存パッケージAIが組み込んだ外部の部品に、既知の脆弱性が残っている

これらは、画面を触るだけでは見つかりません。動作の確認とは別に、IPAの「安全なウェブサイトの作り方」などを基準に、権限と入力を確認する必要があります。依存パッケージは、GitHubのDependabotで既知の脆弱性を通知させられます。

③④ 本番運用とデータ:公開前に、何を決めておくのか

公開の前に、運用の担当とデータの扱いを決めておきます。作った人しか直せない状態で公開すると、止まったときに業務も止まります。

③ 本番運用で決めること

項目決めること
バックアップ何を、どの頻度で、どこに残すか。戻す手順を試したか
監視停止、エラー、利用料の急増に、誰が気づくか
障害対応止まったとき、誰が、どこまで直すか
鍵の期限外部サービスのキーやトークンの期限を、誰が管理するか
呼び出しの上限外部に公開する機能に、回数の上限を設けたか

※ 確認項目の例です。

Google Cloudの予算とアラートの設定画面。しきい値を50%、90%、100%に設定した状態
予算アラートは通知の仕組み。利用を止める設定とは別に考える

④ データと規約で確かめること

個人情報保護委員会は、生成AIに個人情報を入力する場合、利用目的の範囲内かを確認するよう注意を促しています。入力したデータが学習などに使われないかの確認も求めています。外部サービスの利用規約では、商用利用とデータの扱いの条件を確かめます。

まとめ

  • バイブコーディングのリスクは、鍵の管理、コードと設定、本番運用、データと規約の4つの領域にあります。
  • APIキーは、GitHubへの公開、チャットへの貼り付け、画面側への埋め込みの3つの経路で流出します。
  • 課金アラートは利用を止めません。利用の上限と、流出時の再発行を前提にします。
  • AIが書いたコードは、権限・入力・設定・外部の部品に穴が出やすく、画面の確認だけでは見つかりません。
  • 公開前に、バックアップ・監視・障害対応の担当と、個人情報や利用規約の確認を済ませます。

作ること自体のハードルは下がりました。一方で、作った後に守るべき範囲は変わっていません。しかも、どれも一度決めれば終わりではなく、使い続ける間ずっと続きます。自社で作る場合は、この4つの領域を誰が担うかを先に決めてから始めてください。

よくある質問

APIキーをチャットやGitHubに貼ってしまったら、どうすればよいですか?

メッセージやファイルを消すだけでは不十分です。すぐに提供元の管理画面でキーを再発行(ローテート)し、古いキーを無効にします。そのうえで、キーを使っているアプリの設定を新しいキーに差し替えます。

非公開のリポジトリなら、APIキーを置いても安全ですか?

安全とは言えません。OpenAIは、非公開のリポジトリも侵害されうるとして、キーをコードに含めず環境変数に置くよう求めています。GitHubのシークレットスキャンも、組織が所有する非公開リポジトリでは有料の機能です。

課金アラートを設定すれば、高額請求は防げますか?

アラートは通知の仕組みで、利用を自動では止めません。AWS Budgetsのように更新に時間差があるものもあり、通知の前に費用が膨らむことがあります。上限を設定できるサービスでは、利用の上限もあわせて設定します。

AIにセキュリティも考えて作るよう指示すれば、十分ですか?

指示は有効ですが、それだけで十分とは言えません。権限や入力のチェックは、画面を触る確認だけでは漏れが見つかりにくいためです。OWASP Top 10やIPAの「安全なウェブサイトの作り方」を基準に、別途確認します。

参考資料

  1. About push protection|GitHub Docs
  2. About secret scanning|GitHub Docs
  3. About Dependabot alerts|GitHub Docs
  4. Best Practices for API Key Safety|OpenAI Help Center
  5. OWASP Top 10:2025|OWASP Foundation
  6. IPA「安全なウェブサイトの作り方」
  7. Create, edit, or delete budgets and budget alerts|Google Cloud
  8. Managing your costs with AWS Budgets|AWS
  9. 個人情報保護委員会「生成AIサービスの利用に関する注意喚起等について」

この記事をシェア

山本 一成株式会社GOIT 代表取締役

2001年生まれ、21歳で起業、明治大学大学院修了(MBA)。税理士試験合格。Flutter/Python歴5年、kintone有資格者。バックオフィス・税理士事務所のDXに強み。業務整理・設計からシステム開発、現場導入まで、中小企業のDXを一気通貫で支援している。