← デモ一覧 / ワーク01
WORK 01

ショップの秘密を探せ

架空のTシャツショップには、画面には出ていない「秘密の情報」がいくつも隠れています。
特別なハッキングは使いません。ブラウザに最初から付いている「開発者ツール」だけで探してみましょう。

はじめに

開発者ツールを開く

  • Chrome / Edge:F12、または Mac なら ⌘+⌥+I。ページ上で右クリック →「検証」でも開けます。
  • Safari:先に「設定 → 詳細 →『Web開発者用の機能を表示』」をオンにしてから ⌘+⌥+I。
  • 上部のタブで見る場所を切り替えます。Elements(要素)・Sources(ソース)・Network(ネットワーク)の3つを使います。

左上の「ショップを別タブで開く」からショップを開き、そのページで開発者ツールを使います。答えはこのページに入力してください。

COMPLETE

全ミッションクリア

見つけた情報は、どれも画面には表示されていなかったのに、ブラウザには届いていました。 ブラウザに渡したものは、利用者が確認できます。

最後にもうひとつ。このミッションシートも普通のWebページです。開発者ツールで mission.js を開いてみてください。 答え合わせに使っている正解も、実は最初から丸見えでした。

まとめ

では、どう守ればいいのか

見つけた秘密は、どれも「画面で隠す」だけで守ろうとしていました。正しい守り方はこうです。

  1. 秘密の鍵はサーバーに置く。APIキーは、ブラウザに渡すプログラムに書きません。サーバー側で保管し、サーバーから外部サービスを呼び出します。(ミッション4)
  2. 見せないデータは、そもそも送らない。原価や個人情報は、画面で非表示にするのではなく、通信データに含めないようにします。(ミッション5・6)
  3. 操作の許可はサーバーで確認する。削除などの重要な操作は、「誰が操作しているか」「その人に許可があるか」をサーバーが毎回確認します。ボタンやリンクを隠すのは見た目の整理で、守りにはなりません。(ミッション1・2・7)

教材用の安全なワークです。ショップ・人物・メールアドレス・電話番号・APIキーはすべて架空のダミーで、 入力や操作はどこにも送信されません。
ショップの商品情報は通信で読み込むため、ファイルを直接開くのではなくWebサーバー経由(http://〜)で開いてください。