發(fā)布會(huì)現(xiàn)場演示應(yīng)用克隆漏洞
「應(yīng)用克隆」漏洞產(chǎn)生的原因,以及將被如何利用?
發(fā)布會(huì)上,于旸指出:“多點(diǎn)耦合產(chǎn)生了可怕漏洞,所謂多點(diǎn)耦合,是 A 點(diǎn)看上去沒問題,B 點(diǎn)看上去也沒問題,但是 A 和 B 組合起來,就組成了一個(gè)大問題。”
「應(yīng)用克隆」漏洞產(chǎn)生的原因是在?安卓 APP 中,WebView?開啟了?file?域訪問,且允許?file?域?qū)?http?域進(jìn)行訪問,同時(shí)未對(duì)?file?域的路徑進(jìn)行嚴(yán)格限制所致?!笐?yīng)用克隆」漏洞只會(huì)影響使用?WebView?控件,開啟了 file?域訪問并且未按安全策略開發(fā)的安卓 APP。由此可見,「應(yīng)用克隆」?攻擊的成功實(shí)施需要多個(gè)漏洞的相互配合。
據(jù)介紹,「應(yīng)用克隆」漏洞至少涉及國內(nèi)10%的主流?安卓 APP,幾乎影響國內(nèi)所有安卓用戶。黑客可利用?Android?平臺(tái)?WebView?控件的跨域訪問漏洞(CNVD-2017-36682),遠(yuǎn)程獲取用戶隱私數(shù)據(jù)(包括手機(jī)應(yīng)用數(shù)據(jù)、照片、文檔等敏感信息),還可竊取用戶登錄憑證,在受害者毫無察覺的情況下實(shí)現(xiàn)對(duì)?APP?用戶賬戶的完全控制。?
解決方案
值得慶幸的是,騰訊安全玄武實(shí)驗(yàn)室在不法黑客前發(fā)現(xiàn)了「應(yīng)用克隆」攻擊模型,占據(jù)了攻防主動(dòng)。目前,受影響的APP廠商都已完成或正在積極的修復(fù)當(dāng)中,具體修復(fù)可以參考國家信息安全漏洞共享平臺(tái)聯(lián)合騰訊提供的臨時(shí)解決方案,如下所示:
file域訪問為非功能需求時(shí),手動(dòng)配置setAllowFileAccessFromFileURLs?或setAllowUniversalAccessFromFileURLs?兩個(gè)?API?為?false。(Android4.1版本之前這兩個(gè)?API?默認(rèn)是?true,需要顯式設(shè)置為?false)
若需要開啟file域訪問,則設(shè)置?file?路徑的白名單,嚴(yán)格控制?file?域的訪問范圍,具體如下:
(1)固定不變的?HTML?文件可以放在?assets?或?res?目錄下,file:///android_asset?和?file:///android_res 在不開啟?API?的情況下也可以訪問;
(2)可能會(huì)更新的?HTML?文件放在/data/data/(app) 目錄下,避免被第三方替換或修改;
(3)對(duì)?file?域請(qǐng)求做白名單限制時(shí),需要對(duì)“../../”特殊情況進(jìn)行處理,避免白名單被繞過。
避免APP 內(nèi)部的WebView?被不信任的第三方調(diào)用。排查內(nèi)置?WebView?的Activity?是否被導(dǎo)出、必須導(dǎo)出的?Activity?是否會(huì)通過參數(shù)傳遞調(diào)起內(nèi)置的?WebView等。
建議進(jìn)一步對(duì)APP目錄下的敏感數(shù)據(jù)進(jìn)行保護(hù)??蛻舳?APP?應(yīng)用設(shè)備相關(guān)信息(如IMEI、IMSI、Android_id等)作為密鑰對(duì)敏感數(shù)據(jù)進(jìn)行加密。使攻擊者難以利用相關(guān)漏洞獲得敏感信息。