このステップでは、テスト対象となる Web サイトを確認し、ブルートフォース攻撃の概念について説明します。自動化ツールを使い始める前に、基本的な認証システムがどのように機能し、何を達成しようとしているのかを理解することが重要です。
実験環境の Web 8080 タブを開いてください。ブラウザのインターフェースが表示され、ユーザー名とパスワードを入力するフィールドがあるシンプルなログインページが表示されます。これは、日常的に多くの Web サイトで見かけるログインページと同じようなものです。
システムがどのように反応するかを確認するために、いくつか基本的なログインを試してみましょう。
1 回目の試行:
ユーザー名:test
パスワード:password123
2 回目の試行:
ユーザー名:admin
パスワード:admin
試行するたびに、「Invalid username or password(ユーザー名またはパスワードが無効です)」というメッセージが表示されます。この汎用的なレスポンスは意図的なものです。ユーザー名が存在するのか、それともパスワードだけが間違っているのかを教えないようにしています。これは「隠蔽によるセキュリティ(security through obscurity)」と呼ばれ、攻撃者が有効なアカウントに関する情報を収集するのを防ぐのに役立ちます。
Hydra がインストールされ、パスワードリストの準備が整ったので、これを使用して練習用 Web サイトへのブルートフォース攻撃をシミュレートしてみましょう。始める前に、Hydra はログインページに対して異なるユーザー名とパスワードの組み合わせを体系的に試行する自動化ツールであることを理解しておいてください。これをブルートフォース攻撃と呼びます。