ハッカーはmedusaでパスワードをクラッキングする(Kali Linuxツール)

ホワイトハッカーの知識Kali Linuxツール,medusa,座学

Webアプリケーションファイアウォールが設置されているかを理解するためにまとめてみました。
この動作確認は自分のドメインでテストを行っています。

medusaとは

medusaとは様々なプロトコルのログイン認証情報をクラックできるハッキングツールです。
このツールは、ハッキングツールキットに加えたくなるような、シンプルかつ効果的なツールです。

機能

  • スレッドベースの並列テスト。複数のホスト、ユーザー、パスワードに対して同時にブルートフォーステストを実行できます。
  • 柔軟なユーザー入力。対象となる情報(ホスト/ユーザー/パスワード)は、さまざまな方法で指定できます。例えば、各項目は、単一のエントリまたは複数のエントリを含むファイルのいずれかにすることができます。さらに、組み合わせファイル形式では、ユーザーがターゲットリストを絞り込むことができます。
  • モジュール設計。各サービスモジュールは、独立した.modファイルとして存在します。つまり、ブルートフォースでサポートされるサービスのリストを拡張するために、コアアプリケーションに変更を加える必要はありません。
  • 複数のプロトコルをサポート。現在、多くのサービスがサポートされています(例:SMB、HTTP、POP3、MS-SQL、SSHv2、その他)。

ツールの場所

[Applications]→[05-Password Attacks]→[medusa]

ツールと使用方法

Medusa [-h host|-H file] [-u username|-U file] [-p password|-P file] [-C file] -M module [OPT]

例 medusa -u wp01 -h 192.168.56.2 -M ssh -p wpp01

【実行イメージ】少し端折って整形しています。

┌──(kali__kali)-[~]
└─$ medusa -u wp01 -h 192.168.56.2 -M ssh -p wpp01
Medusa v2.2 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks <jmk@foofus.net>

ACCOUNT CHECK: [ssh] Host: 192.168.56.2 (1 of 1, 0 complete) User: wp01 (1 of 1, 0 complete) Password: wpp01 (1 of 1 complete)
ACCOUNT FOUND: [ssh] Host: 192.168.56.2 User: wp01 Password: wpp01 [SUCCESS]

オプション

-h [TEXT]

Target hostname or IP address.
ターゲットのホスト名またはIPアドレス。

-H [FILE]

File containing target hostnames or IP addresses.
ターゲットのホスト名またはIPアドレスを含むファイル。

-u [TEXT]

Username to test.
テストするユーザー名 。

-U [FILE]

File containing usernames to test.
テストするユーザー名を含むファイル 。

-p [TEXT]

Password to test.
テスト用のパスワード 。

-P [FILE]

File containing passwords to test.
テストするパスワードを含むファイル 。

-C [FILE]

File containing combo entries. See README for more information.
コンボのエントリーを含むファイル。詳細はREADMEを参照してください。

-O [FILE]

File to append log information to.
ログ情報を付加するファイル。

-e [n/s/ns]

Additional password checks. ([n] No Password, [s] Password = Username)
追加のパスワードチェック。([n] パスワードなし、[s] パスワード=ユーザー名)

-M [TEXT]

Name of the module to execute. (without the .mod extension)
実行するモジュールの名前。(拡張子.modなし)

-m [TEXT]

Parameter to pass to the module. This can be passed multiple times with a different parameter each time and they will all be sent to the module. (i.e.-m Param1 -m Param2, etc.)
モジュールに渡すパラメータです。これは、毎回異なるパラメータで複数回渡すことができ、すべてのパラメータがモジュールに送信されます。(例:-m Param1 -m Param2 など)

-d

Dump all known modules
すべての既知のモジュールをダンプします。

-n [NUM]

Use for non-default TCP port number.
デフォルト以外のTCPポート番号に使用します。

-s

Enable SSL.
SSLを有効にする。

-g [NUM]

Give up after trying to connect for NUM seconds. (default 3)
NUM秒の間、接続を試みた後にあきらめる。(デフォルト3)

-r [NUM]

Sleep NUM seconds between retry attempts. (default 3)
再試行の間隔をSleep NUM秒とする。(デフォルト3)

-R [NUM]

Attempt NUM retries before giving up. The total number of attempts will be NUM + 1.
あきらめる前にNUM回の再試行を行います。合計の試行回数はNUM + 1となります。

-c [NUM]

Time to wait in usec to verify socket is available. (default 500 usec)
ソケットが利用可能かどうかを確認するための待ち時間をusecで指定します。(デフォルト 500 usec)

-t [NUM]

Total number of logins to be tested concurrently.
同時にテストされるログインの総数。

-T [NUM]

Total number of hosts to be tested concurrently.
同時にテストされるホストの総数。

-L

Parallelize logins using one username per thread. The default is to process the entire username before proceeding.
スレッドごとに1つのユーザー名を使用してログインを並列化します。デフォルトではユーザ名全体を処理してから処理を進めます。

-f

Stop scanning host after first valid username/password found.
最初に有効なユーザー名/パスワードが見つかった後、ホストのスキャンを停止します。

-F

Stop audit after first valid username/password found on any host.
任意のホストで最初に有効なユーザー名/パスワードが見つかった後、監査を停止します。

-b

Suppress startup banner.
スタートアップバナーを表示しない。

-q

Display module’s usage information.
モジュールの使用情報を表示します。

-v [NUM]

Verbose level. [0 – 6 (more)]
冗長レベル。0 – 6 (詳細)]

-w [NUM]

Error debug level..[0 – 10 (more)]
エラーのデバッグレベル [0 – 10 (more)] 。

-V

Display version.
表示バージョン。

-Z [TEXT]

Resume scan based on map of previous scan.
前のスキャンのマップに基づいて、スキャンを再開します。

medusaツールのまとめ

medusaツールのパラメータを見ると「url」が設定できるので、外部サイトにハッキングが出来そうですね。
自分の仮想のテスト環境で「johnツール」のパスワードのハッキングが30時間経っても終了しません。
パスワードのハッキングはスーパーコンピューターでも使用しないと答えがでないのかもしれません。

実践には役に立たないのかもしれませんね。