MobSF移動(dòng)安全測(cè)試框架
移動(dòng)安全框架 (MobSF) 是一個(gè)智能化、一體化的開(kāi)源移動(dòng)應(yīng)用(Android / iOS)自動(dòng)測(cè)試框架,能夠?qū)σ陨蟽煞N移動(dòng)應(yīng)用進(jìn)行靜態(tài)和動(dòng)態(tài)分析(動(dòng)態(tài)分析目前暫時(shí)只支持Android)。
它可以有效、快速地對(duì)應(yīng)用APK 和IPA文件 及壓縮的源代碼進(jìn)行審計(jì)分析。同時(shí),MobSF 也能夠通過(guò)其API Fuzzer功能模塊,對(duì) Web API 的安全性進(jìn)行檢測(cè),如收集信息,分析安全頭部信息,識(shí)別移動(dòng)API 的具體漏洞,如XXE、SSRF、路徑遍歷,IDOR以及其他的與會(huì)話和API調(diào)用速率限制有關(guān)的邏輯問(wèn)題。
運(yùn)行環(huán)境
? Python 2.7,下載請(qǐng)點(diǎn)擊:Python 2.7
? Oracle JDK 1.7或以上版本,下載請(qǐng)點(diǎn)擊:Oracle JDK;
? Oracle VirtualBox 下載請(qǐng)點(diǎn)擊: VirtualBox;
? iOS IPA分析(需在 Mac系統(tǒng)上執(zhí)行)所需命令行工具( Mac系統(tǒng))下載請(qǐng)點(diǎn)擊:Conmand-line tool;
? 硬件配置:4GB 或以上內(nèi)存,5G硬盤(pán)空間。
安裝
該框架目前暫時(shí)只于Windows 7, 8, 8.1, 10, Ubuntu, OSX Mavericks等系統(tǒng)平臺(tái)上進(jìn)行測(cè)試。
? Windows:解壓MobSF壓縮文件到C:\MobSF;
? Mac:解壓MobSF壓縮文件到/Users/[username]/MobSF;
? Linux:解壓MobSF壓縮文件到/home/[username]/MobSF。
配置靜態(tài)分析器
通過(guò)pip安裝MobSF Python 依賴(lài)包,以下為不同系統(tǒng)的命令執(zhí)行操作,
Windows
C:\Python27\Scripts\pip.exe install -r requirements.txt
如果pip.exe在腳本目錄中不可用,下載及重新安裝最新版本的Python2.7。
Unix
pip install -r requirements.txt
運(yùn)行MobSF
python manage.py runserver
如果需要在具體端口上運(yùn)行,可以通過(guò)以下指令進(jìn)行,
python manage.py runserver port_number
如果上述步驟都順利正常執(zhí)行的話,那么我們將會(huì)看到以下的輸出內(nèi)容,
配置動(dòng)態(tài)分析器
配置MobSF VM
動(dòng)態(tài)分析器目前只支持針對(duì) Android APK文件進(jìn)行分析,硬件環(huán)境要求為需要計(jì)算機(jī)擁有4GB 內(nèi)存和支持完全虛擬化。
首先,配置動(dòng)態(tài)分析器我們需要獲取以下4個(gè)方面的信息,
(1)VM UUID
(2)快照 UUID
(3)主機(jī)/代理 IP
(4)VM/設(shè)備 IP
操作步驟
1、打開(kāi)VirtualBox(本文主要以VirtualBox為樣例),選擇文件->導(dǎo)入應(yīng)用,并選中MobSF_VM_X.X.ova 文件(下載地址可于前文查看);
2、在進(jìn)行導(dǎo)入過(guò)程中,請(qǐng)勿更改任意配置,一切按照默認(rèn)設(shè)置進(jìn)入下一步;
3、一旦OVA文件導(dǎo)入成功,我們將在VirtualBox上看到一個(gè)以MobSF_VM_X.X命名的新的條目;
4、接下來(lái)右擊MobSF VM,并選擇設(shè)置一項(xiàng),選中到網(wǎng)絡(luò)選項(xiàng)卡,這里我們需要配置兩個(gè)網(wǎng)絡(luò)適配器;
(1)適配器1 啟用并于attached to 中,選擇Host-only Adapter模式,重命名適配器名稱(chēng),因?yàn)槲覀冃枰ㄟ^(guò)該名稱(chēng)來(lái)識(shí)別主機(jī)/代理 IP,配置如下圖;
(2)適配器2 啟用并于attached to中,選擇NAT模式,配置如下圖。
5、保存上述設(shè)置,便可啟動(dòng)MobSF VM。當(dāng)該VM啟動(dòng)的時(shí)候,記下VM的 IP地址;
6、一旦該虛機(jī)啟動(dòng)后,它會(huì)停留在一個(gè)鎖屏狀態(tài)上,而解鎖密碼默認(rèn)為1234;
7、獲取 主機(jī)/代理 IP
(1)Windows :在命令提示符中輸入ipconfig,記下與適配器1 相同名稱(chēng)的適配器IP地址;
(2)Unix :在命令提示符中輸入ifconfig,記下與適配器1 相同名稱(chēng)的適配器IP地址;
8、接著在MobSF 虛機(jī)中選中Wi-Fi設(shè)置,設(shè)置代理IP(上一步獲取到的IP)和端口(1337);
9、保存設(shè)置,并回到MobSF虛機(jī)的Home界面上,等待大約30秒的時(shí)間,之后保存好 MobSF虛機(jī)的快照;
10、一旦快照保存好,右擊MobSF虛機(jī),選擇“在Explorer中顯示”或者“在 Finder中顯示”;
11、在任意編輯器中打開(kāi)MobSF_VM_X.X.vbox文件(這里使用的是sublime),記下 VM UUID以及快照UUID;
接下來(lái),到了此時(shí),我們已經(jīng)有了如前文提到的,配置動(dòng)態(tài)分析器所需要的信息,
(1)VM UUID
(2)快照 UUID
(3)主機(jī)/代理 IP
(4)VM/設(shè)備 IP
12、接下來(lái)我們打開(kāi)MobSF/settings.py文件,并將其中參數(shù)的值設(shè)置如下,
(1)UUID = VM UUID
(2) SUUID = Snapshot UUID
(3)VM_IP = VM IP
(4)PROXY_IP = Host/Proxy IP
以下為配置樣本,
最后,我們重新再打開(kāi)服務(wù)器即可運(yùn)行。部分功能如下圖
靜態(tài)分析
Android APK
iOS IPA
動(dòng)態(tài)分析
Android APK
Web API Fuzzer
介紹內(nèi)容來(lái)自 FreeBuf黑客與極客



