AIコーディングツールは、私たちが選んだコードだけを見ているのでしょうか。Grok Buildの通信解析から、学習利用の設定と外部送信の範囲が別問題であること、利用者が確認すべきデータの流れと対応を整理します。
セキュリティ研究者cereblabは、SpaceXAI(旧xAI)のGrok Build CLI v0.2.93が、エージェントの参照ファイルだけでなく、Gitで追跡されているファイルや履歴を含むリポジトリデータを外部へ送信していたと報告した。
12GBの検証用リポジトリでは、調査を停止するまでに5.10GiB(約5.48GB)が転送され、AIが読み込んでいないファイルや、.envに記載した認証情報を模すテスト文字列も通信に含まれていたという。「Improve the model」を無効にしても送信は継続したが、送信されたデータがモデル学習に利用されたことは証明されていない。
From:
Grok Build CLI Uploads Your Entire Repo to xAI Servers
【編集部解説】
今回の報告で影響が考えられるのは、少なくともGrok Build CLI v0.2.93を、一般消費者向けアカウントまたはSuperGrokアカウントで利用した開発者です。
セキュリティ研究者cereblabの検証では、AIが実際に読み込んだファイルとは別に、Gitで追跡されているファイルとコミット履歴を含むリポジトリデータが、git bundle形式で外部へ送信されました。
現時点で、第三者による不正利用やSpaceXAI側からの情報流出が確認されたわけではありません。しかし、APIキー、パスワード、秘密鍵、顧客情報、未公開コードなどがリポジトリやGit履歴に含まれていた場合、利用者が認識していなかった保存先へ送られた可能性があります。
該当する環境では、まずGrok Buildの利用を一時的に止め、リポジトリ内とGit履歴に含まれる認証情報を確認する必要があります。送信された可能性のあるAPIキーやパスワードは無効化して再発行し、クラウドサービスやデータベースのアクセスログも確認することが現実的な対応です。
ファイルから秘密情報を削除するだけでは、すでに送信された情報やGit履歴内の情報を無効にはできません。認証情報そのものを変更する必要があります。
クラウド上のAIコーディングツールが、回答に必要なコードをサーバーへ送ること自体は不自然ではありません。SpaceXAIの企業向け公式文書でも、プロンプトやファイル内容は端末上で組み立てられ、暗号化された通信を通じて推論用のシステムへ送信されると説明されています。
今回の問題は、それとは別の通信経路が報告された点にあります。
cereblabの検証では、AIが参照したファイルをモデルへ渡す通信と、リポジトリのスナップショットを保存する通信が同時に動作していました。AIにファイルを開かないよう指示した実験でも、未参照のファイルを含むgit bundleが送信され、そのbundleからファイル内容とGit履歴を復元できたとしています。
12GBのテスト用リポジトリでは、検証を停止するまでに少なくとも5.10GiB(約5.48GB)が送信されました。これは12GBすべての送信が完了したことを示す結果ではありませんが、AIが読み込んだファイルだけでは説明できない規模のデータが外部へ出ていたことを示しています。
なお、この検証で対象となったのは主にGitで追跡されているファイルです。.gitignoreによって除外され、Gitで追跡されていないファイルまで同じように送信されるかは確認されていません。
特に誤解を招きやすいのが、「Improve the model」という設定です。
この表示からは、設定を無効にすれば、自分のコードがSpaceXAI側へ送られなくなるようにも受け取れます。しかし、研究者の検証では、この設定を無効にした後も、trace_upload_enabledとupload_enabledは有効な状態で返され、リポジトリデータの送信が継続しました。
一方、SpaceXAIのAPI向け公式文書では、利用者の明示的な許可なくAPIの入力や出力をモデル学習に使用しないと説明されています。通常のAPIでは、リクエストと応答を不正利用の調査などのため30日間保存し、企業向けのZero Data Retentionでは、入力、出力、関連メタデータを保存しないとしています。
ただし、これはAPI利用者向けに示された方針であり、今回検証された一般消費者向けアカウントにおけるGrok Buildの保存条件を、直接説明するものではありません。
ここで区別しなければならないのは、モデルの学習に使うこと、回答を生成するためにサーバーへ送ること、運用上の記録として保存することです。
「学習に使わない」という説明が正しくても、「端末から送られない」「サーバーに保存されない」とは限りません。利用者が確認すべきなのは、学習への利用許可だけでなく、送信対象、保存先、保存期間、削除方法まで含めたデータの流れです。
SpaceXAIの企業向け文書では、Zero Data Retentionが有効な組織では、Grok Buildのプロンプト、コード、応答を推論レイヤーに保存しないと説明されています。ZDRはチーム単位で適用され、企業向けアカウントで利用できます。
ただし、今回の通信検証は一般消費者向けアカウントとSuperGrokアカウントで行われています。ZDRを有効にした企業環境で、研究者が確認した別経路のリポジトリ送信が停止するかまでは検証されていません。
公式文書も、推論レイヤーでの保存については説明していますが、研究者が確認したgrok-code-session-tracesへの送信を個別には説明していません。したがって、ZDRを有効にすれば、今回報告されたすべての送信が止まるとは現段階で断定できません。
企業が導入する場合は、ZDRの契約条件を確認するだけでなく、実際の通信先をプロキシやファイアウォールで記録し、どのデータが送られているかを自社環境で検証する必要があります。
SpaceXAIの企業向け文書では、推論や設定に必要な通信先と、リモートセッション同期などの追加機能に使う通信先が区別されています。追加機能用の通信先は遮断できるとされていますが、推論に必要な通信を止めれば製品自体が利用できなくなるため、単純な通信遮断だけでは解決しません。
元記事は、.grokignoreを使って送信対象からファイルを除外する方法を提案しています。
ただし、cereblabは、この仕組みがSpaceXAIの企業向け公式文書では確認できないとして、使用中のバージョンで実際に機能するかを検証するよう注意しています。公式仕様や動作を確認できない状態では、機密情報を守る中心的な対策として依存すべきではありません。
また、2026年7月12日に公開されたGrok Build v0.2.98の公式変更履歴には、リポジトリ送信の停止や、送信範囲の変更に関する記載は確認できません。最新版へ更新しただけで問題が解消したと判断することもできません。
現時点では、秘密情報を含まない作業用コピーを用意し、必要なファイルだけを配置した隔離環境で実行する方法が安全です。
認証情報はリポジトリや.envへ固定保存せず、実行時にシークレット管理サービスから渡し、短期間で失効する権限の小さいキーを使うことも重要です。AIコーディングツールに与える作業ディレクトリを、そのまま外部へ共有しても問題のない範囲に限定する考え方が求められます。
今回の検証は、SpaceXAIが送信データをモデル学習に使用したことや、保存データが第三者へ流出したことを証明するものではありません。
確認されたのは、特定のバージョンとアカウント条件において、AIが参照していないファイルやGit履歴を含むリポジトリデータが送信され、サーバー側で受理されたという点です。
【関連記事】
New Relic、AIコーディングアシスタントの可観測性機能を発表|Claude Code・Cursor・GitHub Copilotを横断監視
AIコーディングツールの通信や動作を、利用者側でどのように把握すればよいのでしょうか。複数ツールを横断監視する可観測性の取り組みも紹介しています。
JetBrainsで15個の悪性プラグインがAPIキーを窃取、合計約7万ダウンロード
開発環境からAPIキーが外部へ送られる問題は、AIコーディングツールだけに限りません。JetBrainsの悪性プラグイン事案からも、認証情報をローカルファイルへ置く危険性が見えてきます。
AIコーディングアシスタントの普及とリスク管理の重要性
AIコーディングアシスタントは、一度安全性を確認すれば終わりではありません。導入前の評価から更新後の再検証まで、継続的に管理するための考え方もあわせてご覧ください。
【編集部後記】
AIコーディングツールは、コードを書く速度を上げる一方で、私たちが何を外部へ預けているのかを見えにくくします。「学習に使わない」という設定を見て安心しても、送信や保存まで止まるとは限りません。今回の報告は、機能の便利さだけでなく、データの流れそのものを確認する必要性を示しています。特に企業や共同開発では、未公開コードや認証情報が個人だけの問題では済みません。ツールを信頼するかどうかは、性能だけでなく、どこまで説明され、どこまで検証できるかで判断すべきでしょう。私たちも、新しいAIツールを使い始める前に、何を渡してよいのかを一度立ち止まって考える必要があります。
【用語解説】
Grok Build
SpaceXAIが提供するAIコーディングエージェント。ターミナル上での対話操作、スクリプトからのヘッドレス実行、外部アプリとの連携に対応する開発支援ツール。
git bundle
Gitリポジトリのコミット履歴やブランチなどを、単一のファイルとしてまとめる仕組み。ネットワーク接続を使わずにリポジトリを移動・複製する用途などで利用される形式。
認証情報
APIキー、パスワード、秘密鍵、アクセストークンなど、サービスやシステムへのアクセス権限を証明する情報。漏洩が疑われる場合、ファイルの削除だけでなく無効化と再発行が必要となる情報。
Zero Data Retention(ZDR)
AIサービスへ送信した入力、出力、関連メタデータをサービス提供者側で保持しない運用方式。SpaceXAIでは企業向け機能として案内されているが、適用範囲や例外を契約・技術仕様の両面から確認する必要がある設定。
推論レイヤー
利用者の入力をAIモデルが処理し、回答を生成するシステム層。データをモデル学習へ利用するかどうかとは別に、回答生成のための送信と処理が発生する領域。
トレース
ソフトウェアがどの処理を実行し、どのサービスと通信したかを追跡するための記録。デバッグやセッション復元、障害調査などに使われる一方、記録対象にコードや入力内容が含まれる場合はデータ管理の確認が必要となる情報。
【参考リンク】
SpaceXAI(外部)
Grokシリーズや開発者向けAPI、企業向けサービスを提供するAI企業の公式サイト。製品情報、ドキュメント、セキュリティ関連情報への入口。
Grok Build公式ドキュメント(外部)
Grok Buildのインストール方法、対話型セッション、ヘッドレス実行、モデル設定などを案内する公式ドキュメント。
【参考記事】
What xAI Grok Build CLI actually sends to xAI|cereblab(外部)
Grok Build CLI v0.2.93の通信を解析し、モデルへのファイル送信と、git bundleによるリポジトリデータ送信を報告した検証記録。今回の報道の根拠となった一次資料。
Enterprise Deployments|SpaceXAI Docs(外部)
企業環境におけるGrok Buildの通信先、データ処理、ネットワーク設定、Zero Data Retentionなどを説明する公式文書。
FAQ – API Security|SpaceXAI Docs(外部)
APIへ送信された入力・出力の保存期間、モデル学習への利用方針、企業向けZero Data Retentionの取り扱いを説明する公式FAQ。
Grok Build Changelog|SpaceXAI(外部)
Grok Buildのバージョンごとの機能追加や修正内容を掲載する公式変更履歴。2026年7月12日公開のv0.2.98を含む更新状況の確認先。












