には、パスワードがabcdabcdパターンであり、辞書にabcdabcdがないなどの問題に遭遇することがあります。生成すると、膨大なスペースを占有します。abcdを介してabcdabcdを生成する方法はありますか?hashcatでは、もちろん実現可能ですが、このセクションでは、辞書複合攻撃モード(引数は-a 1)について説明します。
に、簡単な例を使って-a 1の意味を説明し、パターンの複雑な適用についてステップバイステップで説明します。
hashcat a1 m0 mima.txt o outfile dic.txt dic.txt
このコマンドの意味は、dic.txtという辞書を使って、組み合わせてmima.txtを解読することであり、dic.txtが次の図のような辞書であれば
、このコマンドの組み合わせ後の新たなmima.txtを解読する辞書は
、dic.txtの各行が自分自身と組み合わせて新たな辞書を形成することである。
に紹介した同じ辞書の組み合わせは、異なる辞書であれば、hashcatもサポートしており、コマンドを使用して
dic 1.txtのすべての行とdic 2.txtのすべての行を組み合わせて、mima.txtの辞書を作成します。
どのような状況で組み合わせたモデルを使用するか。組み合わせモードは、一般的に、ユーザーパスワードが明らかに2つの段落に分かれている場合には、abcd1234、asdfasdf、aaa19770101、...などの場合、パスワードは明らかに前の段落と後の段落に表示されます。
モードでは、現在、hashcatは2つの辞書(または同じ辞書を2回)の組み合わせしかサポートできず、複数の辞書(3つ以上の辞書)や同じ辞書を3回以上使用することはできません。
つまり、次のコマンドは误っている
hashcat a1 m0 mima.txt ooutfile. txt. txt
hashcat a1 m0 mima.txt ooutfile 1.txt 2.txt 3.txt
2コンポードでは、カタログに対してもサポートされない(前述のでは、-a 0というモードでは、カタログ全体をサポートしている)、つまり次の2つのケースも不可能である。
hashcat a1 m0mima.txt ooutfile/dic/
hashcat a1 m0mima.txt ooutfile /dic/*.txt
3時間効性の問題
組合せモードを使用する場合、辞書が大きい場合、例えば2つの辞書が10,000,000であると、組合せの空間は10,000,000,000個となり、10,000,000個の辞書(1つの辞書あたり10,000,000個)の攻撃に相当すると、空間は大きすぎて、さらに多くの重複が発生する可能性があり、カバレッジは増加するが、時間効性は高くない。
ブルートフォースクラッキングとは、定義の通り、指定された平文空間をブルートフォースで枯渇させることであり、仕方のない方法である(枯渇空間を縮小することはできないため)。
暴力的な解決について正式に話す前に、空間の枯渇について話しましょう。一般的な小文字+数字を例にとると、パスワードの長さが4の場合、その空間は36**4= 167 9 616で、大きくないように見え、しばらくして出てきます。パスワードの長さが8の場合、その空間は36**8= 282 110990 7456で、解決時間が1000,000,000(10億回/s)の場合、解決時間は約2820秒、約47分で、まだ耐えられるようです。パスワードの長さが10の場合、その空間は36**10= 36561584400 62976となり、解決時間が1000,000(10億回/秒)の場合、解決時間が1000時間を超えてしまい、受け入れられなくなります。
hashcatにはブルートフォースモード(パラメータを― a 3と表す)には様々な種類があるので,以下では,それぞれを述べる.
hashcatには、l(小文字26個)、u(大文字26個)、d(数字 10個)、h(小文字16進文字)、H(大文字16進文字)、s(特殊文字31)、a(l、u、d、sの95文字のコレクション)、b(バイナリ
例
(1)小文字の6ビット空間を使い果たした場合、コマンドは次のようになります。
(2)文字の8ビット空間を使い果たした場合、
コマンドは次のようになります。(3)4-6ビットの範囲の数値空間を使い果たした場合、コマンドは次のようになります。
ここで、引数--inrcement--increment-min 4---inrcement--increment-max 6を追加して、使い果たした長さの最小値と最大値を示します。
での組み合わせモードは、(-a 1)モードではなく、枯渇モードでの組織モードです。
(
1)パスワードの範囲が尽きており、パスワードの長さが6であると推定され、最初のビットがフル文字セット、2番目が小文字、3番目が大文字、4番目、5番目、6番目がフル文字セットである場合、コマンドは次のモードを使用できます:
(2)以下にいくつかの組み合わせモードがあり
ます。パスワードの範囲が大文字小文字+数字で、長さが6の場合、コマンドは次のようになります:
ここで-1を使用します。l)��u dは大文字と小文字のアルファベット+数字を表します
bis:範囲が6桁で、最初と4桁が大文字と小文字+数字、2桁目が大文字と小文字、3桁目と5桁目が大文字+数字、6桁目が数字の場合、コマンドは次のようになります。
もちろん、最小長と最大長を指定することもできます。下の図に示すように
の前に、hashcatには8種類の文字セットが組み込まれていることを紹介しましたが、ユーザーが必要とする文字セットがこれらの8種類の中にない場合はどうなりますか?どうする?Hashcatには、カスタムブルートフォース攻撃モードも豊富に用意されています。
hashcat hコマンドを使用すると、次のような使用パターンが定義されていることがわかります。以下のように
、我々は1つのインスタンスを通して説明します。
(1)パスワードの長さが8ビットである場合、各ビットは“0123456789aqwcfhj,. <>=-_+"で構成すると、次のようなコマンドが使用できる。
これらの文字は、以下のコマンドを使用してchar.txtのようなファイルに書くこともできます。
(2)パスワードの長さが8ビットの場合、1桁目、3桁目、6桁目が“435 4 5 yt”、2桁目と4桁目が“345 dfv-=_+”、5桁目と7桁目が“9 vjnbbf-brg”、8桁目が“345 fkfgggh”の場合、以下のコマンドを使用できます。
これらの文字は、以下のコマンドを使用して、char1.txt、などの別のファイルに記述することもできます。
注意:コマンドラインで特別な意味を持つシンボルもありますので、文字セットに特別なシンボルがある場合は、ファイル形式で記述するのが最善です。
(3)(2)に基づいて、最小長と最大長を4-8ビットのように増やす。以下のコマンドが使用できます。
の記事では、いくつかのパラメータの使用方法を紹介しましたが、今日は一般的に使用されるパラメータを紹介します。前回
の記事では、hashcat暗号解読の結果を特定の形式でファイルに出力するためのファイル出力関連コマンド(-o/--outfile-format)について説明しました。しかし、hashcatの実行中に、hashcatが解読したパスワードは表示されません。hashcatで作業すると、hashcatが解読したパスワードを直接画面に印刷することができ、より直感的で便利になります。hashcatには、hashcatの結果を画面に出力するためのパラメータがいくつかあります。
コマンドは、potファイルにキャッシュされた解読済みハッシュとパスワードを画面ウィンドウに出力します。
コマンドはhashcatが解読していないハッシュ値を画面に出力
コマンドは暗号解読を行いませんが、暗号解読に使用した辞書の内容を表示します。
Hashcatコマンドの数を要約し、異なるパラメータの違いは非常に大きく、hashcatの機能と役割を十分に発揮したい場合は、異なるコマンドを試してみて、hashcatの異なるコマンドの組み合わせに慣れることをお勧めします。hashcatパラメータの機能については、hashcatオンラインヘルプ(-h)を参照することができます。