ChatGPTのChrome拡張機能はフォームの入力値まで読める? localhostで試してみた
作成日:2026.10.19
ChatGPTのChrome拡張機能を使い、ローカル開発画面のフォーム入力値が読み取られるかを検証しました。password・text・emailの入力型ごとの観測結果と、APIキーなどの秘密情報を入力した画面を共有する際の注意点を紹介します。
目次
ChatGPTのブラウザ連携でローカル開発中の画面を確認してもらうとき、フォームに入力した値まで読めるのか、少し気になったので試してみました。
結果から言うと、今回の検証では、input type="password"の入力値は読み取り結果に現れませんでした。一方、type="text"とtype="email"の入力値は結果に現れました。フォームの用途と、HTMLの入力型を分けて見ていきます。
今回は、2026年10月18日にChromeで開いたローカル開発用Webアプリで確認した内容をまとめます。特定の環境での簡易的な検証であり、拡張機能のすべての動作や、通信・保存の仕組みまで確認したものではありません。
検証した環境と方法
対象は、OpenAI提供のChatGPTのChrome拡張機能によるブラウザタブの内容読み取りです。ブラウザ連携の概要は、OpenAI公式のブラウザ拡張機能の説明も参照してください。
- 検証日:2026年10月18日
- ブラウザ:Google Chrome
- 対象ページ:
http://localhost:8000で動作する開発用Webアプリ - 対象画面:管理者ログイン画面と追加認証(MFA)画面
Chromeで対象タブを開き、フォームに値を入力した状態でChatGPTに画面内容の確認を依頼しました。取得されたページ情報に、入力値が含まれるかを比べています。入力値には、実際の認証情報ではなく、検証用のダミー文字列を入力しました。
localhostの画面も読み取れた
まず、localhostで動かしている画面も読み取り対象になりました。ページのタイトル、見出し、フォームの項目名、ボタン名などを取得し、ChatGPTがその内容を説明できました。
これは、OpenAIのサーバーからローカルのWebサーバーへ直接接続できた、という意味ではありません。今回確認できたのは、Chromeで表示しているローカルの画面情報を、ブラウザ連携を通じてChatGPTが利用できたことです。
開発環境だからといって、画面に表示した情報まで共有されないわけではない、という点は意識しておきたいところです。
inputの入力型による読み取り結果の違い
type="password"の値は結果に現れなかった
ログイン画面のパスワード欄は、入力済みの状態で確認しました。読み取り結果では、該当する要素が次のように表現されていました。
<input type="password"/>
同じ画面のtype="email"の入力欄には、入力値を示すvalueが現れましたが、type="password"の入力欄には現れませんでした。
ただし、この結果から言えるのは「今回ChatGPTに提示された情報にはパスワード値が現れなかった」ということまでです。拡張機能の内部や通信処理で、値が一切扱われなかったかどうかは確認していません。
type="text"・type="email"の値は結果に現れた
続いて、MFAの追加認証画面の入力欄に、ダミー文字列のddddddを入力して確認しました。この欄はtype="text"の通常のテキスト入力欄です。
こちらの読み取り結果には、入力した文字列が含まれていました。
<input type="text" value="dddddd"/>
「パスワード用かMFA用か」という用途と、inputのtype属性は別の話です。今回のMFA欄はtype="text"であり、認証に使う欄でも、その入力値が読み取り結果に現れました。type="email"も含め、今回確認したpassword以外の入力型では値を取得できた、という整理になります。
ただし、password以外のすべての入力型を試したわけではありません。ここで値を確認できたのはtextとemailです。入力型ごとの扱いを網羅した検証や、入力型だけを変えた比較は行っていないため、拡張機能内部の判定条件まで断定することはできません。
今回の結果一覧
| 確認した要素・入力型 | 観測結果 |
|---|---|
| localhostのページ本文・見出し・ボタン名 | 取得できた |
input type="password"(パスワード入力に使用) | 入力値が結果に現れなかった |
input type="text"(MFAコード入力に使用) | ダミー値ddddddを取得できた |
input type="email"(メールアドレス入力に使用) | 入力値が結果に現れた |
取得結果はHTMLソースそのものとは限らない
今回確認した読み取り結果は、スクリーンショット画像ではなく、見出しやラベル、入力欄などの情報を含むテキスト表現でした。上のコード例も、その取得結果に現れた表現です。
HTMLに似た形式ですが、ページのHTMLソースをそのまま取得したと確認できたわけではありません。DOMやアクセシビリティ情報をどのように使っているかなど、内部の抽出方法は未確認です。
取得結果にvalueがあることから、元のHTMLソースにもその属性が書かれていた、と判断することもできません。ここでは、ChatGPTが利用できる情報に入力値が含まれていたかどうかを見ています。
この検証では分からないこと
今回の結果は、画面内容の読み取りを依頼したときのものです。次の内容までは調べていません。
- タブを開いただけで、どの情報が取得・転送されるか
- 通信の正確なタイミングや送信内容、保存期間、学習利用の有無
- パスワード値が読み取り結果から除かれる仕組みや処理の場所
- バージョン・利用プラン・読み取り操作による違い
- hidden、textarea、contenteditable、iframeなどの扱い
「入力値が常時送信されている」「パスワード欄なら必ず保護される」といった判断は、この結果だけではできません。通信やデータの取り扱いを調べる場合は、それぞれ別の検証や、利用するサービス・プランの公式情報の確認が必要です。
開発画面を共有する前に確認する
今回の結果を見る限り、フォームへ入力した値も共有対象になり得ると考えて、画面の内容を確認してからブラウザ連携を使うのがよさそうです。
特に、ローカルの管理画面に実データを表示している場合や、認証情報を入力したままの場合は注意したいところです。検証にはダミーデータを使い、読み取ってもらう画面から不要な入力値や個人情報を外しておきます。
APIキーやアクセストークンなどを、設定画面のinput type="text"に入力する場合も注意が必要です。通常のテキスト入力欄でも、入っている値は秘密情報かもしれません。画面を共有する前に、実際のキーやトークンが入力されたままになっていないか確認しましょう。
パスワード欄の値が今回現れなかったのは一つの観測結果ですが、それだけでフォーム全体が共有してよい状態になるわけではありません。ブラウザ連携は便利なので、どの情報を渡すかを意識しながら使っていきたいと思います。
奈良市を拠点に、27年以上の経験を持つフリーランスWebエンジニア、阿部辰也です。
これまで、ECサイトのバックエンド開発や業務効率化システム、公共施設の予約システムなど、多彩なプロジェクトを手がけ、企業様や制作会社様のパートナーとして信頼を築いてまいりました。
【制作会社・企業様向けサポート】
Webシステムの開発やサイト改善でお困りの際は、どうぞお気軽にご相談ください。小さな疑問から大規模プロジェクトまで、最適なご提案を心を込めてさせていただきます。
ぜひ、プロフィールやWeb制作会社様向け業務案内、一般企業様向け業務案内もご覧くださいね。
ChatGPT・GitHub・Codexで設計から実装・レビューまで進める方法
2026.08.09
Codexにいきなりアプリ開発を依頼するのではなく、ChatGPTで設計と作業分解を行い、GitHub Issueへ整理してからCodexで実装する流れを紹介します。pushやPull Request、レビュー、手戻りとトークン消費を抑える考え方も説明します。
SAML通信の確認に便利なChrome拡張機能の紹介
2025.01.28
SAML認証を行なうWebアプリケーションの開発では、IdPとSP間でやり取りされるデータを確認したい場面が多々あります。本記事では、そうした作業に役立つChrome拡張機能「SAML Message Decoder」と「SAML Chrome Panel」を紹介します。