梆梆安全的移動(dòng)應(yīng)用測評(píng)云平臺(tái)能夠幫助移動(dòng)應(yīng)用開發(fā)者對(duì)其APP進(jìn)行全面的安全測評(píng),測試包括自動(dòng)和人工兩種方式,測評(píng)項(xiàng)目包括安全檢測、風(fēng)險(xiǎn)評(píng)估和漏洞掃描三類。測評(píng)結(jié)束后,開發(fā)者會(huì)獲得一份安全測評(píng)報(bào)告,里面記錄了每個(gè)測評(píng)項(xiàng)目的測評(píng)目的、測評(píng)項(xiàng)目可能產(chǎn)生的危害、測評(píng)項(xiàng)目的詳細(xì)內(nèi)容以及相應(yīng)的解決方案。一般在自動(dòng)測評(píng)方式下,開發(fā)者就可以獲知當(dāng)前應(yīng)用所面臨的主要安全問題,而人工測評(píng)方式由專業(yè)滲透和逆向測試工程師進(jìn)行,能夠幫助開發(fā)者對(duì)其應(yīng)用進(jìn)行更加全面和細(xì)致的安全測評(píng)。
移動(dòng)應(yīng)用的安全檢測
安全檢測可以幫助應(yīng)用開發(fā)者檢查其所開發(fā)應(yīng)用APK的內(nèi)部行為是否符合安全規(guī)范,一共會(huì)檢測7個(gè)項(xiàng)目。
(1) 病毒檢測,顧名思義就是檢測APK是否含有病毒特征。
(2) 敏感行為檢測包括短信、彩信行為檢測,上網(wǎng)行為檢測,系統(tǒng)破壞行為檢測,安裝卸載行為檢測,隱私竊取行為檢測,收藏夾篡改檢測,動(dòng)態(tài)加載行為檢測。
(3) 配置文件檢測會(huì)分別對(duì)APK里的Receiver組件和Service組件進(jìn)行檢測。
(4) 權(quán)限檢測主要是進(jìn)行APK敏感權(quán)限和冗余權(quán)限的檢測。
(5) 敏感詞檢測包含代碼檢測和資源檢測兩項(xiàng)。
(6) 廣告檢測主要測評(píng)APK里是否有廣告內(nèi)容。
(7) 動(dòng)態(tài)檢測主要是進(jìn)行上網(wǎng)行為檢測、本地配置文件讀寫檢測、數(shù)據(jù)文件讀寫檢測、SD卡文件讀寫檢測、短信行為參數(shù)解析、彩信行為、加解密算法檢測、反射類和方法調(diào)用檢測以及隱私泄密。
以上這些安全檢測可以提前幫助應(yīng)用開發(fā)者發(fā)現(xiàn)其APP內(nèi)部是否存在信息泄露、權(quán)限混亂等危險(xiǎn)。而且這些檢測項(xiàng)目都可以通過自動(dòng)方式完成。
移動(dòng)應(yīng)用的風(fēng)險(xiǎn)評(píng)估
風(fēng)險(xiǎn)評(píng)估能夠檢測APK在實(shí)際應(yīng)用中可能面臨的外部風(fēng)險(xiǎn),比如二次打包、反編譯、數(shù)據(jù)泄漏等。風(fēng)險(xiǎn)評(píng)估包含41個(gè)測評(píng)項(xiàng)目,其中有9項(xiàng)可以通過自動(dòng)方式完成,其余的項(xiàng)目則需要通過人工方式進(jìn)行測評(píng)。
在可以自動(dòng)測評(píng)的項(xiàng)目里,代碼保護(hù)會(huì)檢測JAVA層代碼是否有保護(hù)、是否做過混淆、是否有調(diào)試符號(hào);Java層調(diào)試會(huì)檢測AndroidManifest中的調(diào)試標(biāo)記;組件安全評(píng)估會(huì)檢測AndroidManifest中的組件是否能夠被導(dǎo)出;敏感函數(shù)調(diào)用會(huì)檢測APP中是否包含敏感函數(shù),例如短信操作、聯(lián)系人操作等等;調(diào)試日志函數(shù)評(píng)估用于檢測APP中是否有調(diào)試日志函數(shù)調(diào)用;動(dòng)態(tài)調(diào)試可以檢測APP是否可被動(dòng)態(tài)調(diào)試,應(yīng)用運(yùn)行時(shí)是否可以被GDB工具掛接;動(dòng)態(tài)注入可以檢測APP是否可被動(dòng)態(tài)注入;APP防篡改評(píng)估則會(huì)檢查應(yīng)用的代碼、資源文件、配置文件等被篡改(如添加廣告)后是否可以重新打包并正常運(yùn)行;明文數(shù)字證書風(fēng)險(xiǎn)評(píng)估則是檢測客戶端是否包含明文存儲(chǔ)的數(shù)字證書文件。
需要人工進(jìn)行的風(fēng)險(xiǎn)評(píng)估包括加固殼識(shí)別、完整性校驗(yàn)、卸載清除、版本升級(jí)、登錄控制、支付控制、支付密碼設(shè)置、雙因子認(rèn)證、超時(shí)重新鑒權(quán)、密碼強(qiáng)度、反編譯防范、測試數(shù)據(jù)包含、安裝包中敏感信息加密、第三方SDK安全、敏感信息顯示、敏感數(shù)據(jù)截獲、密碼專用鍵盤保護(hù)、未授權(quán)程序組件訪問、敏感數(shù)據(jù)存儲(chǔ)、敏感數(shù)據(jù)殘留、遠(yuǎn)程數(shù)據(jù)傳輸保密性、交易通信完整性、日志信息、界面切換后敏感信息需清空、通訊協(xié)議檢測、雙向認(rèn)證、重放攻擊、轉(zhuǎn)賬安全性檢測、界面劫持、截屏防范、遠(yuǎn)程數(shù)據(jù)傳輸保密性、交易通信完整性。
移動(dòng)應(yīng)用的漏洞掃描
漏洞掃描對(duì)于移動(dòng)應(yīng)用而言十分重要,漏洞掃描可以幫助開發(fā)者提前發(fā)現(xiàn)其APK里存在的安全漏洞,防止惡意攻擊者利用這些漏洞對(duì)應(yīng)用發(fā)起攻擊。
由于漏洞掃描的專業(yè)性,所以目前只能自動(dòng)檢測程序代碼內(nèi)部是否殘留測試使用的URL地址,以及應(yīng)用是否使用了具有任意下載APK漏洞的友盟SDK版本。數(shù)據(jù)庫注入、全局可讀寫內(nèi)部文件、Webview遠(yuǎn)程代碼執(zhí)行、瀏覽器的Intent Scheme URL攻擊、手勢密碼繞過、被調(diào)用安裝任意APK、被調(diào)用卸載任意APK、其他業(yè)務(wù)邏輯漏洞掃描則需要通過人工方式進(jìn)行。
自動(dòng)測評(píng)方式下單個(gè)APK包的檢測時(shí)間不超過10分鐘,而人工測試則會(huì)在2~3天內(nèi)完成。如果開發(fā)者希望進(jìn)行定制化的應(yīng)用測評(píng),可以單獨(dú)提出申請(qǐng)。
招募:凡對(duì)梆梆安全移動(dòng)應(yīng)用測評(píng)感興趣的用戶,可發(fā)送郵件yi.wan@secneo.com聯(lián)系相關(guān)工作人員。