Android Native層代碼混淆保護(hù)研究
發(fā)布時(shí)間:2021-06-01 02:26
Android操作系統(tǒng)已經(jīng)成為了我們生活中不可或缺的一部分,從智能手機(jī)到智能電視、以及物聯(lián)網(wǎng)下的各種智能設(shè)備,都與Android系統(tǒng)息息相關(guān)。Android系統(tǒng)的開源性以及應(yīng)用分發(fā)渠道的不完善,導(dǎo)致各種惡意軟件及破解軟件泛濫,應(yīng)用的二次打包、惡意廣告植入、代碼的竊取等屢見不鮮。Android應(yīng)用的代碼分為兩個(gè)部分,第一部分是由Java或Kotlin編譯生成的運(yùn)行于Art或Dalvik虛擬機(jī)環(huán)境下的字節(jié)碼,對(duì)于字節(jié)碼的保護(hù)已經(jīng)有較為廣泛的研究。另一部分是由C/C++編譯生成的.SO動(dòng)態(tài)鏈接庫文件,直接運(yùn)行在移動(dòng)端處理器環(huán)境中,一般稱為Native層代碼或本地代碼,對(duì)本地代碼保護(hù)的研究卻略為不足。本文在研究業(yè)內(nèi)相關(guān)開源保護(hù)方案的基礎(chǔ)上,結(jié)合移動(dòng)端處理器的特性,針對(duì)代碼的控制流和指令及數(shù)據(jù)展開混淆研究?刂屏骰煜矫,本文給出了3種方法:1)打亂基本塊之間的前后順序,將所有的基本塊排布于并列的結(jié)構(gòu)中,通過統(tǒng)一的塊調(diào)度分發(fā)器來決定下一個(gè)將要執(zhí)行的基本塊。并列的基本塊通過常量得到連接,利用簡易神經(jīng)網(wǎng)絡(luò)對(duì)常量展開混淆,使得塊調(diào)度的銜接過程得到隱藏,從而無法靜態(tài)逆向分析程序的原始邏輯。2)研究各種不...
【文章來源】:華南理工大學(xué)廣東省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:82 頁
【學(xué)位級(jí)別】:碩士
【部分圖文】:
全球操作系統(tǒng)市場份額但是Android操作系統(tǒng)從設(shè)計(jì)之初就沒有考慮到后續(xù)發(fā)展的應(yīng)用生態(tài)安全性,其起源于對(duì)數(shù)碼相機(jī)的系統(tǒng)支持,后來轉(zhuǎn)向?yàn)橐豢铋_源手機(jī)解決方案,并于2007年被Google
圖 1-2Android 代碼混淆分類[6]雖然學(xué)術(shù)界已經(jīng)有大量關(guān)于字節(jié)碼層面的保護(hù)研究[8,9],但對(duì)于反混淆、反加密保護(hù)的研究也在同時(shí)進(jìn)行中[10, 11, 12]。上述的保護(hù)手段主要圍繞 Android 字節(jié)碼層面,針對(duì)Android Native 層代碼的保護(hù)相對(duì)較少,但從目前已有的方案來看,Native 層代碼的保護(hù)方案主要包括 SO 文件整體加固和局部混淆。
后續(xù)版本引入了 ART 機(jī)制,即在安裝時(shí),預(yù)先將 處理器相關(guān)機(jī)器碼,從而加快程序的運(yùn)行速度,如圖 2-3本系統(tǒng)的兼容性,ART 虛擬機(jī)帶來的變化體現(xiàn)在應(yīng)用的運(yùn)身的結(jié)構(gòu),因此字節(jié)碼層面動(dòng)態(tài)加解密的保護(hù)也變得更加
本文編號(hào):3209479
【文章來源】:華南理工大學(xué)廣東省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:82 頁
【學(xué)位級(jí)別】:碩士
【部分圖文】:
全球操作系統(tǒng)市場份額但是Android操作系統(tǒng)從設(shè)計(jì)之初就沒有考慮到后續(xù)發(fā)展的應(yīng)用生態(tài)安全性,其起源于對(duì)數(shù)碼相機(jī)的系統(tǒng)支持,后來轉(zhuǎn)向?yàn)橐豢铋_源手機(jī)解決方案,并于2007年被Google
圖 1-2Android 代碼混淆分類[6]雖然學(xué)術(shù)界已經(jīng)有大量關(guān)于字節(jié)碼層面的保護(hù)研究[8,9],但對(duì)于反混淆、反加密保護(hù)的研究也在同時(shí)進(jìn)行中[10, 11, 12]。上述的保護(hù)手段主要圍繞 Android 字節(jié)碼層面,針對(duì)Android Native 層代碼的保護(hù)相對(duì)較少,但從目前已有的方案來看,Native 層代碼的保護(hù)方案主要包括 SO 文件整體加固和局部混淆。
后續(xù)版本引入了 ART 機(jī)制,即在安裝時(shí),預(yù)先將 處理器相關(guān)機(jī)器碼,從而加快程序的運(yùn)行速度,如圖 2-3本系統(tǒng)的兼容性,ART 虛擬機(jī)帶來的變化體現(xiàn)在應(yīng)用的運(yùn)身的結(jié)構(gòu),因此字節(jié)碼層面動(dòng)態(tài)加解密的保護(hù)也變得更加
本文編號(hào):3209479
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3209479.html
最近更新
教材專著