在今年早些時候,FB就對Bash Bunny作了相關的報導。這款號稱「世界上最早進的USB攻擊工具」的Bash Bunny,是否真的像其所說的同樣是款滲透神器呢?下面,我將經過實例演示如何利用Bash Bunny QuickCreds模塊,獲取到目標主機上的登錄憑據。html
簡介git
很幸運,我獲得了一個Bash Bunny的硅谷優惠碼,並不是常期待Bash Bunny的表現。github
首先,對於那些不熟悉該類攻擊的人,我強烈推薦你能夠先去閱讀下mubix的原始帖子。bash
配置less
首先,我須要將payload加載到設備上並使它能正常工做。ssh
我在Windows和Mac上的嘗試都遇到了許多麻煩,最終我在Kali VM成功執行了Bunny。工具
隨着你的[sic]VM被關閉,進入到設置>端口>USB 啓用usb 3.0post
將bunny切換到狀態1;插入並等待它徹底加載測試
添加一個usb過濾器(+圖標)並添加設備(Linux 3.4.39 sunxi_usb_udc RNDIS/Ethernet Gadget [0333]驅動)ui
彈出bunny
將開關調到狀態2和3,而後重複步驟2-4
打開你的vm,而且保持bunny未插入狀態
在vm上wget bb.sh腳本
運行`sudo bash bb.sh`並按照引導設置
當bunny不在arm模式(位置3),在第三步後插入bunny
若是你操做正確的話,腳本會在這個階段「檢測」bunny
最後一步是再次使用你剛剛的設置「connect」主菜單後按「C」
如今你應該可以ssh到bunny,並可經過ping命令測試鏈接狀態
DNS問題
完成上述配置步驟後,我能夠SSH鏈接到個人bunny。
不幸的是,我沒法正確下載任何內容或是更新它。
通過一番折騰後,我查看了一下在設備上的resolv.conf文件。
root@bunny:~# ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=43 time=26.7 ms ^C --- 8.8.8.8 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 26.766/26.766/26.766/0.000 ms root@bunny:~# ping google.com ^C root@bunny:~# cat /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 8.8.8.8 nameserver 8.8.4.4
我發現個人 pfSense 被配置爲阻止全部傳出的DNS請求。爲了後續演示的方便,這裏我禁用了個人防火牆規則。
工具安裝
在Bash Bunny QuickCreds payload工做以前,我須要在設備上使用Responder。
首先,我將 ToolsInstaller 包添加到switch1有效載荷中。
接下來,我將QuickCreds有效載荷添加到switch2中。
不幸的是,ToolsInstaller的安裝仍然失敗。
接下來,我手動建立了一個名爲pentest的文件夾。
完成建立後,我手動上傳了impacket和responder到設備。
但不幸的是,安裝依舊失敗。
固件更新
至此我意識到多是固件的問題,所以我決定更新個人固件版本。
進入下載頁面,我發現目前最新的版本爲1.3。
我按照頁面的更新說明,完成了對設備上的固件更新操做。
成功安裝
接着,我將Responder移動到了/tools/responder並嘗試了快速攻擊。
但問題再次出現,Bunny並無顯示攻擊成功的綠光,我相信這確定是Responder的問題。
最後,我找到了.deb文件,併成功安裝了Responder!
執行
如今到了最激動人心的時刻了,我決定拿我女友加密鎖定的筆記本電腦做爲個人滲透目標。
我將bunny插入了她的筆記本,能夠看到琥珀色的燈光。
沒過幾秒鐘燈光顏色變成了綠色,說明咱們的payload成功被執行。
檢查設備後咱們發現,多了一個包含NTLM哈希的文件。
哈希破解
根據女朋友提供給個人一小點提示,我開始嘗試破解哈希密碼。
Rays-MacBook-Pro:testing doyler$ hashcat -a 3 -m 5600 -i --increment-min=1 --increment-max=10 hash.txt ?l?l?l?l?l?l?l?l?l?l hashcat () starting... OpenCL Platform #1: Apple ========================= * Device #1: Intel(R) Core(TM) i7-6920HQ CPU @ 2.90GHz, skipped. * Device #2: Intel(R) HD Graphics 530, 384/1536 MB allocatable, 24MCU * Device #3: AMD Radeon Pro 460 Compute Engine, 1024/4096 MB allocatable, 16MCU Hashes: 2 digests; 1 unique digests, 1 unique salts Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates Applicable optimizers: * Zero-Byte * Not-Iterated * Single-Hash * Single-Salt * Brute-Force Watchdog: Temperature abort trigger disabled. Watchdog: Temperature retain trigger disabled. The wordlist or mask that you are using is too small. This means that hashcat cannot use the full parallel power of your device(s). Unless you supply more work, your cracking speed will drop. For tips on supplying more work, see: https://hashcat.net/faq/morework Approaching final keyspace - workload adjusted. Session..........: hashcat Status...........: Exhausted Hash.Type........: NetNTLMv2 Hash.Target......: GIRLFRIEND::Girlfriend-THINK:dexxxxx...000000 Time.Started.....: Fri Jul 14 19:40:47 2017 (0 secs) Time.Estimated...: Fri Jul 14 19:40:47 2017 (0 secs) Guess.Mask.......: ?l [1] Guess.Queue......: 1/10 (10.00%) Speed.Dev.#2.....: 0 H/s (0.45ms) Speed.Dev.#3.....: 0 H/s (0.00ms) Speed.Dev.#*.....: 0 H/s Recovered........: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts Progress.........: 26/26 (100.00%) Rejected.........: 0/26 (0.00%) Restore.Point....: 0/1 (0.00%) Candidates.#2....: q -> x Candidates.#3....: [Generating] Session..........: hashcat Status...........: Running Hash.Type........: NetNTLMv2 Hash.Target......: GIRLFRIEND::Girlfriend-THINK:dexxxxx...000000 Time.Started.....: Wed Jul 19 12:28:22 2017 (1 sec) Time.Estimated...: Wed Jul 19 12:28:26 2017 (3 secs) Guess.Mask.......: ?l?l?l?l?l?l?l?l?l?l [10] Guess.Queue......: 1/1 (100.00%) Speed.Dev.#2.....: 12865.7 kH/s (4.11ms) Speed.Dev.#3.....: 60526.9 kH/s (7.08ms) Speed.Dev.#*.....: 73392.6 kH/s Recovered........: 0/1 (0.00%) Digests, 0/1 (0.00%) Salts Progress.........: xxxxxxxx/308915776 (xx%) Rejected.........: 0/88440832 (0.00%) Restore.Point....: xxxxxxxx/308915776 (xx%) Candidates.#2....: xxxxxxxxxx -> xxxxxxxxxx Candidates.#3....: xxxxxxxxxx -> xxxxxxxxxx GIRLFRIEND::Girlfriend-THINK:dexxxxx:xxxxx:xxxxx:(password here)
總結
在成功破解密碼後,我成功登錄到了我女朋友的筆記本。
這是我在bunny上成功使用的第一個payload。
最後,若是你有其餘關於payload更好的想法或建議,或嘗試編寫一些我的的payload,那麼歡迎與我取得聯繫並分享你的成果。
原文連接:https://www.doyler.net/security-not-included/bash-bunny-quickcreds