1. 程式人生 > >谷安kali密碼破解小結(crunch字典生成)

谷安kali密碼破解小結(crunch字典生成)

密碼破解基本有三種方法:

第一種是人工猜解(垃圾桶工程和被動資訊收集);
第二種是基於字典暴力破解(主流)
在kali裡,是預設自帶了字典的,分別放在下面三個檔案中:/usr/share/wordlist
/usr/share/wfuzz/wordlist
/usr/share/seclists,有一個password

第三種是鍵盤空間字元爆破
全鍵盤空間字元
部分鍵盤空間字元(基於規則)
數字,小寫字母,大寫字母,符號,空格,瑞典字元,高位ASCII碼.
在kali中我們用crunch來製作密碼(注意生成字典的大小,小心撐爆磁碟! 以單純的8位大小寫英文+陣列組合,生成的txt大概是1787 TB 

):
可以通過圖形介面進入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#      [email protected]   ......


  

案例13: 

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


#生成3位密碼,其中格式為“字元+數字+字母”,這裡字元範圍為!@# ,數字範圍為 1 2 3 , 字母範圍為a b c


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


  

案例14 

crunch 5 5 -t [email protected]@  -p dog cat bird


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


  

案例15: 

crunch 7 7 -t [email protected],%^ -l [email protected]


#生成7位密碼,格式為“字元[email protected]”+大寫字母+數字+符號     比如  [email protected]>  ......


  

案例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 [email protected] -t @@@%% 

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


  

案例18: 

crunch 10 10 -t @@@^%%%%^^ -d [email protected] -d 3% -b 20mb -o START


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


  

案例19: 

crunch 8 8 -d [email protected] 

#生成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 + \[email protected]# -t ,@^%,     (特殊符號只從[email protected]#這三個選擇,加右斜線可以\\)
案例24 
crunch 5 5 -d [email protected] -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生成的密碼)
--------------------- 
作者:俠客島的含笑 
來源:CSDN 
原文:https://blog.csdn.net/qq_33936481/article/details/51277679 
版權宣告:本文為博主原創文章,轉載請附上博文連結!