academy 認証 5問目 応答タイミングによるユーザー名の列挙

WEBセキュリティー

Lab: Username enumeration via response timing

My accoutから、適当なID/PASSを入れてログイン
POST /login をリピータに

リピータから、ID/PASSを色々変えて、sendしてください

何回もsendしていると、

You have made too many incorrect login attempts.
Please try again in 30 minute(s)
の文字が、レスポンスに出ます

これは、IP制限を受けているようです。

リピータに、
X-Forwarded-For: 1
をHOST: の下に足して、sendします

X-Forwarded-Forヘッダで、IPの偽装が可能です
IPベースの保護機能は、これで破れるようです。

リクエストをイントルーダに送ります
攻撃タイプを、Pitchfork
Clear§して、
X-Forwarded-Forと、usernameのパラメータにペイロード位置を追加
パスワードは、100文字程度のダミー文字を入れます。

ペイロードタブにうつります

ペイロード セット 1 を選択
タイプは、Numbers に
1~100 ステップ1 にします

Max fraction digits: 0 に

ペイロード セット 1 を選択
用意されている候補者名リストをコピーし、貼り付けます

Start atack

アタックが終われば、ダイアログの左、一番上のColumns、
responce receive
responce completed
にチェックを入れます

responce received行でソートすると、1つだけ応答が長いリクエストがあります
austin (私の環境

*2,3回アタックしてみて確認してもいいかもしれません。

イントルーダ、ペイロードタブに戻り
ユーザー名のパラメータに、austinを入力
パスワードのパラメータに、§マークをつけます

ペイロードタブの、ペイロードセット2に変えて、
payload Optionsのリストを一旦クリア
用意されている、候補者のパスワードをコピー、貼り付けます


Start atackします。

status行でソートすると、
passwordは、supermanです(私の環境では

得られたユーザー名、パスワードでログインします

クリア!

今回のキーは、X-Forwarded-Forヘッダが使えると、IP連続ブロックを回避できるのと
ユーザー名によって、応答時間から推測ができる点でした。

–)v

コメント

タイトルとURLをコピーしました