當前位置:
首頁 > 新聞 > Scrounger:iOS和Android移動應用程序滲透測試框架

Scrounger:iOS和Android移動應用程序滲透測試框架

Scrounger是一個模塊化的移動應用程序滲透測試框架工具。它將Android和iOS這兩個主流的移動操作系統同時整合到了一個框架中,極大的方便和滿足了我們日常任務的需求。此外,Scrounger還具有使用方便、文檔豐富、易於擴展等優點。


視頻簡介


Scrounger由許多模塊組成,這些模塊都建立在一個強大的核心之上。這樣做的好處是,可以像Metasploit一樣易於擴展。如果你希望Scrounger執行其他檢查,你只需添加一個新模塊,然後通過Scrounger的互動式控制台或命令行界面執行。


此外,Scrounger同時包含了Android和iOS模塊。因此,在移動應用評估期間你不需要使用多款工具,而只需使用這一款工具學習一組命令就可以完成任務。


Scrounger中已經捆綁了幾個模塊,你可以運行這些模塊來對移動應用程序執行多項檢查。



運行條件


在主機和某些iOS二進位文件需要安裝某些軟體包。

但是,Scrounger已為我們打包了大多數iOS二進位文件,並提供了一個在設備上安裝它們的模塊。具體請參閱Scrounger GitHub頁面。


如果不滿足條件,某些模塊將無法運行。


另外,設備需要越獄和root許可權。


使用


Scrounger的使用主要有兩種方式:命令行或互動式控制台。


命令行主要用於執行所有檢查或自動化腳本。控制台用於運行一定數量的模塊或執行特定操作,例如反編譯,重新編譯和簽名應用程序,提取某些文件等。


命令行選項


使用命令行時,你可以列出可用模塊及其參數,可用設備,執行完整分析(運行特定類型應用程序的所有模塊 - Android或iOS)並運行特定模塊,同時傳遞必要的參數。


以下是在Android應用程序上使用Scrounger命令行運行特定模塊的示例。


首先,我們列出要運行模塊的所需選項,然後運行。



控制台示例


控制台包含了幾個強大的選項,提供自動完成(包括文件路徑自動完成),模塊搜索,能夠重新使用來自其他模塊的結果作為參數、命令使用歷史以及反向搜索已使用的命令。


以下是控制台列出iOS可用模塊的示例。



除了列出模塊外,還將顯示模塊功能的簡要說明。對於iOS和Android,有兩種主要類型的模塊,misc和analysis。misc模塊是輔助模塊,對應用程序,其文件/設備執行多個操作。為了評估是否存在任何的安全漏洞,analysis模塊將分析應用程序文件,應用程序本身及其生成的文件。


首先,我們運行options命令查看特定模塊所需的參數(這和Metasploit是一樣的)。options命令還會顯示全局選項。如果設置了該參數並且有模塊使用了相同參數,則它的值將被自動設置。設置好了所需參數,我們再次運行options命令確保已正確設置了所有選項,並使用run命令運行模塊。


可以看到,Scrounger通過運行某些模塊生成了一些輸出和結果,這些結果也可以被其他模塊所使用。



我們可以使用show results命令來查看執行其他模塊返回的所有存儲結果。print命令可用於顯示存儲在某個結果上的值,也可用於列印存儲在全局或模塊參數中的值。如果你想在其它模塊中使用這些結果,可以通過result:關鍵字設置使用。設置完成後運行模塊即可。


設備示例


有幾個模塊將需要與IOS或Android設備進行交互。在命令行或控制台中添加設備也非常的簡單。



在此示例中,我們將使用add_device命令將一個Android設備添加到控制台(它將嘗試獲取連接的設備並將其顯示為可選項)。然後,使用set global命令,我們將設備設置為device 1。使用misc/list_apps命令時,由於已設置全局選項並且存在具有相同名稱的模塊參數,因此它將自動填充該參數的值。

可擴展性


Scrounger的可擴展性,可以讓你輕鬆的包含自定義模塊,並根據滲透測試人員的偏好執行自定義的檢查。安裝Scrounger時,將會為你創建所有所需目錄。在~/.scrounger/modules/custom下,已為你創建了一個自定義模塊目錄。


在以下示例中,創建了一個自定義模塊並放置在了custom/analysis/ios/目錄下。從路徑就可以判斷出,false_positive模塊是一個針對iOS應用程序的模塊。



創建你自己的模塊


創建自定義模塊非常的簡單,只需三個步驟:根據模塊要執行的操作在正確的模塊目錄下創建文件,創建兩個變數meta和options,以及函數run。


示例:


下次啟動scrounger-console時,新創建的文件將會自動添加到可用模塊列表中。在創建模塊時,還需要考慮許多其它的元素,尤其是analysis模塊。更多信息請參閱Scrounger提供的有關所有可用模塊的全面文檔,以及如何創建自定義模塊的詳細說明:https://github.com/nettitude/scrounger/docs


真實場景案例


在典型的移動應用程序評估中,我們將嘗試運行儘可能多的模塊。Scrounger也考慮到了這一點,在控制台中我們可以通過一個名為full_analysis的模塊來運行所有模塊,在命令行中則添加-f選項即可。


此選項/模塊將反編譯應用程序,並運行所有必要的輔助模塊以及其他可用模塊。然後創建一個JSON文件,其中包含返回report=True的各個模塊的結果和詳細信息。命令行可執行文件還有一個-p選項,用於讀取JSON文件並將所有結果和詳細信息列印到控制台。




後續開發、反饋和特別感謝


後續Scrounger將添加支持更多的功能。具體可以參見GitHub README的末尾部分。如果你有任何的反饋想法或建議,那麼歡迎你隨時在GitHub上提交。最後,特別感謝工具的所有開發人員!


Needle (https://github.com/mwrlabs/needle)


Drozer (https://github.com/mwrlabs/drozer)


iOS-application-analyser (https://github.com/timb-machine/ios-application-analyser)


*參考來源:nettitude,FB小編 secist 編譯,轉載請註明來自FreeBuf.COM


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

BlackHat 2018 | 將亮相的10款網路終端安全產品
將亮相的10款網路終端安全產品

TAG:FreeBuf |