パスワードクラッカーHydraの使い方とその実例

Hydraのイラストネットワーク

システムガーディアン株式会社が主宰する「ゆるいハッキング大会」。以前から気になっておりつい先日申し込みをしました。

 

どうやら nmap や hydra を用意しておくといいとのことでしたので、その予習という意味で今回私なりまとめてみました。

 

ちなみに「Hydra」の読み方は “ハイドラ” [ háidrə ]です
スポンサーリンク

Hydraの書式

 

hydra (オプション) (ターゲットのサーバ名 or IPアドレス) (サービスやプロトコル名)

 

( ) は便宜上つけているだけで、実際にタイプする時は括弧はつけなくて大丈夫です。

 

最後にある ”サービス名” や ”プロトコル名” に指定できるものとしていくつか挙げておきます。
  • cisco
  • ftp
  • http[s]
  • mysql
  • ssh
  • pop3[s]

 

その他にもかなりあるので気になる方は Penetration Testing Tools を見てくだせぇ。

 

Hydraのオプション

先ほどと同様に ( ) をつけている部分がありますが実際には打ち込みませんのでご注意を。

-e nsr

e の横にある文字の有無で次の指定ができます。

  • n … パスワードは無しで
  • s … ユーザー名をパスワードとする
  • r … ユーザー名を逆にしてパスワードとする

 

例えば 「-e s」 とすれば、ユーザー名とパスワードが同じであるようなアカウントに対して効果的ということですね。

覚えやすいようにユーザー名とパスワードを同一のものにするのはやはり危険!

 

-l (ユーザー名) または -L (ファイル名)

ログインに必要となる “ユーザー名” をこれで指定します。

大文字の -L の後に「ユーザー名一覧ファイル」 のファイル名を指定できますよ。

 

-p (パスワード) または -P (ファイル名)

ログインに必要となる “パスワード” を指定します。

上と同様に考えて、大文字 -P の後に「パスワード一覧ファイル」のファイル名(すなわちパスワードの辞書ファイルだ!)を指定できます。

 

-o (出力先ファイル名)

ここで指定したファイルに解析結果のユーザー名とパスワードを出力します。

後でやる実例で -o オプションを使って解析結果をファイルに出力してみます!

 

-R

何らかの原因で解析が中断してしまっても、このオプションを指定しておくと前回の途中から再開できる!ってやつです。

パスワード解析をまた一からやると時間かかってしまいますし、何しろ精神的に萎えます。

 

-s (ポート番号) 

ポート番号を指定する必要があったらこのオプションを使いましょ。

 

-t (タスク数)

一度に実行する ”タスク数” をこれで指定します。

小さい値を指定すれば時間はかかりますがパスワードの解析が安定して行われます。

 

例えばサービスに ssh と指定する場合、SSHは一度に実行するタスク数が多いと警告が出てしまい怪しまれるので、そのような時に-t オプションであえて小さい数を指定するという使い方ができますね!

SSH (Secure Shell) … ネットワークを通じて他のコンピュータを遠隔操作するためのソフトウェア。

-S

SSL接続をします。

SSL (Secure Sockets Layer) … 暗号化したデータを送受信するためのプロトコル。

-V

このオプションをつけることで、試行しているユーザー名とパスワードが表示されるようになります。

 

-x (最小桁数) : (最大桁数) : (文字の種類)

”brute force attack” をする際の「パスワードをどうやって生成するか?」をこのオプション -x で指定できます。

 

「最小桁数」と「最大桁数」は生成するパスワードの桁数です。「文字の種類」とは次の3種類が指定可能です。

  • a … 小文字のアルファベット
  • A … 大文字のアルファベット
  • 1 … 数字

 

その他の記号は -x 2:6:aA%/ みたいな感じで後ろに直接書きます。

brute force attack はパスワードを片っ端から当てはめてゆく方法ですが、そもそもログインしないとそれができません。
なのでユーザー名を指定するオプション -l もしくは -L が必要になります。
それをすっかり忘れてやったら次のようにエラーが出ました😅。
“I need at least either the -l, -L or -C option to know the login”
brute foce attack
その後きちんとオプションを設定して再度コマンドを打ち込んだのですが、仮想環境上で動作がそれなりに重たいこともあり解析にかなりの時間がかかってしまったので途中で断念しました。

実際にHydraを使ってパスワードクラックしてみよう!

次のような設定で行っていきます。

  • ターゲットのIPアドレス → 10.0.0.5
  • ターゲットのサービス → ftp
  • ユーザー名一覧ファイル → user.lst
  • パスワード一覧ファイル → pass.lst

 

ただターミナルで Hydra のコマンドを打ち込んだら勝手に Hydra が起動しました。

 

Hydraうまくいった例

色付きでわかりやすい!

 

-o オプションでこの解析結果を result.lst に出力しておきました。resutl.lst の中身はこんな感じです👇

出力結果

 

シンプルで見やすいですね。

 

次に -V オプションでユーザー名とパスワードを表示するようにしてみました。その結果…

 

Vオプション

 

ずらずらずらずらと…たくさん出てきましたね。

 

上では紹介しませんでしたが、ここで新たなオプション -u を使ってみたいと思います。

このすぐ上の画像でやったコマンドに -u を付け足してみます。

 

Uオプション

 

よ〜く見てみると -u オプションの効果が出ているのがわかります。

 

-u を付けない場合は、一つのユーザー名を固定して、全てのバスワードを試し終わったら次のユーザー名で再び試行しています。

 

それに比べ -u を付けた場合は、ユーザー名ではなく、パスワードを固定して各ユーザー名で試行しています。そしてそのパスワードでやり終わったらまた次のパスワードで各ユーザー名に対して試行するという形です。

 

なので、今回のようにユーザー名がいくつかある時は、この -u オプションを使って時間短縮をはかると効率的ですね。

 

参考書籍

 

『ハッキング・ラボのつくりかた』著:IPUSIRON(翔泳社)

 

『ハッカーの学校』著:IPUSIRON(DATAHOUSE)

 

That’s all for today !

以上

簡単に Hydra をまとめてみました。すみません画像の読み込みが遅かったですかね。

「ゆるいハッキング大会」けっこう楽しみにしてます。

 

 

 

コメント

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