Hydraの特徴
Hydra(正式名称:THC-Hydra)は、非常に強力で広く使われているパスワードクラックツールです。主にブルートフォース攻撃や辞書攻撃によって、さまざまなサービスへのログイン認証を突破することを目的としています。(From chat gpt)
KaliLinux標準搭載です!
特徴 | 説明 |
---|---|
多様なプロトコルに対応 | FTP,SSH,Telnet,HTTP(S),SMB,RDP,MySQL,VNC....etc |
高速 | 並列処理による高速なクラックが可能 |
辞書攻撃対応 | ユーザ名およびパスワード共に辞書の使用が可能 |
モジュール構造 | プロトコルごとのモジュールが用意され、柔軟な拡張が可能 |
GUIでも使用可能 | xHydraも存在し、直感的な操作が可能 |
基本構文
bash
$ hydra -l admin -P passwords.txt ssh://192.168.0.10
オプション一覧
オプション | 概要 | 例 |
---|---|---|
-l | ユーザ名固定 | -l user01 |
-L | ユーザー辞書指定 | -l /SecLists/Usernames/Names |
-p | パスワード固定 | -p p@ssw0rd |
-P | パスワードファイル指定 | -P rockyou.txt |
-C | ユーザー名とパスワードがセットのファイル指定(user:pass 形式) |
-C combos.txt |
-t | スレッド指定(デフォルト:16) | -t 20 |
-s | サービスが使用するポート指定 | -s 2222 |
-S | SSL接続を使用(HTTPS、SMTP等) | -S |
-f | 最初にログインが成功した時点で攻撃を止める | -f |
-F | 全てのユーザー名に対して最初の成功したパスワードを見つけたら攻撃を止める | -F |
-o | 出力結果の保存 | -o output.txt
|
-v | 詳細な出力 | -v |
-V | 施行されるユーザー名とパスワードの組み合わせをすべて表示 | -V |
-x | パスワードを自動生成 | -x 3:5:aA1(3~5文字の小文字、大文字、数字を使用) |
-e | 空のパスワード(n)、ユーザー名と同じパスワード(s)、逆のパスワード(r)を試行 | -nsr |
-M | 複数のターゲットを含むファイルを指定 | -M targets.txt
|
攻撃例
sshに対してユーザー名がわかっているとき
bash
$ hydra -l admin -P passwords.txt ssh://192.168.0.10
webページに対してユーザ名がわかっているとき
bash
$ hydra -l user -P /usr/share/wordlists/rockyou.txt 192.168.10.1 http-post-form "/login:username=^USER&password=^PASS^:F=incorrect" -V
webへの攻撃の際、POSTデータを書き込みます。データの中では以下のような変数(?)を使う
^USER^ (ユーザー名)
^PASS^ (パスワード)
FTPに対してユーザ名パスワードの両方がわからないとき
bash
$ hydra -L users.txt -P passwords.txt ftp://192.168.1.100
SMTPに対してユーザ名パスワードの両方がわからないとき(Auth Login想定)
bash
$ hydra -L users.txt -P passwords.txt ftp://192.168.1.100
SMTPに対してユーザ名パスワードの両方がわからないとき(Starttls想定)
bash
$ hydra -L users.txt -P passwords.txt ftp://192.168.1.100
※smtp-auth:Hydraの内部モジュール名(TLSなしでAUTH LOGIN対応のSMTP)