web-dev-qa-db-ja.com

hashcatを使用したBruteforce、マスクを適切に設定する方法は?

私がこのタイプのハッシュを持っているとしましょう:

test::::4e45c7bab093d7011e9b3a5df7d9fa88212beac5ac9c8c47:d6ff3373aa353f3b:123456

ハッシュキャットを使ってブルートフォースにしたいのですが、正しいマスクを設定できません。

これが私が実行しているものです:

hashcat -m 5500 test.txt -a 3 $MASK

今のところ正しいですか?その場合、$MASKを適切に設定するだけで済みます。

1つのマスクは次のようになります。

length min = 8 characters
length max = 20 characters
must contain at least one lower case character (a-z)
must contain at least one upper case character (A-Z)
must contain at least one number (0-9)

2番目のマスクは、前のマスクとこれら2つの制約に加えて、次のようにする必要があります。

must contain at least one special character
must NOT contain one or more identical consecutive characters

追伸Crackstationの巨大な辞書(15GB)をダウンロードし、多くのハッシュで動作しなかったため、辞書攻撃を使用していません。

ありがとう。

9
MeaMelone

このような複雑さのルールは、単一のマスクでネイティブにキャプチャすることはできません。代わりに、基準に一致する多くのマスクのリストを the policygen tool from PACKツールキット などの他のツールを使用して生成する必要があります。

$ policygen --minlength=8 --maxlength=20 \
  --mindigit=1 --minlower=1 --minupper=1 --maxspecial=0 -o test1.masks

$ policygen --minlength=8 --maxlength=20 \
  --mindigit=1 --minlower=1 --minupper=1 --maxspecial=1 -o test2.masks

(これらの例には、「1つ以上の同一の連続した文字」制約が含まれていないことに注意してください。A)これにより、マスクの複雑さが大幅に増加し、ほとんど不可能になり、B)高速化がほとんど行われなくなります。クラッキングプロセスなので、含める価値はありません。)

次に、マスクを含むそのファイルにhashcatを渡します。

hashcat -m 5500 -a 3 test.txt test1.masks
hashcat -m 5500 -a 3 test.txt test2.masks

ただし、ブルートフォースを長くする(20はもちろん12にするなど)には、通常よりも時間がかかることに注意してください。まだ行っていない場合は、ブルートフォースに頼る前に、他の方法(辞書、ハイブリッドなど)を試すことをお勧めします。

7
Royce Williams