現代人手都是智慧型手機,APP 市場佔據一片江山,對開發商來說,面臨的各種資安考驗越來越多,行政院亦推動工業局與資策會成立「行動應用App基本資安規範」,期望讓台灣 App 開發的安全性更加提高。
APP 相關檢測工具越來越多選擇,黑箱、白箱測試各有好產品,自動化測試更是節省開發團隊時間的重要利器。
需求困境
無奈的是,這類 App 的自動化檢測工具價格不低,許多團隊礙於資金問題,心有餘而力不足。
這張投影片真好用,一次製作常常用到(誤)
替代方案
沒關係,我們可以從開源專案中找到可以使用的替代方案,即便比不上需要花錢購買的商業套件,但也能夠達到一定的效果,效益絕對比沒有使用前大大提升。
這就是我找到的開源解決方案,介面美觀、操作容易,分享經驗如下。
MobSF(Mobile-Security-Framework)是一款基於 Python 開發的 APP 自動化測試框架,可以在 Windows、macOS、Linux 上運作使用。
安裝完成後,使用 python manage.py runserver 命令即可將服務執行起來。
操作方式非常非常非常簡單,只要將 apk 或 ipa 檔案直接拖曳進網站即開始進靜態分析。
經過一段時間檢測完成後,畫面會自動切到檢視頁面,這個介面清楚簡單,數據直接呈現在儀表板上。
點選左側類別可進入查看,對於不同的問題,MobSF 會自動在報告上寫出問題原因、危險等級,以及所在檔案,點選後的檔案可以直接進入反編譯後的原始碼。
如果檢測的對象是 Android 系統 App,可以點選功能表下方的 [Start Dynamic Analysis] 進入動態分析功能。
進入介面後,MobSF 會自動將 VirtualBox 上安裝好的 Android VM 帶出來,點選 [Create Environment] 後即可將 Apk 帶入 VM 裡完成準備程序。
啟動成功後,可以分別使用 [Start Exported Activity Tester] 、 [Start Activity Tester] 進行各種測試,按下 [Take a Screenshot] 則可以查看目前運作的情況。
當動態分析的項目全部測試完成後,點選 [Finish] 即可進入動態分析的報告頁面。
動態分析報告裡有非常詳盡的資料,例如各 API 呼叫的歷程、檔案存取、簡訊使用、電話撥打行為、網路流量、... 等,可以協助軟體測試人員省下大量的時間,專注於更重要的任務。
當專案測試完畢,靜態與動態分析都可以將報告匯出成 pdf 檔,方便遞交使用。
日後若想要再回頭查看資料時,不用浪費時間重新測試,點選畫面上方的 [Recent Scans] 即可進入曾經做過的檢測,再點進去即可查看當時的檢測報告。
一套功能這麼強大、方便又自動化的開源測試工具,讓我使用之後感到意外驚喜,MobSF 真的是 App 軟體開發團隊的超級好朋友啊!
😎😎😎
MobSF 相關資料整理
這就是我找到的開源解決方案,介面美觀、操作容易,分享經驗如下。
「MobSF」
MobSF(Mobile-Security-Framework)是一款基於 Python 開發的 APP 自動化測試框架,可以在 Windows、macOS、Linux 上運作使用。
功能簡介:
- 支援 APK (Android)、IPA (iOS) App 靜態分析
- 支援 APK (Android) 動態分析
- 檢測 程式簽署、索取權限、API 呼叫等
- 惡意行為分析
- 提供 Manifest、Code、File 安全性分析
- 更多...
使用經驗
安裝完成後,使用 python manage.py runserver 命令即可將服務執行起來。
服務運作中畫面
操作方式非常非常非常簡單,只要將 apk 或 ipa 檔案直接拖曳進網站即開始進靜態分析。
App 上傳檢測介面
經過一段時間檢測完成後,畫面會自動切到檢視頁面,這個介面清楚簡單,數據直接呈現在儀表板上。
檢測結果儀表版
點選左側類別可進入查看,對於不同的問題,MobSF 會自動在報告上寫出問題原因、危險等級,以及所在檔案,點選後的檔案可以直接進入反編譯後的原始碼。
安全性分析報告
如果檢測的對象是 Android 系統 App,可以點選功能表下方的 [Start Dynamic Analysis] 進入動態分析功能。
Apk 動態分析
進入介面後,MobSF 會自動將 VirtualBox 上安裝好的 Android VM 帶出來,點選 [Create Environment] 後即可將 Apk 帶入 VM 裡完成準備程序。
啟動成功後,可以分別使用 [Start Exported Activity Tester] 、 [Start Activity Tester] 進行各種測試,按下 [Take a Screenshot] 則可以查看目前運作的情況。
當動態分析的項目全部測試完成後,點選 [Finish] 即可進入動態分析的報告頁面。
動態分析結果報告
動態分析報告裡有非常詳盡的資料,例如各 API 呼叫的歷程、檔案存取、簡訊使用、電話撥打行為、網路流量、... 等,可以協助軟體測試人員省下大量的時間,專注於更重要的任務。
當專案測試完畢,靜態與動態分析都可以將報告匯出成 pdf 檔,方便遞交使用。
查看歷史測試記錄
日後若想要再回頭查看資料時,不用浪費時間重新測試,點選畫面上方的 [Recent Scans] 即可進入曾經做過的檢測,再點進去即可查看當時的檢測報告。
心得結論
一套功能這麼強大、方便又自動化的開源測試工具,讓我使用之後感到意外驚喜,MobSF 真的是 App 軟體開發團隊的超級好朋友啊!
😎😎😎
參考資訊
MobSF 相關資料整理