如何使用 crunch 在 Kali Linux 上產生自訂單字列表
Kali Linux 充滿了無數的工具來幫助進行安全測試。單字表在各種網路安全測試和密碼相關任務中發揮著至關重要的作用。
利用 Linux 作業系統中的「crunch」指令,使用者可以產生一系列可以在安全測試過程中實施的各種類型的單字清單。因此,熟練這個命令將被證明是對一個人的技術專長的非常理想的增強。在本文中,我們將深入研究在 Kali Linux 上有效安裝和使用「crunch」命令來產生單字清單的過程。
如何在 Kali Linux 上安裝 crunch
Kali Linux 通常在其標準安裝包中包含 crunch 命令。但是,如果它不存在,人們可以透過系統的官方儲存庫取得並安裝它,方法是先使用以下命令更新它們:
sudo apt update
安裝 crunch 套件:
sudo apt install crunch
如何在 Linux 上使用 crunch 指令
要了解有關緊縮的更多信息,請運行:
crunch -h
本文簡要概述了與「crunch」命令相關的功能和語法結構,並用簡潔的術語描述了其基本元素。
若要全面且複雜地了解「crunch」指令的功能和可用選項,請查閱其手冊頁,或透過執行下列查詢透過命令列請求協助:
man crunch
基本的 crunch 語法
crunch 指令的基本結構可以描述如下:
crunch <min> <max> [options]
最小值和最大值是定義 Crunch 產生的字元序列範圍的兩個參數。具體來說,“min”表示期望輸出的最小可能長度,而“max”表示最大可能長度。這些值可以根據需要進行調整,以獲得針對任何給定目的或上下文的更合適的結果。
為了確保統一的字元長度,建議為所需的單字清單類型建立相同的最小和最大值設定。 Crunch 指令提供了廣泛的選項來產生根據特定要求自訂的各種樣式的單字清單。
若要使用 Python 產生包含由字母字元「a」、「b」和「c」形成的三個字母字串的每個組合的列表,請執行下列程式碼片段:
crunch 3 3 abc
使用 crunch 指令設定字元範圍
為了創建個人化單字列表,可以建立特定的字元子集,例如字母數字字元、特殊字元或其任意組合。舉例來說,如果您希望產生一組由小寫字母組成的長度為 4 到 6 個字元的單詞,只需執行以下命令:
crunch 4 6 abcdefghijklmnopqrstuvwxyz
若要建立僅包含數值的列表,請執行下列命令:
crunch 10 10 0123456789
您可以選擇確定輸入的字元數。
使用 crunch 將單字清單輸出到文件
您可以使用“-o”標誌後跟所需的輸出檔名來指定您希望儲存結果單字列表的位置。為了產生包含四字元序列「abc123」的所有可能組合的列表,然後將此集合儲存到名為「wordlist.txt」的檔案中,只需在終端機或命令提示字元中執行以下命令:
crunch 4 4 abc123 -o wordlist.txt
在 crunch 指令中使用暴力模式
「-b」選項使用戶能夠指定特定的字元集以進行暴力破解,這通常與透過組合預定字長範圍內的字元來產生單字清單的過程結合使用。
「-b」模式比其對應模式表現出更廣泛的範圍,因為它透過產生字元排列來建構單字列表,從而涵蓋給定基本集中的每種可能的組合。
crunch 6 6 -b 1234567890abcdef -o bruteforce.txt
產生包含字串“abcd”的每個潛在排列的綜合列表
使用組合模式與緊縮
使用“-c”選項可以產生從各種字元組(通常稱為“集”)派生的字元組合。
crunch 8 8 -c 1@% -o combinations.txt
給定的命令會產生一個按字母順序排列的單字列表,其中包含大寫和小寫字母以及某些特殊字元“@”、“%”和“!”。產生的單字清單儲存為「combinations.txt」。
使用 crunch 建立具有自訂模式的單字列表
使用“-t”命令列參數可以根據自訂的模板產生單字清單。
crunch 8 8 -t MyPass@@@@ -o unique.txt
目前指令產生一個單字列表,用“MyPass”表示,其中隨機字元替換“@@@@”,用作生成序列的佔位符。產生的單字集合儲存在名為「unique.txt」的檔案中。
產生的單字清單將包含符合指定模式的單字。具體來說,它將包含以“MyPass”開頭的單詞,後面跟著從預定字符集提取的四個不同字符的序列,在這種情況下,其對應於包含所有字母數字元素的標準字符集。
在某些情況下,採用符合特定結構或設計用於驗證遵循可辨別模式的密碼的客製化單字清單可能是有利的。為了增強登入憑證的安全性並阻止未經授權的存取嘗試,必須時刻注意創建強密碼時常見的典型錯誤。
使用字典模式建立單字列表
利用「-d」標誌使用戶能夠使用外部字典檔案作為單字儲存庫,作為透過命令列工具產生單字清單的基礎。
crunch 6 6 -f /usr/share/dict/words -o dictionary-list.txt
在這種情況下,指令透過利用預定義詞彙(稱為「字典檔案」)來建立由六個字元組成的單字列表,然後將編譯結果儲存在名為「dictionary-list.txt」的檔案中。
使用 crunch 產生不重複字元的單字
要建立不含重複字元的詞位列表,使用帶有“-p”標誌的“crunch”命令列工具可能被證明是一種有效的策略。具體來說,此選項規定,透過消除各個單字之間的字母重複,產生的詞彙表必須在其組成字元方面表現出奇異性。
若要建立不包含任何重複字元的六字母單字列表,請使用以下命令:
crunch 6 6 -p ABCDEF -o non-repeating-words.txt
上述操作產生一個僅由字母字元「A」到「F」組成的數組,沒有任何重複出現的符號,然後將其儲存到名為「non-repeating-words.txt」的文字文件中。
將 Crunch 指令與其他 Linux 指令一起使用
事實上,Linux 領域存在大量命令,使人們能夠根據個人喜好產生高度客製化的單字清單。關鍵在於熟悉這些命令並理解它們各自的功能。
將 crunch 指令與其他 Linux 實用程式(例如 grep、sort、wc 和 Hydra)結合使用,可以對單字清單進行過濾、排序和計數,同時還可以執行字典攻擊。