0
| 本文作者: 李勤 | 2019-06-30 12:24 |
雷鋒網(wǎng)消息,6 月 28 日,安天發(fā)布了一份《VirtualAPP技術(shù)應(yīng)用及安全分析報告》。
VirtualApp(簡稱:VA)是一款運行于Android系統(tǒng)的沙盒引擎框架產(chǎn)品,可以理解為輕量級的“Android虛擬機”。VA具有免安裝、多開、內(nèi)外隔離及對于目標App完全控制的能力。VA從表現(xiàn)形式上屬于動態(tài)加載,但是從技術(shù)本質(zhì)上來說是通過增加VAMS對啟動Intent進行修改,攔截和代理Android系統(tǒng)消息,并且通過自定義的ClassLoader加載和構(gòu)造未在VA的AndroidManifest.xml中聲明的組件,以達到對目標App的控制效果。
在應(yīng)用運行時通過動態(tài)加載消息代理技術(shù),作為一項在Android系統(tǒng)上已經(jīng)可以成熟使用的手段,除了在VA虛擬引擎框架中,目前也廣泛應(yīng)用在熱更新、應(yīng)用加殼和應(yīng)用動態(tài)保護等功能中。正常使用VA虛擬引擎技術(shù)一般是為了實現(xiàn)輕量級版本快速迭代、功能更新、bug修復(fù)和特定安全防護,但是惡意和流氓應(yīng)用使用該技術(shù)一般是為了逃避安全檢測,延長生命周期,獲取更大的利益。
無論是動態(tài)加載的插件化技術(shù),還是基于VA的虛擬化引擎技術(shù),從安全屬性上而言,都在一定程度上挑戰(zhàn)了Android系統(tǒng)的安全要求,谷歌和蘋果對上架應(yīng)用都有對應(yīng)的規(guī)定——禁止使用動態(tài)加載功能。雖然如此,仍然有大量開發(fā)者對VA技術(shù)有需求,例如Android平臺上的雙開應(yīng)用,以及Windows平臺上的Hook機制和多款成熟虛擬機軟件,都被用來滿足開發(fā)者的應(yīng)用開發(fā)需求。安天認為,這種技術(shù)本身也是具有兩面性的,需要客觀看待。
VA技術(shù)目前也有用于正常用途的,比如部分游戲愛好者擁有多個賬號,部分白領(lǐng)由于工作原因需要對于個人社交軟件和工作用戶社交軟件進行隔離,這一類的需求一直很旺盛。
但是VA實際上也會給運行在VA中的App帶來不可忽視的安全風險,即App的運行環(huán)境完全被VA控制,安卓的沙盒隔離機制被突破,并導(dǎo)致不必要的攻擊入口和風險面暴露。
VA技術(shù)動態(tài)加載可以在運行時動態(tài)加載,并解釋和執(zhí)行包含在JAR或APK文件內(nèi)的DEX文件。外部動態(tài)加載DEX文件的安全風險源于:Anroid4.1之前的系統(tǒng)版本容許Android應(yīng)用動態(tài)加載存儲在外部目錄中的DEX文件,同時這些文件也可以被其他應(yīng)用任意讀寫,所以不能夠保護應(yīng)用免遭惡意代碼的注入;所加載的DEX文件易被惡意應(yīng)用替換或者注入代碼,如果沒有對外部所加載的DEX文件做完整性校驗,應(yīng)用將會被惡意代碼注入,那么攻擊者編寫的任意惡意代碼將會被自動執(zhí)行,從而進一步實施欺詐、獲取賬號密碼或其他惡意行為。
點擊《VirtualAPP技術(shù)應(yīng)用及安全分析報告》,可獲得報告全文。
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。