在本文中將介紹三種使用 Android設備進行滲透測試的思路。本文中的大多數使用基于 Kali Nethunter.
安裝 Kali Nethunter
kali nethunter 是在已有的 rom上對內核進行修改而定制的一個系統,他通過 chroot 來在安卓設備中運行 kali。故在安裝 kali nethunter前你得先有一個被支持的rom.官方支持的設備和rom列表: https://github.com/offensive-security/kali-nethunter/wiki 。這里我用的是 nexus4 ,其他設備的流程應該大概差不多。具體流程如下:
根據官方的支持列表刷入 對應支持的 rom , 為了方便可以使用 刷機精靈 進行刷機,我的是nexus4 ,刷cm13, 使用這個鏡像 http://www.romzj.com/rom/61429.htm 。
從 https://build.nethunter.com/nightly/ 下載對應的 kernel-nethunter-makocm-marshmallow-* 和 nethunter-generic-armhf android-kalifs-full-rolling-* , 然后使用 twrp 先刷 kalifs , 然后刷入 kernel.
遇到的問題
nethunter app會卡死在 復制腳本文件那,我注釋掉了那兩句復制文件的代碼,手動把apk中asserts目錄下的相應目錄復制為: /data/data/com.offsec.nethunter/files/{etc,scripts} 和 /sdcard/nh_files
在windows下復制腳本到linux, 會因為換行符的問題導致腳本不能執行, 使用 dos2unix 對文件進行轉換
com.offsec.nhterm (用于開啟、使用 kali的命令行界面)會報錯,使用 https://github.com/madScript01/install_nh 中的Term-nh.apk 把它替換掉。
為了方便后面的實驗,開啟 ssh服務,使用PC連接(默認用戶名密碼: root/toor), 真正去滲透時我們可以把一些常用的命令寫成腳本方便直接運行。
開啟ssh

思路一:普通U盤類攻擊
在nethunter安裝完后,會有一個 DroidDrive 的app, 我們可以用它來創建一個鏡像,然后掛載,然后我們的安卓手機就可以當U盤來用了。具體過程看下面。

點擊需要掛載的鏡像,然后會有幾種掛載方式,這里使用第二種就行。弄好后,用usb線接入電腦,會提示 需要格式化 ,格式化后就和普通的U盤一樣用了。
U盤攻擊很早之前就有了,那時使用 autorun.inf 來傳播病毒, 下面要介紹的是使用 最近的 cve-2017-8464 的 exp來進行攻擊。首先使用msf生成 payload

根據你的U盤在pc上識別為什么盤(A,B,...)來復制相應的 .lnk文件 和 .dll。為了通用把他們全復制到u盤根目錄。然后設置好 handler:

插入U盤,打開我的電腦,就會反彈shell了。
思路二:HID攻擊
通過HID攻擊,我們可以通過USB線來模擬鍵盤鼠標的操作,這樣我就可以在目標上執行惡意代碼。Kali Nethunter中有兩種 HID攻擊payload生成方式。第一種就是下面這個:
手機通過USB連到 PC ,然后:

電腦上會打開 cmd, 執行 ipconfig:
這種方式非常簡單,但是不夠靈活。當機器的默認輸入法為中文時,命令輸入有時是會出問題的,比如輸入 " (英文雙引號)時 會變成 “(中文雙引號)。
我建議用下面的那個 DuckHunter HID 模式進行這種方式的攻擊。
該模式 允許我們使用 Usb Rubber Ducky的語法來實現 HID攻擊,此外該模式還提供了一個 Preview 的選項卡,通過它我們可以發現其實HID攻擊實際上就是使用 shell命令向 /dev/hidg0 發送數據,之后該設備就會將他們轉換為鍵盤或者鼠標的操作。
后來在Github瞎找,找到了一個針對該模式生成shell腳本的項目: https://github.com/byt3bl33d3r/duckhunter 使用它我們可以很方便的對腳本進行測試(寫完Usb Rubber Ducky腳本用該工具生成shell腳本然后再 Nethunter上運行 shell腳本。),同時該項目還提供了簡單的 Usb Rubber Ducky的語法。
此時我們就能通過Nethunter向主機輸入各種的鍵盤按鍵,組合鍵等。所以對于上面提出的 中文問題。我們可以在需要輸入字符時,發送shift鍵切換到英文就行了。
|