本篇內容主要講解“怎么對iOS藍牙執行基于覆蓋引導的模糊測試”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么對iOS藍牙執行基于覆蓋引導的模糊測試”吧!
創新互聯公司IDC提供業務:綿陽電信機房機柜租用,成都服務器租用,綿陽電信機房機柜租用,重慶服務器租用等四川省內主機托管與主機租用業務;數據中心含:雙線機房,BGP機房,電信機房,移動機房,聯通機房。
ToothPicker是一款針對iOS的基于覆蓋引導的模糊測試工具,該工具專門針對iOS的藍牙守護進程bluetoothd設計,由于該工具基于FRIDA構建,因此它可以適配任何運行了FRIDA的平臺。
這個項目代碼庫還包含了一個基于無線模糊測試工具,該工具可以對使用InternalBlue的蘋果MagicPairing協議進行模糊測試,并且還提供了演示樣例以供參考。除此之外,該項目還提供了一個ReplayCrashFile.py腳本以幫助廣大研究人員識別和驗證模糊測試工具所發現的進程崩潰情況。
這款模糊測試工具支持在各種iOS版本(已在13.3-13.6上進行過測試)上“開箱即用”,但是需要指定符號。其他的iOS版本需要對函數地址進行自適應。除此之外,FRIDA的stalker貌似在iPhone 8上存在一些問題,我們還沒有能夠解決。更新版本的iPhone支持PAC,簽名指針的性能會受到很大影響。因此,我們建議在廣大研究人員在iPhone7上運行該工具。
ToothPicker基于frizzer的代碼進行開發,不過我們已經針對ToothPicker進行了代碼重構,因此不需要再與原始版本兼容了。在之后,我們計劃將使用一個更有針對性的版本來取代它。
在iPhone上:
https://frida.re/docs/ios/
在Linux上:
usbmuxd
libimobiledevice
建議使用virtualenv
radamsa(frizzer需要使用)
基于Arch的Linux:
# usbmuxd typically comes with libimobiledevice # but just to be sure, we manually install it as well sudo pacman -S usbmuxd libimobiledevice python-virtualenv radamsa # Connect the iPhone to the computer # Unlock it. # If a pairing message pops up, click "Trust" # If no pairing message pops up: idevicepair pair # Now there should be the pop up, accept and then again: idevicepair pair # In case of connection errors: sudo systemctl restart usbmuxd # or pair phone and computer again # Other useful commands # To ssh into the iPhone: # Checkra1n comes with an SSH server listening on Port 44 # Proxy the phone's SSH port to 4444 localport: iproxy 4444 44 # Connect: ssh root@localhost -p 4444 # Default password: alpine # To fetch some device information of the phone: Ideviceinfo
Debian Linux:
大致步驟跟上面的一樣,但是:
radamsa需要從Git庫安裝,因為它沒有已封裝好的版本。
iproxy命令需要額外的包:libusbmuxd-tools
在macOS上:
brew install libimobiledevice usbmuxd radamsa npm idevicepair pair npm install frida-compile pip3 install frida-tools
在macOS上,PacketLogger是Xcode中的一個額外組件,在安裝了藍牙調試配置之后,它將能夠幫助我們解碼各種數據包。除此之外,如果你使用Xcode來打開iOS崩潰日志時,它還可以幫助自動添加某些符號。
我們建議大家針對frizzer配置一個虛擬Python環境,然后在frizzer目錄中運行命令來安裝所需的代碼包。
projects目錄中包含一個針對MagicPairing協議的模糊測試樣例。
然后將一些通用工具以及MagicPairing編譯到一個文件中。
使用cd命令進入到harness目錄,然后安裝frida-compile:
npm install frida-compile
接下來,運行下列命令:
frida-compile ../projects/YOUR_PROJECT/YOUR_SPECIALIZED_HARNESS.JS -o ../projects/YOUR_PROJECT/harness.js
首先,將你的iOS設備跟電腦連接,我們建議大家將手機切換到飛行模式,然后打開勿擾功能。
然后,運行下列命令來開啟bluetoothd:
killall -9 bluetoothd
此時,需要確保手機沒有連接至其他藍牙設備。接下來,使用cd命令切換回項目目錄,然后創建用于存儲崩潰日志的目錄,并運行下列命令:
mkdir crashes ../../frizzer/fuzzer.py fuzz -p
現在,我們就可以收集關于蘋果設備的崩潰日志了。
簡而言之,如需開啟一個新的項目,只需要運行下列命令即可:
cd harness npx frida-compile ../projects/YOUR_PROJECT/YOUR_SPECIALIZED_HARNESS.JS -o ../projects/YOUR_PROJECT/harness.js cd ../projects/YOUR_PROJECT/ mkdir crashes frizzer fuzz -p .
如需以不同的種子來啟動工具,可運行下列命令:
frizzer fuzz --seed 1234 -p
到此,相信大家對“怎么對iOS藍牙執行基于覆蓋引導的模糊測試”有了更深的了解,不妨來實際操作一番吧!這里是創新互聯網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
本文名稱:怎么對iOS藍牙執行基于覆蓋引導的模糊測試
標題網址:http://vcdvsql.cn/article10/jhpodo.html
成都網站建設公司_創新互聯,為您提供品牌網站制作、網站策劃、網站設計公司、虛擬主機、外貿建站、服務器托管
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯