自分のパソコンで行う実習 / local-1
ログイン画面の送信先を読み、偽のURLを見つける
見た目を変えず、actionのホストだけが正規ホストに変わる。
1. 準備する
この節の本文で学んだことを、ログイン画面の送信先を読み、偽のURLを見つける実習で確かめます。扱う情報は配布した架空データだけです。
本文の知識を、この実習でどう使うか
HTMLのformは入力を送る仕組み、actionは送信先です。画面のロゴや文字が同じでも、actionの相手は別にできます。
- 画面の表示
- formのaction
- 情報を受け取る相手
結果が違ったときに考えること:正規の名前を含んでいても、末尾に別のドメインが続けば別の相手です。表示名を直すだけでは送信先は変わりません。
編集するファイルと、確認する結果
- 自分で編集するもの
- login.txt
- 提出するもの
- login.txt、result.json
- 結果を確認する方法
- 最後の実行コマンドが結果ファイルを作ります。結果を手で正解に書き換えず、編集元を直して再実行し、最新のファイルを選んで提出します。
エディターで変更後はWindowsならCtrl+S、MacならCommand+Sで保存します。コードの記号は半角を使います。エディターの文章に実行コマンドを貼らず、コマンドはPowerShellまたはターミナルへ入力してください。
この実習では、login.txt、result.jsonと、予測・変更前後の結果・理由を提出します。
ファイルの取得と端末での実習はこのまま進められます。結果を保存するにはログインが必要です。別タブでログインする(ログイン後はこのページを再読み込みしてください。)
- 実習ファイルをダウンロードして展開します。
下のZIPを「ダウンロード」フォルダーに保存します。ZIPを右クリックして「すべて展開」を選びます。 展開したフォルダーの中に login.txt が見えることを確認します。既に同じ名前のフォルダーがある場合は、前回の編集を上書きしないよう別の名前で展開してください。
この実習のファイルを受け取る(ZIP) - コマンドを入力する画面を開きます。
スタートメニューで「PowerShell」と検索して開きます。管理者として実行する必要はありません。 コマンドは上から順に貼り付けてEnterで実行します。先頭の > や $ といった表示は入力しません。
- 展開したフォルダーへ移動します。
通常の保存場所なら、次のコマンドを使えます。違う名前や場所へ展開した場合は、下の対処方法を使ってください。
Set-Location -LiteralPath "$HOME/Downloads/wha-U-PHISH-01" Get-ChildItem表示された名前に login.txt があれば、操作する場所は合っています。
- Pythonを準備します。
Pythonは .py ファイルに書いた処理を動かすソフトです。「python.org」のDownloads → WindowsからPython install manager(公式のインストール管理ソフト)を取得してインストールします。新しくPowerShellを開き直し、pymanager install default を実行してPython本体を用意します。既にPython 3.11以降が使える場合は追加インストールは不要です。 この実習はPython 3.11以降の標準機能だけを使います。追加パッケージや有料サービスは不要です。
pymanager install defaultpy -3 --versionPython 3.11以上のバージョンが表示されたら、もう一度上の移動コマンドで実習フォルダーへ移動します。
準備で止まったときの確認方法
- 「フォルダーが見つかりません」:ZIPの中ではなく展開したフォルダーを開きます。エクスプローラーのアドレス欄をクリックしてパスをコピーし、Set-Location -LiteralPath 'コピーしたパス' の引用符内へ貼ります。
- 「ファイルが見つかりません」:一覧にファイルがなければ、同じ名前の内側のフォルダーを開いていないか確認します。上の移動操作をそのフォルダーへやり直します。
- 編集したのに変わらない:ファイルを保存し、拡張子が .py.txt や .txt.rtf になっていないか確認します。MacのTextEditでは「フォーマット→標準テキストにする」を選びます。コードを編集するときは「編集→自動置換」のスマート引用符とスマートダッシュをオフにし、半角の記号が別の文字に変わらないようにします。
- Pythonが見つからない:公式インストールを完了し、ターミナルを開き直します。SyntaxErrorは記号の書き間違い、IndentationErrorは先頭の空白の違いを示します。表示されたファイル名と行番号を見て、全角記号や不要な空白を直してください。
準備に時間がかかっても理解度を下げることはありません。