移动APP漏洞自动化检测平台建设
前言:本文是《移動(dòng)APP客戶端安全筆記》系列原創(chuàng)文章中的第一篇,主要講的是企業(yè)移動(dòng)APP自動(dòng)化漏洞檢測平臺(tái)建設(shè),移動(dòng)APP漏洞檢測發(fā)展史與前沿技術(shù),APP漏洞檢測工具與平臺(tái),以及筆者的一些思考。希望能對移動(dòng)App自動(dòng)化漏洞檢測感興趣的同學(xué)有所幫助,限于筆者技術(shù)水平與文章篇幅,有些內(nèi)容暫沒有逐一詳細(xì)分析,后續(xù)我爭取多學(xué)習(xí)多分享,在此也歡迎大家指點(diǎn)和交流。
一、國內(nèi)Android App漏洞檢測發(fā)展簡史
1.1石器時(shí)代 (2007-2011)
關(guān)鍵詞:反編繹,人工審計(jì)
????2007年11年,Google正式發(fā)布了Android操作系統(tǒng),2011年12月,Google發(fā)布了Android 2.3版本,Android 應(yīng)用市場App數(shù)量突破10萬個(gè),隨著Android系統(tǒng)的完善及Android設(shè)備數(shù)量的增加,Android超過塞班成為主流智能手機(jī)操作系統(tǒng)。與此同時(shí),一些安全研究人員已經(jīng)敏感的嗅到了Android客戶端安全可能會(huì)成為未來的安全熱點(diǎn)之一,不少傳統(tǒng)的二進(jìn)制安全研究人員開始轉(zhuǎn)戰(zhàn)移動(dòng)安全。
這個(gè)時(shí)間段國內(nèi)對Android安全問題的關(guān)注主要集中在惡意App分析與檢測,App逆向與破解以及Android系統(tǒng)Root。對于Android客戶端安全問題剛主要集中在信息泄露,敏感權(quán)限使用的方面,通常使用反編繹工具分析APK源碼,然后進(jìn)行人工審計(jì)。?
1.2農(nóng)業(yè)時(shí)代 (2012-2014)
關(guān)鍵詞:自動(dòng)化審計(jì)、靜態(tài)分析、動(dòng)態(tài)分析?
????2012到2014年間,Google發(fā)布了Android4.0-5.0系統(tǒng),此間爆出不了不少Android 相關(guān)漏洞,比如影響深遠(yuǎn)的Webview遠(yuǎn)程代碼執(zhí)行漏洞,HTTPS中間人漏洞,讓越來越多的安全研究人員的焦點(diǎn)慢慢轉(zhuǎn)向Android App客戶端本身的安全漏洞挖掘上來。
國內(nèi)一些廠商也開始研發(fā)自己Android App自動(dòng)化審計(jì)系統(tǒng),其中最早的對外發(fā)布的騰訊金剛審計(jì)系統(tǒng)算是國內(nèi)這類產(chǎn)品的鼻祖之一,其早期版本在功能上實(shí)現(xiàn)了Android App自動(dòng)化靜態(tài)分析與簡單的動(dòng)態(tài)分析,審計(jì)點(diǎn)包括:明文保存敏感信息,文件權(quán)限問題,日志信息泄露,組件權(quán)限問題,明文傳輸,拒絕服務(wù)等。
此時(shí)遇到Android APP自動(dòng)化審計(jì)遇到的主要問題有:1.靜態(tài)分析主要依賴于關(guān)鍵詞匹配,如果缺少上下文分析與可達(dá)性分析,開發(fā)者正好自定義了一個(gè)相同關(guān)鍵詞的函數(shù),或者存在漏洞的代碼根本沒有調(diào)用到,則會(huì)產(chǎn)生誤報(bào)。2、大多Android App的代碼與UI是緊密交互的,如果動(dòng)態(tài)分析部分只進(jìn)行了簡單安裝啟動(dòng)App與自動(dòng)隨機(jī)點(diǎn)擊,無法覆蓋App大部分界面與功能,則無法覆蓋更多的應(yīng)用執(zhí)行路徑,產(chǎn)生有效業(yè)務(wù)數(shù)據(jù),容易導(dǎo)致漏報(bào)。
圖2 金剛審計(jì)系統(tǒng)主界面?
1.3工業(yè)時(shí)代 (2015-至今)
關(guān)鍵詞:模糊測試、污點(diǎn)分析、通用脫殼、UI自動(dòng)化遍歷
????從2015年開始,360捉蟲獵手(現(xiàn)改名為360顯微鏡),阿里聚安全等開放的在線Android App漏洞檢測平臺(tái)的出現(xiàn)讓開發(fā)者和安全研究者更加方便的進(jìn)行漏洞審計(jì),一些開源在線檢測平臺(tái)的出現(xiàn)(如MobSF)也降低了定制化APP漏洞審計(jì)系統(tǒng)的開發(fā)門檻。同時(shí)模糊測試,污點(diǎn)分析,通用脫殼,UI自動(dòng)化遍歷等學(xué)術(shù)界與工業(yè)界技術(shù)也開始被應(yīng)用到移動(dòng)App漏洞審計(jì)中。下面簡單談?wù)剮追N技術(shù)在Android App漏洞檢測領(lǐng)域的應(yīng)用,如果有讀者感到興趣的話后續(xù)再做詳細(xì)分享。?
1.3.1 Android App Fuzzing
????一般而言Fuzzing技術(shù)常用于二進(jìn)制漏洞挖掘,在移動(dòng)安全領(lǐng)域常見于挖掘系統(tǒng)組件漏洞(如libstagefright),文件解析類應(yīng)用漏洞(如adobe reader,視頻播放器)及第三方組件漏洞,常使用的工具有:peach/afl/honggfuzz,以及DroidFuzzer(https://github.com/manfiS/droidfuzzer)/MFFA(https://github.com/fuzzing/MFFA)等框架,為了提升成功率,通常可將幾種工具與框架組件使用,如AFL+PEACH+MFFA。除此之外,fuzzing技術(shù)同樣可用于測試Android 進(jìn)程間通信(IPC),比如intent fuzzer(https://github.com/MindMac/IntentFuzzer)可以直接檢測App拒絕服務(wù)等漏洞。?
圖3 KCon2016中安全研究人員提出的組合fuzzing框架?
1.3.2 Android App 污點(diǎn)分析
????污點(diǎn)分析可分為靜態(tài)污點(diǎn)分析與動(dòng)態(tài)污點(diǎn)分析。靜態(tài)污點(diǎn)分析不需要運(yùn)行程序,以FlowDroid為例,目前主流的App靜態(tài)污點(diǎn)分析技術(shù)主要包括如下步驟:
1. 解析應(yīng)用AndroidManifest.xml,Layout配置文件和相關(guān)Dex字節(jié)碼,根據(jù)預(yù)先建模的Android LifeCycle Model生成超調(diào)用圖 ,又稱過程間控制流圖(Inter-procedural control flow graph, ICFG);
2. 根據(jù)定義的污點(diǎn)源和錨點(diǎn)(Source and Sink),將其轉(zhuǎn)換為基于ICFG的后向或前向數(shù)據(jù)流問題進(jìn)行求解;
3. 根據(jù)求解結(jié)果,回答是否存在從某輸入到輸出的數(shù)據(jù)流流動(dòng)路徑,以顯式Intent問題為例,FlowDroid會(huì)檢測到一個(gè)以發(fā)送intent的sink方法到最后接收intent的source的路徑存在。
動(dòng)態(tài)污點(diǎn)分析則是在程序運(yùn)行中過程,通過跟蹤變量、內(nèi)存及寄存器的值,依據(jù)執(zhí)行流程跟蹤污點(diǎn)數(shù)據(jù)的傳播,最后達(dá)到跟蹤攻擊路徑與獲取漏洞信息的目的,以TaintDroid為例,需要對Android系統(tǒng)進(jìn)行定制化修改以便對App運(yùn)行過程中的污點(diǎn)數(shù)據(jù)進(jìn)行跟蹤,但由于Android設(shè)備或模擬器性能瓶頸問題,動(dòng)態(tài)污點(diǎn)分析無法獲取App所有可能的可執(zhí)行路徑。
以往污點(diǎn)分析常用于Android惡意App分析,信息泄露檢測等問題,現(xiàn)在越來越多的廠商也應(yīng)用于App漏洞檢測上(如阿里聚安全使用的基于TaintDroid方案)。相比傳統(tǒng)的App漏洞檢測,污點(diǎn)分析可以跟蹤污點(diǎn)數(shù)據(jù)的傳播過程,確定漏洞是否在實(shí)際環(huán)境中可能被觸發(fā),檢測能力更加強(qiáng)大。目前也有不少開源的Android污點(diǎn)分析方案與工具如:TaintDroid、FlowDroid、amadroid及CodeInspect,在此之上也發(fā)展出一些針對Android App漏洞檢測方面的工具,如騰訊科恩實(shí)驗(yàn)室Flanker之前開源的JAADS(https://github.com/flankerhqd/JAADAS)。
圖4 Flowdroid運(yùn)行流程?
1.3.3Android App 通用脫殼? ? ??App二次打包,破解等問題的泛濫催生了App加固產(chǎn)業(yè)的發(fā)展,兩者技術(shù)在也攻防中不斷發(fā)展和進(jìn)化,目前國內(nèi)主流的加固方案有梆梆,愛加密,百度加固,360加固,阿里聚安全,騰訊御安全/樂固,通付盾,NAGA等,對于在線漏洞檢測平臺(tái)來說,如果沒有通用的自動(dòng)化脫殼方案就意味無法對應(yīng)用市場中的很多App代碼進(jìn)行靜態(tài)分析,甚至由于應(yīng)用被加固無法運(yùn)行于模擬器中或特定測試設(shè)備中,影響動(dòng)態(tài)分析結(jié)果。? 目前針對dex文件加固主流的脫殼方法有靜態(tài)脫殼、內(nèi)存dump、Dalvik虛擬機(jī)插樁,第一種方法需要針對廠商加密方案不斷更新,基本不具備通用性,后面兩者的開源代表作有:ZjDroid(https://github.com/halfkiss/ZjDroid)與DexHunter(https://github.com/zyq8709/DexHunter)。
圖5 筆者整理的國內(nèi)部分APP加固方案?
1.3.4移動(dòng) AppUI自動(dòng)化遍歷
????App UI自動(dòng)化遍歷常在App開發(fā)測試中用于檢測App性能與兼容性,目前在App漏洞檢測領(lǐng)域用的比較少(主要由于效率較低)。一般主流的App漏洞檢測平臺(tái)都包含動(dòng)態(tài)分析,主要是安裝App后自動(dòng)運(yùn)行App并監(jiān)測App行為,通常使用的是Android Monkey test腳本或其它工具隨機(jī)點(diǎn)擊APP界面。
實(shí)際上,為了更深入的檢測App敏感信息泄露與后端WEB接口漏洞,僅靠隨機(jī)點(diǎn)擊App界面進(jìn)行動(dòng)態(tài)分析是不夠的(比如現(xiàn)在大部分App功能需要注冊登錄后才能使用),如果能更好的模擬正常用戶使用App的過程,則可以擴(kuò)展監(jiān)測Logcat日志,本地文件存儲(chǔ),網(wǎng)絡(luò)通信等數(shù)據(jù)審計(jì)能力。
????目前APP UI測試框架按原理可分為黑盒與白盒兩種,白盒測試需要在App開發(fā)時(shí)添加測試組件并調(diào)用,需要App完整源碼,黑盒測試一般提取App界面的UI元素并根據(jù)算法進(jìn)行遍歷,無需App源碼。筆者推薦的黑盒APP UI測試框架與工具主要有AndroidViewClient(https://github.com/dtmilano/AndroidViewClient)及國人基于Appium開發(fā)的appCrawler(https://testerhome.com/topics/5718)。
圖6 appCrawler生成的APP測試報(bào)告?
二、Android App漏洞檢測?
2.1 國內(nèi)Android App在線漏洞檢測平臺(tái)?
騰訊金剛審計(jì)系統(tǒng) http://service.security.tencent.com/kingkong 免費(fèi) 無限制
騰訊御安全 http://yaq.qq.com/ 免費(fèi) 查看漏洞詳情需認(rèn)證
阿里聚安全 http://jaq.alibaba.com/ 免費(fèi) 查看漏洞詳情需認(rèn)證
360顯微鏡 http://appscan.360.cn/ 免費(fèi) 無限制
360APP漏洞掃描 http://dev.360.cn/html/vulscan/scanning.html 免費(fèi) 無限制
百度MTC http://mtc.baidu.com 9.9元/次 無限制
梆梆 https://dev.bangcle.com 免費(fèi) 無限制
愛內(nèi)測 http://www.ineice.com/ 免費(fèi) 無限制
通付盾 http://www.appfortify.cn/ 免費(fèi) 無限制
NAGA http://www.nagain.com/appscan/ 免費(fèi) 無限制
GES審計(jì)系統(tǒng) http://01hackcode.com/ 免費(fèi) 無限制
注:排名不分先后?
2.2開源Android App漏洞檢測工具?
1.MobSF
????Github:https://github.com/ajinabraham/Mobile-Security-Framework-MobSF
Mobile Security Framework(MobSF)是印度安全公司(http://opensecurity.in)開發(fā)的一個(gè)智能化、一體化的開放源代碼的移動(dòng)應(yīng)用(Android / iOS)自動(dòng)化測試框架,支持靜態(tài)和動(dòng)態(tài)分析,App后端Web API漏洞檢測。
主要特點(diǎn):基于Python Django的開源在線漏洞檢測框架,前端UI完善,基礎(chǔ)功能全面,安裝布署方便,但總體來說審計(jì)點(diǎn)偏少,不適合實(shí)戰(zhàn),更適合輔助分析與二次開發(fā),國內(nèi)目前不少在線APP檢測的平臺(tái)都有這個(gè)框架的影子。
圖7 MobSF生成的檢測報(bào)告?
2.Drozer
????Drozer是MWR Labs開發(fā)的一個(gè)開源Android 安全測試框架,支持編寫自定義模塊。目前已經(jīng)有不少介紹Drozer文章,這里就不多說了。
圖8 Drozer運(yùn)行界面?
3.Marvin
Github:https://github.com/programa-stic/
Marvin是西班牙Programa STIC組織發(fā)布一個(gè)開源Android App漏洞檢測框架,該框架主要分為四個(gè)項(xiàng)目:
(1)Marvin-Django
主要包含框架前端UI界面與數(shù)據(jù)庫部分;
(2)Marvin static analyzer
一個(gè)主要基于Androguard 及Static Android Analysis Framework (SSAF)的Android App靜態(tài)分析引擎。
(3)Marvin Dynamic Analyzer
一個(gè)APP動(dòng)態(tài)分析引擎,基于OpenNebula及Android-x86 模擬器,可搭建分布式分析系統(tǒng),用于復(fù)現(xiàn)靜態(tài)分析發(fā)布的漏洞與動(dòng)態(tài)檢測漏洞。
(4)Marvin toqueton
一個(gè)自動(dòng)化遍歷APP UI的工具,用于分析APP UI控件并進(jìn)行自動(dòng)化交互遍歷,輔助動(dòng)態(tài)分析。
主要特點(diǎn):
筆者剛看到這個(gè)項(xiàng)目發(fā)布時(shí)研究了一番,主要特點(diǎn)有可直接搜索下載Google應(yīng)用商店或者上傳應(yīng)用進(jìn)行分析,可編寫自定義靜態(tài)分析腳本,使用動(dòng)態(tài)引擎復(fù)查靜態(tài)分析的結(jié)果提升準(zhǔn)確性,使用本地應(yīng)用去遍歷APP UI等,但仔細(xì)實(shí)踐后發(fā)現(xiàn)動(dòng)態(tài)分析環(huán)境(ubuntu+openNebula+Android-X86)的布署很麻煩,多次嘗試都未成功。
圖9 Marvin主界面?
4.Inspeckage
https://github.com/ac-pm/Inspeckage
一個(gè)Xposed插件,用于調(diào)試分析Android App。
主要特點(diǎn):
使用方便,自帶WEB界面,裝Xposed插件可以分分鐘開始挖漏洞;2.功能全面:查看Manifest信息,監(jiān)控本地文件讀寫,查看文件內(nèi)容,查看Logcat日志,查看網(wǎng)絡(luò)通信請求(支持SSL uncheck),監(jiān)控IPC通信,查看加密操作,調(diào)用未導(dǎo)出組件等。
圖10 Inspeckage主界面?
三、iOS App漏洞檢測?
????一般來說iOS App由于iOS系統(tǒng)安全限制(非越獄環(huán)境),且無法直接反編繹獲取App源碼,其在安全性上遠(yuǎn)高于Android App,但近兩年前隨著XcodeGhost(https://security.tencent.com/index.php/blog/msg/96),iBackDoor,AFNetworking中間人等后門事件與漏洞的曝光,iOS App安全性也慢慢受到國內(nèi)開發(fā)者與安全研究人員的關(guān)注。
3.1 常見iOS App漏洞測試工具?
????測試iOS App安全性離不開一臺(tái)越獄過的iOS設(shè)備,以及一些測試?yán)?。在此簡單簡介兩個(gè)iOS App安全測試工具:
1.Idb
圖11 Idb主界面?
官網(wǎng):http://www.idbtool.com
Github:https://github.com/dmayer/idb
Idb是一款開源的iOS App安全評(píng)估工具,作者是Danl A.Mayer。
主要功能:
1.查看應(yīng)用以下信息:應(yīng)用包名;注冊的URL Schemes;SDK版本;應(yīng)用數(shù)據(jù)文件夾位置;應(yīng)用權(quán)限等,
2.查看/下載應(yīng)用數(shù)據(jù)文件;
3.查看應(yīng)用文件保護(hù)級(jí)別;
4.Dump iOS keychain;
5.檢測應(yīng)用是否加密;
6.檢測應(yīng)用編繹安全選項(xiàng)(ASLR/PIE, DEP, ARC);
7.查看應(yīng)用的shared libraries;
8.提取應(yīng)用binary中的字符串;
9.Class dump;
10.查看應(yīng)用URL Handler;
11.Invoke and fuzz URL handlers;
12.查看系統(tǒng)剪切板
13.截屏
14.安裝系統(tǒng)證書;
15.編輯 /etc/hosts文件;
16.查看系統(tǒng)日志;
2.Needle?
圖12 Needle主界面?
Github:https://github.com/mwrlabs/needle
Needle是MWR Labs開發(fā)的一個(gè)開源iOS安全測試框架,同樣支持開發(fā)自定義模塊來擴(kuò)展Needle的功能,目前主要功能包含對iOS應(yīng)用數(shù)據(jù)存儲(chǔ),IPC,網(wǎng)絡(luò)通信,靜態(tài)代碼分析,hooking及二進(jìn)制文件防護(hù)等方面的安全審計(jì)。
與drozer類似,Needle提供了一個(gè)shell界面,基本idb有的功能needle都有或者說以后也會(huì)有(因?yàn)榭梢宰约簩懩K),而Needle還同時(shí)支持Cycript與Frida兩個(gè)hooking方案,可以方便的加載hook腳本與執(zhí)行命令。
3.2 iOS App自動(dòng)化漏洞檢測?
????在很長一段時(shí)間內(nèi),iOS安全研究都主要集中在iOS系統(tǒng)安全漏洞挖掘中,由于iOS相對安全的系統(tǒng)機(jī)制保護(hù)與嚴(yán)格的審核機(jī)制,iOS App安全性一般比Android App要高不少,歷史上出現(xiàn)的過一些iOS App漏洞也主要集中在iOS越獄環(huán)境下,但近年來XcodeGhost,AFNetworking框架中間人漏洞以及多個(gè)惡意SDK曝光也說明了iOS App安全性并沒有我們想像的那么高,建設(shè)iOS App自動(dòng)化漏洞審計(jì)平臺(tái)對于擁有大量iOS App產(chǎn)品的企業(yè)來說還是很有必要的。
為了提升公司iOS App安全漏洞審計(jì)能力與應(yīng)急能力,筆者與riusksk(林大夫)從2015年底開始一起研發(fā)iOS App漏洞審計(jì)系統(tǒng)(后續(xù)并入金剛),目前已經(jīng)成功上線近半年,也輔助發(fā)現(xiàn)了一些iOS App業(yè)務(wù)安全漏洞,詳情可參考文章:https://security.tencent.com/index.php/blog/msg/105
此外360NirvanTeam(http://nirvan.360.cn)也上線了在線檢測功能,開源方案MobSF也有iOS App在線審計(jì)功能。此類審計(jì)平臺(tái)主要審計(jì)點(diǎn)有:BIN文件分析,第三方庫漏洞檢測,XCodeGhost檢測,惡意SDK檢測等。相對來說金剛更為全面,適合開發(fā)上線前自查與安全研究人員輔助分析,包含了私有API檢測,開放端口檢測,應(yīng)用文件審計(jì),網(wǎng)絡(luò)通信數(shù)據(jù)審計(jì),日志審計(jì),classdump等功能,后續(xù)還會(huì)繼續(xù)優(yōu)化iOS App UI自動(dòng)化遍歷功能與URL scheme Fuzzing功能。
圖13 TSRC iOS App漏洞審計(jì)報(bào)告部分內(nèi)容?
四、構(gòu)建移動(dòng)App漏洞檢測平臺(tái)?
? ??目前國內(nèi)無論是3BAT,還是移動(dòng)安全公司,都已經(jīng)提供了移動(dòng)APP漏洞檢測產(chǎn)品,筆者平時(shí)也會(huì)對這些平臺(tái)做一些深度體驗(yàn),總體來說隨著技術(shù)發(fā)展,構(gòu)建APP漏洞檢測平臺(tái)門檻已經(jīng)很低技術(shù)也很成熟了。? 在移動(dòng)互聯(lián)網(wǎng)時(shí)代,不同的企業(yè)對于移動(dòng)APP產(chǎn)品安全性要求是不一樣的,如金融,支付,通信,游戲類APP產(chǎn)品對App客戶端安全,業(yè)務(wù)安全,后端服務(wù)器安全都提出了很高要求,定制企業(yè)自已的移動(dòng)APP漏洞檢測平臺(tái)還是很有必要的。
筆者僅從個(gè)人角度談?wù)剬θ绾螛?gòu)建移動(dòng)App漏洞檢測平臺(tái)的幾點(diǎn)看法:
(1)在平臺(tái)建設(shè)之初可以參考業(yè)界優(yōu)秀的同類產(chǎn)品與開源方案,目前大部分移動(dòng)App漏洞檢測平臺(tái)后端基本功能都是使用Python/Java開發(fā),便于快速開發(fā)迭代。
(2)移動(dòng)APP安全威脅是不斷變化的,漏洞審計(jì)規(guī)則也應(yīng)該支持快速更新,同時(shí)企業(yè)移動(dòng)App漏洞檢測平臺(tái)應(yīng)該滿足移動(dòng)App產(chǎn)品正式上線前審計(jì),上線后日常排查兩個(gè)基本需求。
(3)很多開發(fā)人員和安全工程師對漏洞的理解是不一致的,在輸出漏洞檢測報(bào)告后,還需要提供詳細(xì)的漏洞利用場景講解與修復(fù)指引。
(4)多多關(guān)注學(xué)術(shù)界與工業(yè)界的新研究成果,如果能加入優(yōu)化與利用,可以推動(dòng)平臺(tái)整個(gè)技術(shù)能力的進(jìn)步。
(5)平臺(tái)的主要建設(shè)者應(yīng)該精通移動(dòng)App漏洞挖掘?qū)崙?zhàn),能夠針對企業(yè)重點(diǎn)產(chǎn)品特性(如動(dòng)態(tài)加載,熱補(bǔ)丁等技術(shù))提供專業(yè)的解決方案。
同時(shí)筆者提出了一個(gè)甲方/乙方企業(yè)通用的移動(dòng)App漏洞檢測平臺(tái)架構(gòu),企業(yè)可以在此基礎(chǔ)上直接接入Web漏洞掃描系統(tǒng)掃描App后端Web漏洞,也可以收集URL測試業(yè)務(wù)安全漏洞。?
圖14 移動(dòng)App自動(dòng)化漏洞檢測平臺(tái)架構(gòu)?
五、未來移動(dòng)App漏洞檢測平臺(tái)發(fā)展方向
????在Google最新發(fā)布的Android 7.0系統(tǒng)增加了不安全特性,如APP開發(fā)者可以使用系統(tǒng)提供的接口自主配置信任的證書,默認(rèn)也不再信任用戶安裝的第三方CA證書,此舉可提升Android App網(wǎng)絡(luò)通信的安全性。
可見未來移動(dòng)APP安全問題還將不斷變化,目前大部分移動(dòng)APP漏洞檢測平臺(tái)最終的檢測結(jié)果也需要專業(yè)的安全研究人員評(píng)估實(shí)際風(fēng)險(xiǎn),歷史上很多移動(dòng)端嚴(yán)重漏洞也是需要結(jié)合業(yè)務(wù)場景的,所以說移動(dòng)App漏洞檢測平臺(tái)也只是企業(yè)移動(dòng)App安全建設(shè)中的一環(huán),此外推動(dòng)移動(dòng)安全人才培養(yǎng),移動(dòng)App安全開發(fā)規(guī)范,應(yīng)用加固,盜版監(jiān)測等體系建設(shè)也同樣重要。
筆者個(gè)人認(rèn)為未來移動(dòng)APP漏洞檢測平臺(tái)可發(fā)展的幾個(gè)方向有:
1.機(jī)器學(xué)習(xí)
????機(jī)器學(xué)習(xí)在網(wǎng)絡(luò)安全領(lǐng)域常用于惡意軟件檢測,流量檢測等方面,目前也已經(jīng)出現(xiàn)一些利用機(jī)器學(xué)習(xí)進(jìn)行Android惡意應(yīng)用等方面的開源工具(https://github.com/mwleeds/android-malware-analysis)與研究,未來同樣也可能應(yīng)用于Android App漏洞檢測。
2.威脅感知與大數(shù)據(jù)
????如何從移動(dòng)App中挖掘數(shù)據(jù),并分析,整合進(jìn)而利用于漏洞檢測與威脅感知也是未來移動(dòng)APP漏洞檢測發(fā)展方向之一。目前部分漏洞檢測平臺(tái)已經(jīng)開始支持采集應(yīng)用市場所有移動(dòng)APP源碼及運(yùn)行過程中產(chǎn)生的網(wǎng)絡(luò)通信數(shù)據(jù)(如域名,IP,URL等),進(jìn)行聚合分析與WEB接口漏洞檢測。同時(shí)四維智創(chuàng),梆梆等安全公司開始推廣移動(dòng)應(yīng)用威脅感知產(chǎn)品,此類產(chǎn)品通過SDK收集應(yīng)用的行為與網(wǎng)絡(luò)數(shù)據(jù),用于檢測APT攻擊,防刷單等場景。
3.社區(qū)化
????目前國內(nèi)已經(jīng)有一些社區(qū)化的WEB漏洞檢測平臺(tái),如Seebug,Tangscan等,盤古即將公測的Janus(http://appscan.io)也同樣開始主打社區(qū)化,Janus支持社區(qū)用戶自定義檢測規(guī)則,后臺(tái)結(jié)合海量全網(wǎng)應(yīng)用數(shù)據(jù),可用于全網(wǎng)應(yīng)用快速漏洞掃描。同時(shí)社區(qū)化加入了安全研究員的人工審計(jì)流程,后續(xù)可以不斷提升漏洞特征建模的細(xì)度與廣度,提升平臺(tái)檢測能力。
文章純屬原創(chuàng),轉(zhuǎn)載請注明出處,同時(shí)感謝lake2,riusksk,Flanker,小荷才露尖尖角,瘦蛟舞的指點(diǎn)。
參考資料:
[1] http://www.ijcaonline.org/research/volume134/number7/dhavale-2016-ijca-907855.pdf
[2] http://www.droidsec.cn/
[3] https://loccs.sjtu.edu.cn/
[4] http://jaq.alibaba.com/community/index.htm
[5] http://drops.wooyun.org/
[6] https://blog.flanker017.me/
原文地址: https://security.tencent.com/index.php/blog/msg/109
總結(jié)
以上是生活随笔為你收集整理的移动APP漏洞自动化检测平台建设的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BLE 安全之虫洞攻击
- 下一篇: Binder fuzz安全研究