Hashcatは世界最速のパスワード解読ツールと呼ばれています。今日のこの記事では、いくつかの一般的に使用されるパラメータを抽出し、パスワード解読コマンドと組み合わせて、Hashcatを使用してパスワードを解読する方法を分析します。
hashcat は多数のパスワード タイプを解読できることがわかっています。约 210 種類のパスワードを解読でき、そのほとんどが hash です。hashcat でパスワードを解読するには、まずパスワードの形式を理解し、そのパスワードの hashcat での番号をパスワードの形式に従ってインデックス化する必要があります。
パスワード: digapis と塩値 asdf を例として、一部のハッシュ値の形式を示します。
| 番号 | 名前 | タイプ | example |
|---|---|---|---|
| 0 | MD5 | Hash, length 32 | 8713d75511bea7e0df78c6063dc778b0 |
| 1400 | SHA-256 | hash | aa106625c7de812d6118992a191ea4627e2457fa80bf6ec06f9c60cbf8e5260f |
| 1700 | SHA-512 | hash | 23afac4524f62ea4d941ca4933249b2b78d19069773266abc36d6fd17a6fbe2f4ccc834acc868358ba32ddca553611218a2865f975339fe45d38cc1999f84b5e |
| 10 | MD5($pass.$salt) | パスワードに塩を加えてから MD5 を実行します。パスワードは | 48985c61e2581c3f9ee5f1cfb775afbc:asdf |
| 20 | MD5($salt.$pass) | 塩前 | 4fa1dd606353e055fed67d9812bddf35:asdf |
| 2600 | MD5(MD5($pass)) | パスワードを2回MD5 | 98177c3f36af4a3f77f5b87594e6cf6a |
| 3710 | MD5($salt.md5($pass)) | パスワードを1回MD5変換し、前に塩を加えて、もう一度MD5 | 88a535877ec21b8786775a7074e4de4c:asdf |
| 4400 | md5(sha1($pass)) | パスワードを1回sha1変換し、もう1回MD5 | ec7bf3099984001a2b0f37ba5d1d68fa |
| 4500 | sha1(sha1($pass)) | 略 | 005a41cfe16c9a5556c7a5cdd5f1958991f2e031 |
| 1460 | HMAC-SHA256(key=$salt) | 略 | d684ab7c38ddc262f215328334c4d0273cef10d6c5e61988f5cc87fcab8a7a60:asdf |
| 11500 | CRC32 | 略 | 4C244A19:00000000 |
-a コマンドは攻撃モードを指定できます。hashcat でパスワードを解読するには、パスワードの番号を知っているだけでは不十分であり、hashcat でパスワードを解読する攻撃モードを選択する必要があります。
Hashcat4.0.1 には 5 つの攻撃モードがあり、それぞれに特徴があります。
| 番号 | 攻撃パターン | 意味 |
|---|---|---|
| 0 | ストレート | 直接攻撃モード |
| 1 | Combinstion | コンビネーション攻撃モード |
| 3 | Brute-force | 爆発力クラックモード |
| 6 | ハイブリッドワードリスト+マスク | 辞書+マスクの組み合わせ |
| 7 | Hybird Mask+Wordlist | マスク+辞書の組み合わせ |
これら 5 つの攻撃モードでは、パスワードを解読するために辞書を使用できます。ブルース クラッキングを使用して、可能なすべてのパスワードをトラバースしたり、辞書とマスクを組み合わせてパスワードを解読したりすることもできます。攻撃モードが異なれば、hashcat コマンドで使用されるパラメータは異なります。例として、hashcat が辞書ファイルを使用してパスワードを解読する方法を学びます。同僚は他のパラメータの使い方も織り込んでいます。
直接攻撃モードは、単一の辞書ファイルまたは複数の辞書ファイルを使用して復号化することができます。辞書とルールファイルを組み合わせることで、パスワードブラストをより効率的にすることもできます。
hashcat -a 0 –m 0 mima.txt –o outfile dic.txt
-a は攻撃パターンを直接攻撃として指定し、-m はハッシュタイプを MD5 として指定し、-o は解読されたパスワードを outfile に書き込みます。
二重辞書攻撃も直接攻撃モードでの状況であり、辞書ファイルを使用してパスワードを破壊するときに、2つの辞書ファイルがロードされます。これで辞書ファイルのスペースが広がります。
マルチディクショナリー攻撃は、複数の辞書ファイルを同時にロードすることを利用します。次のコマンドは 3 つの辞書を使用して辞書攻撃を行い、3 つの辞書を順番にロードして爆破します。コマンド内のdic.txtはブラストで使用される辞書ファイルです。
辞書ディレクトリ攻撃を使用すると、辞書ディレクトリ内の複数の辞書ファイルが直接攻撃に使用されます。ディレクトリは、直接攻撃中に辞書ディレクトリ内の複数の辞書ファイルを順次ロードします。次のコマンドの dic は、複数の辞書ファイルがあるフォルダです。
-r/--rule-file コマンドは、ルールファイル内の复数のルールを辞书内の各ワードに适用します。ルールファイルは自分で生成することも、hashcatに付属しているルールファイルを使用することもできます。hashcatに付属するルールファイルは通常、rulesフォルダの下にあります。ルール フォルダ内のルール ファイルは次のとおりです。
辞書 + ルール攻撃では、単一の辞書、複数の辞書、または辞書ディレクトリを使用してルール ファイルと組み合わせてパスワード ブラストを実行できます。実際には直接攻撃タッチとルールファイルを組み合わせる形式です。
いわゆるルールは、候補パスワードを生成するプログラミング言語に似ており、条件演算子に従って単語を変更、切り取り、拡張したり、いくつかの操作をスキップしたりできます。これにより、より柔軟かつ効率的に攻撃を行うことができる。
ルール攻撃は、二重辞书、复数辞书、さらには辞书ディレクトリと组み合わせて使用できます。使い方はシングル辞書+ルール攻撃と似ています。
-o パラメータの後にファイルを使用し、解読されたパスワードを -o コマンドを通じて指定されたファイルに入力します。デフォルトの保存形式は hash:plain です。このコマンドの使用例は前にあります。上の図を見てください。
このコマンドは、outfile ファイルの出力形式を指定できます。Outfile ファイルには 15 の出力モードがあります。
Outfile-format=1 解読された暗号文ハッシュのみを出力します。
Outfile-format=2、解読されたパスワードの平文のみを出力する。
-o パラメータで出力するだけでなく、パラメータ remove を通じて暗号文ファイル内の解読済みのパスワードをフィルタリングし、解読できないパスワードだけを残すこともできます。これにより、後続のパスワード解読時に、重複作業を減らすことができる。
解読されたパスワードの数が比較的多い場合、または辞書ファイルが非常に大きい場合、次のオプションが表示されます。キーボード入力 S は画面に次のステータスを印刷し、このステータスを通じて現在のパスワード解読の進行状況を確認できます。
現在のパスワード解読の進行状況を確認するたびに S を入力するのは面倒です。これは、ステータス パラメータを使用して画面を自動的に更新することができます。ステータス画面。自分で行うべき操作を減らすことで、誤ったタッチを減らすこともできます。
は、statusパラメータhashcatを用いて画面ステータスを自動更新するほか、--status-timerパラメータを用いてステータス画面更新の間隔を設定することもできる。
Hashcatにおける直接攻撃モードの使い方は、だいたい以上の内容です。hashcat に興味がある場合は、hashcat の Web サイトに直接アクセスすることもできます。そこには、hashcat のコマンド パラメータと各攻撃パターンの詳細があります。
記事は丁牛ネットワークセキュリティ実験室
から転載されました。