Kali Linux 秘籍 第八章 密碼攻擊

第八章 密碼攻擊

作者:Willie L. Pritchett, David De Smet

譯者:飛龍

協(xié)議:CC BY-NC-SA 4.0

這一章中,我們要探索一些攻擊密碼來(lái)獲得用戶賬戶的方式。密碼破解是所有滲透測(cè)試者都需要執(zhí)行的任務(wù)。本質(zhì)上,任何系統(tǒng)的最不安全的部分就是由用戶提交的密碼。無(wú)論密碼策略如何,人們必然討厭輸入強(qiáng)密碼,或者時(shí)常更新它們。這會(huì)使它們易于成為黑客的目標(biāo)。

8.1 在線密碼攻擊

這個(gè)秘籍中我們會(huì)使用 Hydra 密碼破解器。有時(shí)候我們有機(jī)會(huì)來(lái)物理攻擊基于 Windows 的計(jì)算機(jī),直接獲取安全賬戶管理器(SAM)。但是,我們也有時(shí)不能這樣做,所以這是在線密碼攻擊具有優(yōu)勢(shì)的情況。

Hydra 支持許多協(xié)議,包括(但不僅限于)FTP、HTTP、HTTPS、MySQL、MSSQL、Oracle、Cisco、IMAP、VNC 和更多的協(xié)議。需要注意的是,由于這種攻擊可能會(huì)產(chǎn)生噪聲,這會(huì)增加你被偵測(cè)到的可能。

準(zhǔn)備

需要內(nèi)部網(wǎng)絡(luò)或互聯(lián)網(wǎng)的鏈接,也需要一臺(tái)用作受害者的計(jì)算機(jī)。

操作步驟

讓我們開(kāi)始破解在線密碼。

  1. 在開(kāi)始菜單中,選擇Applications | Kali Linux | Password Attacks | Online Attacks | hydra-gtk。

  2. 既然我們已經(jīng)把 Hydra 打開(kāi)了,我們需要設(shè)置我們的單詞列表。點(diǎn)擊Passwords(密碼)標(biāo)簽頁(yè)。我們需要使用用戶名列表和密碼列表。輸入你的用戶名和密碼列表的位置。同時(shí)選擇Loop around users(循環(huán)使用用戶名)和Try empty password(嘗試空密碼)。

    • 用戶名列表:/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/names/nameslist.txt
    • 密碼列表:/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/passwds/john.txt

    你可以使用的快捷方式是,點(diǎn)擊單詞列表框來(lái)打開(kāi)文件系統(tǒng)窗口。

  3. 下面,我們要做一些調(diào)整。在Performance Options(執(zhí)行選項(xiàng))下面,我們將任務(wù)數(shù)量從 16 設(shè)置為 2。原因是我們不打算讓這么多進(jìn)程運(yùn)行,這樣會(huì)使服務(wù)器崩潰。雖然它是可選的,我們也希望選擇Exit after first found pair(在首次發(fā)現(xiàn)匹配之后退出)選項(xiàng)。

  4. 最后,我們要設(shè)置我們的目標(biāo)。點(diǎn)擊Target(目標(biāo))標(biāo)簽頁(yè)并設(shè)置我們的目標(biāo)和協(xié)議。這里,我們使用 Metasploitable 主機(jī)(192.168.10.111)的 MySQL 端口。

  5. 最后我們點(diǎn)擊Start(開(kāi)始)標(biāo)簽頁(yè)的Start按鈕來(lái)啟動(dòng)攻擊。

工作原理

這個(gè)秘籍中,我們使用 Hydra 來(lái)對(duì)目標(biāo)執(zhí)行字典攻擊。Hydra 允許我們指定目標(biāo),并且使用用戶名和密碼列表。它會(huì)通過(guò)使用來(lái)自兩個(gè)列表的不同用戶名和密碼組合來(lái)爆破密碼。

8.2 破解 HTTP 密碼

這個(gè)秘籍中,我們將要使用 Hydra 密碼破解器來(lái)破解 HTTP 密碼。網(wǎng)站和 Web 應(yīng)用的訪問(wèn)通常由用戶名和密碼組合來(lái)控制。就像任何密碼類型那樣,用戶通常會(huì)輸入弱密碼。

準(zhǔn)備

需要內(nèi)部網(wǎng)絡(luò)或互聯(lián)網(wǎng)的鏈接,也需要一臺(tái)用作受害者的計(jì)算機(jī)。

操作步驟

讓我們開(kāi)始破解 HTTP 密碼。

  1. 在開(kāi)始菜單中,選擇Applications | Kali Linux | Password Attacks | Online Attacks | hydra-gtk。

  2. 既然我們已經(jīng)把 Hydra 打開(kāi)了,我們需要設(shè)置我們的單詞列表。點(diǎn)擊Passwords(密碼)標(biāo)簽頁(yè)。我們需要使用用戶名列表和密碼列表。輸入你的用戶名和密碼列表的位置。同時(shí)選擇Loop around users(循環(huán)使用用戶名)和Try empty password(嘗試空密碼)。

    • 用戶名列表:/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/names/nameslist.txt
    • 密碼列表:/usr/share/wfuzz/wordlist/fuzzdb/wordlistsuser-passwd/passwds/john.txt

    你可以使用的快捷方式是,點(diǎn)擊單詞列表框來(lái)打開(kāi)文件系統(tǒng)窗口。

  3. 下面,我們要做一些調(diào)整。在Performance Options(執(zhí)行選項(xiàng))下面,我們將任務(wù)數(shù)量從 16 設(shè)置為 2。原因是我們不打算讓這么多進(jìn)程運(yùn)行,這樣會(huì)使服務(wù)器崩潰。雖然它是可選的,我們也希望選擇Exit after first found pair(在首次發(fā)現(xiàn)匹配之后退出)選項(xiàng)。

  4. 最后,我們要設(shè)置我們的目標(biāo)。點(diǎn)擊Target(目標(biāo))標(biāo)簽頁(yè)并設(shè)置我們的目標(biāo)和協(xié)議。這里,我們使用 Metasploitable 主機(jī)(192.168.10.111)的 HTTP 端口。

  5. 最后我們點(diǎn)擊Start(開(kāi)始)標(biāo)簽頁(yè)的Start按鈕來(lái)啟動(dòng)攻擊。

8.3 獲得路由訪問(wèn)

這個(gè)秘籍中,我們會(huì)使用 Medusa 來(lái)進(jìn)行爆破攻擊。

當(dāng)今,我們處于網(wǎng)絡(luò)社會(huì)之中。隨著聯(lián)網(wǎng)視頻游戲系統(tǒng)的誕生,多數(shù)家庭擁有數(shù)臺(tái)計(jì)算機(jī),并且小型業(yè)務(wù)以創(chuàng)紀(jì)錄的趨勢(shì)增長(zhǎng)。路由器也成為了網(wǎng)絡(luò)連接的基石。然而,富有經(jīng)驗(yàn)的網(wǎng)絡(luò)管理員的數(shù)量并沒(méi)有增長(zhǎng),以保護(hù)這些路由器,使得許多這種路由器易于被攻擊。

準(zhǔn)備

需要連接到互聯(lián)網(wǎng)或內(nèi)部網(wǎng)絡(luò)的計(jì)算機(jī)。也需要可用的路由器。

操作步驟

  1. 在開(kāi)始菜單中,訪問(wèn)Applications | Kali Linux | Password Attacks | Online Attacks | medusa。當(dāng) Medusa 啟動(dòng)后,它會(huì)加載help(幫助)文件。

  2. 我們現(xiàn)在已選定的選項(xiàng)來(lái)云頂 Medusa。

    medusa –M http -h 192.168.10.1 -u admin -P /usr/share/wfuzz/ wordlist/fuzzdb/wordlists-user-passwd/passwds/john.txt -e ns -n 80 -F
    
    • -M http允許我們指定模塊。這里,我們選擇了 HTTP 模塊。

    • -h 192.168.10.1允許我們指定主機(jī)。這里,我們選擇了192.168.10.1(路由的 IP 地址)。

    • -u admin允許我們指定用戶。這里我們選擇了admin

    • -P [location of password list]允許我們指定密碼列表的位置。

    • -e ns允許我們指定額外的密碼檢查。ns變量允許我們使用用戶名作為密碼,并且使用空密碼。

    • -n 80允許我們指定端口號(hào)碼。這里我們選擇了80。

    • -F允許我們?cè)诔晒φ业接脩裘艽a組合之后停止爆破。

  3. Medusa 會(huì)運(yùn)行,并嘗試所有用戶名和密碼組合,直到某次成功。

工作原理

這個(gè)秘籍中,我們使用 Medusa 來(lái)爆破目標(biāo)路由器的密碼。能夠這樣做的好處就是,一旦你能夠訪問(wèn)路由器,你就可以更新它的設(shè)置,便于你以后再訪問(wèn)它,或者甚至是重定向發(fā)送給它的流量來(lái)改變你選擇的位置。

更多

你也可以直接從命令行運(yùn)行 Medusa,通過(guò)鍵入medusa命令。

你也可以傳入其它選項(xiàng)給 Medusa,取決于你的情況。細(xì)節(jié)請(qǐng)參見(jiàn)幫助文檔,通過(guò)在終端窗口僅僅鍵入medusa來(lái)顯示。

模塊類型

下面是我們可以用于 Medusa 的模塊列表:

  • AFP
  • CVS
  • FTP
  • HTTP
  • IMAP
  • MS-SQL
  • MySQL
  • NetWare
  • NNTP
  • PCAnywhere
  • Pop3
  • PostgreSQL
  • REXEC
  • RLOGIN
  • RSH
  • SMBNT
  • SMTP-AUTH
  • SMTp-VRFY
  • SNMP
  • SSHv2
  • Subversion
  • Telnet
  • VMware Authentication
  • VNC
  • Generic Wrapper
  • Web form

8.4 密碼分析

這個(gè)秘籍中,我們會(huì)學(xué)到如何在密碼攻擊之前分析密碼。密碼分析的目的是允許我們通過(guò)收集目標(biāo)機(jī)器、業(yè)務(wù)以及其它的信息來(lái)得到更小的單詞列表。在我們的教程中,我們會(huì)使用 Ettercap 和 它的 ARP 毒化功能來(lái)嗅探流量。

準(zhǔn)備

這個(gè)秘籍需要局域網(wǎng)的鏈接。

操作步驟

讓我們啟動(dòng) Ettercap 來(lái)進(jìn)行密碼分析。

  1. 我們以配置 Ettercap 來(lái)開(kāi)始這個(gè)秘籍。首先,我們找到它的配置文件并用 VIM 編輯它。

    locate etter.conf 
    vi /etc/etterconf
    

    要注意,你的位置可能不同。

  2. ec_uidec_gid改為0。

  3. 下面我們需要取消下面的 IPTABLES 行的注釋。它在靠近文件末尾的LINUX一節(jié)。

  4. 現(xiàn)在,我們將要啟動(dòng) Ettercap。使用-G選項(xiàng),加載圖形化界面(GUI)。

  5. 我們開(kāi)啟統(tǒng)一嗅探。你可以按下Shift + U或者訪問(wèn)菜單欄中的Sniff | Unified sniffing...

  6. 選擇網(wǎng)絡(luò)接口。

  7. 下面,我們開(kāi)始Scan for hosts(掃描主機(jī)),這可以通過(guò)按下Ctrl + S或訪問(wèn)菜單欄的Hosts | Scan for hosts來(lái)完成。

  8. 現(xiàn)在我們能夠讓 Ettercap 開(kāi)始嗅探了。你可以按下Ctrl + W或訪問(wèn)菜單欄的Start | Start Sniffing(開(kāi)始嗅探)。

  9. 最后,我們開(kāi)始進(jìn)行 ARP 毒化。訪問(wèn)菜單欄的Mitm | Arp poisoning(ARP 毒化)。

  10. 在出現(xiàn)的窗口中,選中Sniff remote connections(嗅探遠(yuǎn)程連接)的選項(xiàng)。

  11. 取決于網(wǎng)絡(luò)情況,我們會(huì)看到信息。

  12. 一旦我們找到了我們想找的信息(用戶名和密碼)。我們會(huì)關(guān)閉 Ettercap。你可以按下Ctrl + E或者訪問(wèn)菜單欄的Start | Stop sniffing(停止嗅探)來(lái)完成。

  13. 現(xiàn)在我們需要關(guān)閉 ARP 毒化來(lái)使網(wǎng)絡(luò)恢復(fù)正常。

工作原理

這個(gè)秘籍中,我們使用 Ettercap 來(lái)毒化網(wǎng)絡(luò)并偷取網(wǎng)絡(luò)上的用戶名和密碼。我們以尋找和修改 Ettercap 的配置文件來(lái)開(kāi)始。之后我們啟動(dòng)了 Ettercap 并使用 ARP 毒化執(zhí)行中間人(MITM)攻擊。由于流量被重定向到我們的主機(jī),當(dāng)用戶名和密碼在網(wǎng)絡(luò)上傳播時(shí),我們就能夠看到它們。

更多

我們也可以使用 Metasploit 來(lái)分析用戶名和面。我們會(huì)通過(guò)使用搜索郵件收集器模塊來(lái)執(zhí)行它。

  1. 打開(kāi)終端窗口并啟動(dòng) MSFCONSOLE:

    msfconsole
    
  2. 搜索郵件收集器;

    search email collector
    
  3. 鍵入下列命令來(lái)使用搜索郵件收集器模塊:

    use auxiliary/gather/search_email_collector 
    
  4. 展示該模塊可用的選項(xiàng):

    show options
    
  5. 下面我們?cè)O(shè)置域名。如果不想被有關(guān)部門(mén)查水表的話,請(qǐng)小心選擇域名。

  6. 將域名設(shè)為你希望的域名:

    set domain  gmail.com
    
  7. 設(shè)置輸入文件。這并不是必需的。如果你打算運(yùn)行多個(gè)攻擊,或打算稍后也能運(yùn)行某個(gè)攻擊,推薦設(shè)置它。

    set outfile /root/Desktop/fromwillie.txt
    
  8. 最后,我們開(kāi)始攻擊。

    run
    

8.5 使用 John the Ripper 破解 Windows 密碼

這個(gè)秘籍中,我們會(huì)使用 John the Ripper 來(lái)破解 Windows 安全訪問(wèn)管理器(SAM)文件。SAM文件儲(chǔ)存了目標(biāo)系統(tǒng)用戶的用戶名和密碼的哈希。出于安全因素,SAM文件使用授權(quán)來(lái)保護(hù),并且不能在 Windows 系統(tǒng)運(yùn)行中直接手動(dòng)打開(kāi)或復(fù)制。

準(zhǔn)備

你將會(huì)需要訪問(wèn) SAM 文件。

這個(gè)秘籍中,我們假設(shè)你能夠訪問(wèn)某臺(tái) Windows 主機(jī)。

操作步驟

讓我們開(kāi)始使用 John the Ripper 破解 Windows SAM 文件。我們假設(shè)你能夠訪問(wèn)某臺(tái) Windows 主機(jī),通過(guò)遠(yuǎn)程入侵,或者物理接觸,并且能夠通過(guò) USB 或 DVD 驅(qū)動(dòng)器啟動(dòng) Kali Linux。

  1. 看看你想掛載哪個(gè)硬盤(pán):

    Fdisk -l
    
  2. 掛載該硬盤(pán),并將target設(shè)為它的掛載點(diǎn)。

    mount /dev/sda1 /target/ 
    
  3. 將目錄改為 Windows SAM 文件的位置:

    cd /target/windows/system32/config 
    
  4. 列出目錄中所有內(nèi)容。

    ls –al
    
  5. 使用 SamDump2 來(lái)提取哈希,并將文件放到你的 root 用戶目錄中的一個(gè)叫做hashes的文件夾中。

    samdump2 system SAM > /root/hashes/hash.txt
    
  6. 將目錄改為 John the Ripper 所在目錄。

  7. 運(yùn)行 John the Ripper:

    ./john /root/hashes/hash.txt 
    ./john /root/hashes/hash.txt–f:nt  (If attacking a file on a NTFS System) 
    

8.6 字典攻擊

這個(gè)秘籍中,我們會(huì)進(jìn)行字典或單詞列表的攻擊。字典攻擊使用事先準(zhǔn)備的密碼集合,并嘗試使用單詞列表爆破與指定用戶匹配的密碼。所生成的字典通常由三種類型:

+   只有用戶名:列表只含有用戶名。
+   只有密碼:列表只含有密碼。
+   用戶名和密碼:列表含有生成的用戶名和密碼。

出于演示目的,我們使用 Crucnch 來(lái)生成我們自己的密碼字典。

準(zhǔn)備

需要在 Kali 上安裝 Crunch。

操作步驟

Kali 的好處是已經(jīng)安裝了 Crunch,不像 BackTrack。

  1. 打開(kāi)終端窗口,并輸入crunch命令來(lái)查看 Crunch 的幫助文件。

    crunch
    
  2. 使用 Crunch 生成密碼的基本語(yǔ)法是,[minimum length] [maximum length] [character set] [options]

  3. Crunch 擁有幾種備選選項(xiàng)。一些常用的如下:

    • -o:這個(gè)選項(xiàng)允許你指定輸出列表的文件名稱和位置、

    • -b:這個(gè)選項(xiàng)允許你指定每個(gè)文件的最大字節(jié)數(shù)。大小可以以 KB/MB/GB 來(lái)指定,并且必須和-o START觸發(fā)器一起使用。

    • -t:這個(gè)選項(xiàng)允許你指定所使用的模式。

    • -l:在使用-t選項(xiàng)時(shí),這個(gè)選項(xiàng)允許你將一些字符標(biāo)識(shí)為占位符(@,%^)。

  4. 下面我們執(zhí)行命令來(lái)在桌面上創(chuàng)建密碼列表,它最少 8 個(gè)字母,最大 10 個(gè)字符,并且使用字符集ABCDEFGabcdefg0123456789。

    crunch 8 10 ABCDEFGabcdefg0123456789 –o /root/Desktop/ generatedCrunch.txt
    
  5. 一旦生成了文件,我們使用 Nano 來(lái)打開(kāi)文件:

    nano /root/Desktop/generatedCrunch.txt
    

工作原理

這個(gè)秘籍中我們使用了 Crunch 來(lái)生成密碼字典列表。

8.7 使用彩虹表

這個(gè)秘籍中我們會(huì)學(xué)到如何在 Kali 中使用彩虹表。彩虹表是特殊字典表,它使用哈希值代替了標(biāo)準(zhǔn)的字典密碼來(lái)完成攻擊。出于演示目的,我們使用 RainbowCrack 來(lái)生成彩虹表。

操作步驟

  1. 打開(kāi)終端窗口并將目錄改為rtgen的目錄:

    cd /usr/share/rainbowcrack/
    
  2. 下面我們要啟動(dòng)rtgen來(lái)生成基于 MD5 的彩虹表。

    ./rtgen md5 loweralpha-numeric 1 5 0 3800 33554432 0
    
  3. 一旦彩虹表生成完畢,你的目錄會(huì)包含.rt文件。這取決于用于生成哈希的處理器數(shù)量,大約需要 2~7 個(gè)小時(shí)。

  4. 為了開(kāi)始破解密碼,我們使用rtsort程序?qū)Σ屎绫砼判颍蛊涓右子谑褂谩?/p>

工作原理

這個(gè)秘籍中,我們使用了 RainbowCrack 攻擊來(lái)生成、排序和破解 MD5 密碼。RainbowCrack 能夠使用彩虹表破解哈希,基于一些預(yù)先準(zhǔn)備的哈希值。我們以使用小寫(xiě)字母值生成 MD5 彩虹表來(lái)開(kāi)始。在秘籍的末尾,我們成功創(chuàng)建了彩虹表,并使用它來(lái)破解哈希文件。

8.8 使用英偉達(dá)統(tǒng)一計(jì)算設(shè)備架構(gòu)(CUDA)

這個(gè)秘籍中,我們會(huì)使用英偉達(dá)統(tǒng)一計(jì)算設(shè)備架構(gòu)(CUDA)來(lái)破解密碼哈希。CUDA 是一個(gè)并行計(jì)算平臺(tái),它通過(guò)利用 GPU 的能力來(lái)提升計(jì)算性能。隨著時(shí)間的流逝,GPU 的處理能力有了戲劇性的提升,這讓我們能夠?qū)⑺糜谟?jì)算目的。出于演示目的,我們使用 CudaHashcat-plus 來(lái)破解密碼。

準(zhǔn)備

需要 CUDA 所支持的顯卡來(lái)完成這個(gè)秘籍。

操作步驟

  1. 打開(kāi)終端窗口并將目錄改為 OclHashcat-plus 所在目錄。

    cd /usr/share/oclhashcat-plus
    
  2. 執(zhí)行下列命令來(lái)啟動(dòng) CudaHashcat-plus 的幫助文件:

    ./cudaHashcat-plus.bin –help 
    
  3. 運(yùn)行 CudaHashcat 的語(yǔ)法是cudaHashcat-plus.bin [options] hash [mask]

    使用 OclHashcat 的重點(diǎn)之一是理解它的字符集結(jié)構(gòu)。

  4. 在我們開(kāi)始攻擊之前,讓我們先看看一些可用的攻擊向量。CudaHashcat 在攻擊中使用左右掩碼。密碼的字符按照掩碼劃分,并且被均分為左和右掩碼。對(duì)于每個(gè)掩碼,你可以為其指定字典或字符集。出于我們的目的,我們會(huì)使用定制的字符集。

  5. 為了指定自定義字符集,我們使用–1選項(xiàng)。我們可以設(shè)置任意多的自定義字符集,只要為它們指定一個(gè)數(shù)值(1-n)。每個(gè)自定義字符都由問(wèn)號(hào)(?)來(lái)表示,并且隨后是字符類型??捎玫倪x擇是:

    • d指定數(shù)字(0~9)
    • l指定小寫(xiě)字母
    • u指定大寫(xiě)字母
    • s指定特殊字符
    • 1-n指定用做占位符的自定義字符集。
  6. 這樣將它們組合起來(lái),我們就指定了一個(gè)自定義字符集,它包括特殊字符(s),大寫(xiě)字母(u),小寫(xiě)字母(l)和數(shù)字(d),生成長(zhǎng)度為 8 的密碼。我們打算指定叫做attackfile的哈希表。

    ./cudaHashcat-plus.bin attackfile -1 ?l?u?d?s ?1?1?1?1 ?1?1?1?1
    
  7. 我們可以將這個(gè)命令這樣拆分:

    • ./cudaHashcat-plus.bin調(diào)用了 CudaHashcat 。

    • attackfile是我們的攻擊文件。

    • -1 ?l?u?d?指定了自定義字符集1,它包含小寫(xiě)字母、大寫(xiě)字母、數(shù)字和特殊字符。

    • ?1?1?1?1是使用字符集1的左掩碼。

    • ?1?1?1?1是使用字符集1的右掩碼。

    這就結(jié)束了。

8.9 使用 ATI Stream

這個(gè)秘籍中,我們會(huì)使用 ATI Stream 來(lái)破解密碼哈希。ATI Stream 類似于 CUDA,因?yàn)樗且粋€(gè)并行計(jì)算平臺(tái),它可以通過(guò)利用 GPU 的能力來(lái)提升計(jì)算性能。隨著時(shí)間的流逝,GPU 的處理能力有了戲劇性的提升,這讓我們能夠?qū)⑺糜谟?jì)算目的。出于演示目的,我們使用 OclHashcat-plus 來(lái)破解密碼。OclHashcat 有兩種版本:plus 和 lite。兩個(gè)都包含在 Kali 中。

準(zhǔn)備

需要支持 ATI Stream 的顯卡來(lái)完成這個(gè)秘籍。

操作步驟

讓我們開(kāi)始使用 OclHashcat-plus。

  1. 打開(kāi)終端窗口并將目錄改為 OclHashcat-plus 所在目錄。

    cd /usr/share/oclhashcat-plus
    
  2. 執(zhí)行下列命令來(lái)啟動(dòng) OclHashcat-plus 的幫助文件:

    ./oclHashcat-plus.bin –help 
    
  3. 運(yùn)行 OclHashcat 的語(yǔ)法是oclHashcat-plus.bin [options] hash [mask]。

    使用 OclHashcat 的重點(diǎn)之一是理解它的字符集結(jié)構(gòu)。

  4. 在我們開(kāi)始攻擊之前,讓我們先看看一些可用的攻擊向量。OclHashcat 在攻擊中使用左右掩碼。密碼的字符按照掩碼劃分,并且被均分為左和右掩碼。對(duì)于每個(gè)掩碼,你可以為其指定字典或字符集。出于我們的目的,我們會(huì)使用定制的字符集。

  5. 為了指定自定義字符集,我們使用–1選項(xiàng)。我們可以設(shè)置任意多的自定義字符集,只要為它們指定一個(gè)數(shù)值(1-n)。每個(gè)自定義字符都由問(wèn)號(hào)(?)來(lái)表示,并且隨后是字符類型??捎玫倪x擇是:

    • d指定數(shù)字(0~9)
    • l指定小寫(xiě)字母
    • u指定大寫(xiě)字母
    • s指定特殊字符
    • 1-n指定用做占位符的自定義字符集。
  6. 這樣將它們組合起來(lái),我們就指定了一個(gè)自定義字符集,它包括特殊字符(s),大寫(xiě)字母(u),小寫(xiě)字母(l)和數(shù)字(d),生成長(zhǎng)度為 8 的密碼。我們打算指定叫做attackfile的哈希表。

    ./oclHashcat-plus.bin attackfile -1 ?l?u?d?s ?1?1?1?1 ?1?1?1?1
    
  7. 我們可以將這個(gè)命令這樣拆分:

    • ./oclHashcat-plus.bin調(diào)用了 OclHashcat 。

    • attackfile是我們的攻擊文件。

    • -1 ?l?u?d?指定了自定義字符集1,它包含小寫(xiě)字母、大寫(xiě)字母、數(shù)字和特殊字符。

    • ?1?1?1?1是使用字符集1的左掩碼。

    • ?1?1?1?1是使用字符集1的右掩碼。

    這就結(jié)束了。

8.10 物理訪問(wèn)攻擊

這個(gè)秘籍中,我們會(huì)使用 SUCrack 來(lái)執(zhí)行物理訪問(wèn)密碼攻擊。 SUCrack 是個(gè)多線程的工具,能夠通過(guò)su來(lái)執(zhí)行本地用戶賬戶的暴力破解。Linux 的su命令允許你作為替代用戶來(lái)運(yùn)行命令。這個(gè)攻擊,雖然在你不能通過(guò)其他手段提權(quán) Linux 系統(tǒng)時(shí)非常有用,但是會(huì)填滿日志文件,所以請(qǐng)確保在完成之后清理這些日志。

SUCrack 擁有幾種備選的可用命令:

  • --help允許你查看它的幫助文檔。

  • -l允許你修改我們嘗試?yán)@過(guò)登錄的用戶。

  • -s允許你設(shè)置展示統(tǒng)計(jì)信息的秒數(shù)間隔。默認(rèn)值為 3 秒。

  • -a允許你設(shè)置是否使用 ANSI 轉(zhuǎn)義代碼。

  • -w允許你設(shè)置工作線程的數(shù)量。由于 SUCrack 是多線程的,你可以運(yùn)行任意多的線程。我們推薦你只使用一個(gè)線程,因?yàn)槊看问〉牡卿泧L試在嘗試下個(gè)密碼之前通常有三秒的延遲。

操作步驟

  1. 為了使用 SUCrack,你需要在啟動(dòng)時(shí)指定單詞列表。否則,你會(huì)得到一條搞笑的信息。打開(kāi)終端窗口并執(zhí)行sucrack命令。出于我們的目的,我們會(huì)使用之前創(chuàng)建的自定義單詞列表文件,它由 Crunch 生成。但是,你可以指定任何希望的單詞列表。

    sucrack /usr/share/wordlists/rockyou.txt
    
  2. 如果你打算設(shè)置兩個(gè)工作線程,以及每 6 秒顯示一次統(tǒng)計(jì)信息,并且使用 ANSI 轉(zhuǎn)義代碼,你可以使用下列命令:

    sucrack –w 2 –s 6 –a /usr/share/wordlists/rockyou.txt 
    

    這就結(jié)束了。

工作原理

這個(gè)秘籍中,我們使用 SUCrack 來(lái)對(duì)系統(tǒng)的 root 用戶執(zhí)行物理訪問(wèn)密碼攻擊。使用單詞列表的攻擊可以對(duì)管理員(默認(rèn))或特定用戶指定。我們運(yùn)行sucrack命令,它為我們執(zhí)行攻擊。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容