crunch字典生成

密碼破解基本有三種方法:第一種是人工猜解(垃圾桶工程和被動信息收集);linux

第二種是基於字典暴力破解(主流)數組

在kali裏,是默認自帶了字典的,分別放在下面三個文件中:/usr/share/wordlistspa

/usr/share/wfuzz/wordlist.net

/usr/share/seclists,有一個passwordcode

第三種是鍵盤空間字符爆破排序

全鍵盤空間字符ip

部分鍵盤空間字符(基於規則)unicode

數字,小寫字母,大寫字母,符號,空格,瑞典字符,高位ASCII碼.字符串

在kali中咱們用crunch來製做密碼(注意生成字典的大小,當心撐爆磁盤! 以單純的8位大小寫英文+數組組合,生成的txt大概是1787 TB
):get

能夠經過圖形界面進入crunch目錄下面或者直接cd到/pentest/passwords/crunch,而後再執行製做字典操做。
進入crunch的安裝目錄下面能夠看到裏面有一個charset.lst文件,裏面定義了一些名詞 用於簡寫用於製做字典的字符
如:numeric 表示0123456789 Lalpha表示26位小寫字母 Ualpha表示26爲大寫字母
因此能夠在製做字典以前看一下該文件,這樣能夠簡寫命令
用法:
./crunch 6 6  0123456789 –o num6.dic//製做6位純數字字典
其中第一個6表示minnum密碼最小長度,第二個6密碼最大長度,若是二者同樣表示指定長度
-o表示輸出。
  ./crunch 8 8 charset.lst numeric –o num8.dic  //製做8位純數字字典 表示引用charset.lst中的名詞簡寫,其中numeric表示0123456789
./crunch 1 6 charset.lst ualpha –o test.dic     //製做1~6位純大寫字母字典  

具體案例:

crunch 1 8

#生成最小1位,最大8位,由26個小寫字母爲元素的全部組合

案例2:

crunch 1 6 abcdefg

#生成 最小爲1,最大爲6.由abcdefg爲元素的全部組合

案例3:

crunch 1 6 abcdefg\

#生成 最小爲1,最大爲6.由abcdefg和空格爲元素的全部組合(/表明空格)

案例4:

crunch 1 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt

#調用密碼庫 charset.lst, 生成最小爲1,最大爲8,元素爲密碼庫 charset.lst中 mixalpha-numeric-all-space的項目,並保存爲 wordlist.txt;其中 charset.lst在kali_linux的目錄爲 /usr/share/crunch/charset.lst, charset.lst中 mixalpha-numeric-all-space項目包含最多見的元素組合(即大小寫字母+數字+常見符號);

>想了解更多能夠cat /usr/share/crunch/charset.lst 查看全部密碼庫

案例5:

crunch 8 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt -t @@dog @@@ -s cbdogaaa

#調用密碼庫 charset.lst,生成8位密碼;其中元素爲 密碼庫 charset.lst中 mixalpha-numeric-all-space的項;格式爲「兩個小寫字母+dog+三個小寫字母」,並以cbdogaaa開始枚舉(@表明小寫字母)

案例6:

crunch 2 3 -f charset.lst ualpha -s BB

#調用密碼庫charset.lst,生成2位和3位密碼;其中元素爲密碼庫charset.lst中ualpha的項;而且以BB開頭

案例7:

crunch 4 5 -p abc

#crunch將會生成abc, acb, bac, bca, cab, cba,雖然數字4和5這裏沒用,但必須有

案例8:

crunch 4 5 -p dog cat bird

#crunch將生成以「dog」「cat」「bird」爲元素的全部密碼組合:birdcatdog,birddogcat,catbirddog,   catdogbird,  dogbirdcat, dogcatbird

案例9:

crunch 1 5 -o START -c 6000 -z bzip2

# 生成最小爲1位,最大爲5位元素爲全部小寫字母的密碼字典,其中每個字典文件包含6000個密碼,並將密碼文件保存爲bz2文件,文件名將以  "第一個密碼" + " - " + "最後一個密碼" + " .txt.bz2 " 保存(好比000-999.txt.bz2);下面是生成幾種格式的壓縮文件所用的時間和體積大小對比:

       # time ./crunch 1 4 -o START -c 6000 -z gzip

       real    0m2.729s

       user    0m2.216s

       sys     0m0.360s

      # time ./crunch 1 4 -o START -c 6000 -z bzip2

       real    0m3.414s

       user    0m2.620s

       sys     0m0.580s

  # time ./crunch 1 4 -o START -c 6000 -z lzma

       real    0m43.060s

       user    0m9.965s

       sys     0m32.634s

size  filename

       30K   aaaa-aiwt.txt

       12K   aaaa-aiwt.txt.gz

       3.8K  aaaa-aiwt.txt.bz2

       1.1K  aaaa-aiwt.txt.lzma

案例10:

crunch 4 5 -b 20mib -o START

# 生成最小爲4位,最大爲5位元素爲全部小寫字母的密碼字典,並以20M進行分割;這時會生成4個文件:aaaa-gvfed.txt,  gvfee-ombqy.txt,  ombqz-wcydt.txt, wcydu-zzzzz.txt:其中前三個大概每一個20M,最後一個10M左右(由於總共70M)

案例11:

crunch 4 4  + + 123 + -t %%@^

#生成4位密碼,其中格式爲「兩個數字」+「一個小寫字母」+「常見符號」(其中數字這裏被指定只能爲123組成的全部2位數字組合)。好比12f#      32j^    13t$    ......

案例12:

crunch 3 3 abc + 123 @#! -t @%^

#生成3位密碼,其中第一位由「a,b,c」中的一個;第二位爲「1,2,3」中的一個;第三位爲「!,@,#」中的一個。好比1a!   2a#      3b@   ......

案例13:

crunch 3 3 abc + 123 @#! -t ^%@

#生成3位密碼,其中格式爲「字符+數字+字母」,這裏字符範圍爲!@# ,數字範圍爲 1 2 3 , 字母範圍爲a b c

好比!1c    @3b       @2a       ......

案例14

crunch 5 5 -t ddd@@  -p dog cat bird

#生成5個元素組成的密碼,其中前三個爲 dog cat bird任意組合,後兩個爲兩個小寫字母的任意組合。好比birddogcatuz         catdogbirdab         birdcatdogff           ......

案例15:

crunch 7 7 -t p@ss,%^ -l a@aaaaa

#生成7位密碼,格式爲「字符p@ss」+大寫字母+數字+符號     好比  p@ssZ9>  ......

案例16:

crunch 5 5 -s @4#S2 -t @%^,% -e @8 Q2 -l @dddd -b 10KB -o START

#生成5位密碼,格式爲小寫字母+數字+符號+大寫字母+數字,並以 @4#S2開始,分割爲10k大小。。。

案例17:

crunch 5 5 -d 2@ -t @@@%%

#生成5位密碼,格式爲三個字母+兩個數字,並限制每一個密碼最少出現2種字母

案例18:

crunch 10 10 -t @@@^%%%%^^ -d 2@ -d 3% -b 20mb -o START

#生成10位密碼,格式爲三個小寫字母+一個符號+四個數字+兩個符號,限制每一個密碼至少2種字母和至少3種數字

案例19:

crunch 8 8 -d 2@

#生成8位密碼,每一個密碼至少出現兩種字母

案例20:

crunch 4 4 -f unicode_test.lst the-greeks -t @@%% -l @xdd

#調用密碼庫 unicode_test.lst中的 the-greeks項目字符,生成4位密碼,其中格式爲兩小寫字母+兩數字,一樣kali_linux中 unicode_test.lst 在/usr/share/crunch目錄

案例21:
字符集 crunch 4 4 -f /usr/share/crunch/charset.lst lalpha-sv -o 1.txt
案例22:
無重複字符:
crunch 1 1 -p 1234567890 | more   (10位數字顛倒位置,1 1 無效但必須存在)
必須是最後一個參數;
案例23
crunch 5 5 abc DEF + \!@# -t ,@^%,     (特殊符號只從!@#這三個選擇,加右斜線能夠\\)
案例24
crunch 5 5 -d 2@ -t @@@%%

看了這麼多案例再來看命令參數是否是有種豁然開朗的感受!

命令參數:

-b              #按大小分割字典文件,好比後跟20mib

-c              #密碼個數(行數),好比8000

-d              #限制出現相同元素的個數(至少出現元素個數),-d 3就不會出現zzfffffgggg之類的

-e              #定義中止生成密碼 ,好比-e 222222:到222222中止生成密碼

-f               #調用密碼庫文件,好比/usr/share/crunch/charset.lst

-i                #改變輸出格式

-l                #與-t搭配使用

-m              #與-p搭配使用

-o               #保存爲

-p               #定義密碼元素(最大最小長度失效,全部組合嘗試一遍,字符串加空格以字符串爲單位)

-q               #讀取字典(指定文本文件,最大最小長度失效,每行之間相互排序)

-r                #定義從某一個地方從新開始

-s                #第一個密碼,從xxx開始

-t                #定義輸出格式

        @表明小寫字母 lalpha

        ,表明大寫字母    ualpha

           %表明數字  numeric

           ^表明符號  symbols
         + 佔位符
          \ 轉義符(空格,負號)

-z                   #打包壓縮,格式支持 gzip, bzip2, lzma, 7z(壓縮率最大)

組合應用(不用把龐大的字典保存在硬盤上,生成一個密碼用一個,不過消耗的時間多,比較佔用cpu)

crunch 2 4 0123456789 | aircrack -ng a,cap -e MyESSID -w -

crunch 10 1012345 --stodout | airolib -ng testdlb -import passwd -    (最後面的-表示引用crunch生成的密碼)

相關文章
相關標籤/搜索