APP 安全測試項總結

King發表於2024-06-14

一、靜態分析

程式碼審查:檢查程式碼是否存在安全漏洞,如硬編碼密碼、敏感資訊明文儲存等。
配置檔案分析:分析 APP 的配置檔案,檢視是否存在不當的許可權設定等。
反編譯測試:使用反編譯工具(如 dex2jar 和 jd-gui)檢查原始碼是否進行了混淆,以及是否包含敏感資訊。
二、動態分析

行為監測:在執行環境中監測 APP 的行為,包括網路通訊、資料處理等。
漏洞掃描:使用專門的漏洞掃描工具,查詢已知的安全漏洞。
攻擊模擬:模擬各種攻擊場景,如 SQL 注入、跨站指令碼攻擊(XSS)等,觀察 APP 的反應。
三、滲透測試

由專業人員嘗試進行各種攻擊手段,以發現潛在漏洞。

四、安全審計

對整個 APP 的開發流程、安全策略等進行審查。

五、惡意軟體檢測

檢查 APP 是否被植入惡意程式碼或捆綁惡意軟體。

六、介面安全性測試

測試與外部系統互動的介面是否存在安全隱患。

七、資料保護檢測

資料儲存安全:測試應用程式是否正確地處理和保護使用者資料,包括加密儲存、資料清除、檔案許可權、資料庫訪問等。
資料傳輸測試:測試資料在傳輸過程中的安全性和可靠性,包括加密演算法的正確性和安全性、資料傳輸的穩定性和可靠性,以及防止資料洩露和篡改的能力等。
八、身份驗證測試

驗證 APP 應用的登入功能是否安全、可靠。測試內容包括驗證使用者名稱和密碼的正確性、驗證碼的複雜性和正確性,以及登入功能的穩定性和安全性等。

九、安裝包測試

簽名校驗:檢查簽名使用的 key 是否正確,以防被惡意第三方應用覆蓋安裝。
完整性校驗:確保安裝包不會在測試完成到最終交付過程中發生檔案損壞,一般檢查檔案的 md5 值。
許可權設定檢查:對 APP 申請某些特定許可權的必要性進行檢查,如訪問通訊錄等。對於沒有必要的許可權,建議直接移除。
十、其他測試項

許可權管理:測試應用程式是否正確管理和使用許可權,包括敏感許可權的請求、許可權請求的授權方式、許可權是否真正需要以及許可權濫用的防範等。
應用程式容器安全:測試應用程式在容器環境中的安全性,包括與其他應用程式的隔離、容器本身的安全控制等。
安全配置管理:測試應用程式的安全配置是否正確且安全,包括是否啟用除錯模式、是否禁用不安全的配置選項等。
安全日誌和監控:測試應用程式是否能夠有效地記錄安全事件和異常,並進行監控和報警。

相關文章