基于android系統(tǒng)惡意程序的取證_第1頁(yè)
基于android系統(tǒng)惡意程序的取證_第2頁(yè)
基于android系統(tǒng)惡意程序的取證_第3頁(yè)
基于android系統(tǒng)惡意程序的取證_第4頁(yè)
基于android系統(tǒng)惡意程序的取證_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于android系統(tǒng)惡意程序的取證

根據(jù)北京奇虎科技有限公司互聯(lián)網(wǎng)安全中心(2014年中國(guó)移動(dòng)安全狀況報(bào)告),2014年中國(guó)移動(dòng)安全狀況報(bào)告出現(xiàn)了市場(chǎng)上一些智能設(shè)備應(yīng)用。1安卓系統(tǒng)惡意軟件的身份驗(yàn)證和研究研究惡意程序的電子物證技術(shù),主要是通過(guò)逆向工程技術(shù)和動(dòng)態(tài)監(jiān)測(cè)完成對(duì)惡意應(yīng)用的電子取證,為司法訴訟提供相關(guān)證據(jù)。1.1程序惡意判斷根據(jù)目前Android安全數(shù)據(jù)分析,惡意程序的行為特征主要體現(xiàn)在惡意資源消耗、范圍失控傳播、隱私數(shù)據(jù)盜用、數(shù)據(jù)擦除等方面,其方式包括開機(jī)自啟動(dòng)、靜默執(zhí)行等。根據(jù)惡意程序各種行為特征,可以通過(guò)對(duì)其行為實(shí)現(xiàn)原理上進(jìn)行分析,進(jìn)而映射到代碼層。一個(gè)程序的惡意判斷可以從多個(gè)方面來(lái)進(jìn)行。在靜態(tài)檢測(cè)過(guò)程中,我們主要采用逆向工程技術(shù),對(duì)程序反編譯后,再?gòu)奶卣髦灯ヅ?、?quán)限檢測(cè)、敏感API分析等多個(gè)角度進(jìn)行綜合分析,將多方面靜態(tài)檢測(cè)出來(lái)的結(jié)果合理賦值,采用危險(xiǎn)特征值加權(quán)評(píng)估的方式,進(jìn)行程序的危險(xiǎn)定級(jí),與此同時(shí),開展電子取證工作,視具體情況出具相關(guān)檢驗(yàn)報(bào)告或意見。靜態(tài)檢測(cè)取證整體框架如圖1所示。1.1.1逆向工程原理逆向工程也稱為反向工程(ReverseEngineering)逆向工程的功能模塊以AndroidAPK應(yīng)用程序文件作為輸入,以配置文件和代碼文件作為輸出。其中APK應(yīng)用程序文件屬于Android系統(tǒng)安裝的文件,是我們熟知的ZIP格式文件。Android逆向工程主要處理兩部分APK文件經(jīng)過(guò)逆向工程后生成dex和smali兩種不同格式的文件,使用dex2jar工具可以將android的.dex文件轉(zhuǎn)換生成classes.dex.dex2jar.jar文件,再用rar解壓工具解壓出jar文件中的class文件,然后用jad或者DJJavaDecomplier反編譯工具將Java的.class文件反編譯成.java文件,單獨(dú)java文件還不足以掌握程序的特征,雖smali匯編代碼的可讀性不如java,但是它可以與java代碼解析出來(lái)的源碼進(jìn)行功能比對(duì),所以,要想完整的反映一個(gè)應(yīng)用程序的所有特性,必須要smali和java兩種類型文件各一份1.1.2系統(tǒng)生成android程序打包校驗(yàn)過(guò)程處于整個(gè)靜態(tài)分析取證的前端,主要分析應(yīng)用程序的簽名信息和應(yīng)用程序包的信息,如PackageName等二次打包技術(shù)是惡意程序作者最常用的技術(shù)。惡意程序作者會(huì)分析并下載流行的程序,反編譯而后導(dǎo)入惡意的Payloads,再二次打包生成APK。最后惡意程序作者會(huì)把二次打包的APK上傳到第三方Android應(yīng)用市場(chǎng)。用戶很容易會(huì)被誘騙安裝受到感染的惡意應(yīng)用。在Android系統(tǒng)中,Android程序必須經(jīng)過(guò)數(shù)字證書的簽名后才可以進(jìn)行安裝。數(shù)字證書用以標(biāo)識(shí)應(yīng)用程序的作者并與應(yīng)用綁定。故可以通過(guò)打包校驗(yàn),及時(shí)的發(fā)現(xiàn)被修改或者植入了惡意程序段的惡意應(yīng)用。這個(gè)方法通過(guò)提取APK中的公鑰信息和PackageName信息,然后和樣本數(shù)據(jù)庫(kù)中對(duì)應(yīng)的PackageName進(jìn)行匹配視其公鑰信息是否和樣本數(shù)據(jù)庫(kù)中的一致。如果發(fā)現(xiàn)簽名不一致,則可以判斷此安裝文件有一定的安全隱患,需要進(jìn)一步檢測(cè)。1.1.3基于android應(yīng)用程序的代碼解析通過(guò)打包校驗(yàn)后,我們可以初步篩選出有安全隱患的程序,接著開始進(jìn)行APK反編譯工作。通過(guò)反編譯程序(APKtool)實(shí)現(xiàn)對(duì)APK文件的反編譯,獲取其源代碼文件以及各類資源文件。此過(guò)程也可以被稱為資源獲取過(guò)程。通過(guò)APKtool反編譯之后可以得到應(yīng)用程序所包含的資源文件,存放在res目錄下,通過(guò)修改和替換這些資源文件可以改變這個(gè)應(yīng)用程序的界面,所以Android應(yīng)用程序的漢化和去廣告都是用APK-tool完成的。而APKtool同時(shí)會(huì)將.dex文件反編譯成.smali文件,而smali目錄中的文件與Java源文件是相對(duì)應(yīng)的,這是APKtool常用的兩個(gè)命令:通過(guò)APKtool逆向出來(lái)的資源包括了res資源庫(kù)、smali文件夾、original文件夾、unknown文件夾以及AndroidManifest.xml文件。res包含了應(yīng)用的所有圖片資源、布局文件以及style.xml、string.xml等value文件。smali文件夾下是整個(gè)應(yīng)用的smali文件,smal是DalvikVM內(nèi)部執(zhí)行的核心代碼。通過(guò)閱讀smal代碼,我們可以正確的理解程序的意思和思想。在smali中有對(duì)應(yīng)于Java語(yǔ)法的自身語(yǔ)法,包括數(shù)據(jù)類型和方法表示。unknown文件夾中防止的是反編譯器不識(shí)別的文件,一般.html文件都放在這個(gè)文件夾中。在AndroidManifest.xml文件中我們可以看到工程的整個(gè)結(jié)構(gòu),包括權(quán)限,組件等信息。因此AndroidManifest.xml是逆向工程第一個(gè)需要分析的文件。1.1.4高危權(quán)限的技術(shù)保護(hù)在Android系統(tǒng)中,一個(gè)應(yīng)用如果需要實(shí)現(xiàn)某些特殊功能,都需要向系統(tǒng)申請(qǐng)權(quán)限。申請(qǐng)權(quán)限的方式主要是在源代碼的Manifest.xml中進(jìn)行聲明。一些高危權(quán)限如隱私數(shù)據(jù)擁有操作權(quán)限的申明需要格外注意。一般情況下,除非移動(dòng)應(yīng)用已經(jīng)通過(guò)申請(qǐng)或者利用系統(tǒng)Linux內(nèi)核存在的漏洞獲取了最高管理員的權(quán)限,一個(gè)移動(dòng)應(yīng)用只能訪問(wèn)自己的私有數(shù)據(jù)(/scared目錄中的數(shù)據(jù)需要申請(qǐng)寫外部存儲(chǔ)器的權(quán)限才可以訪問(wèn))。所以,通過(guò)對(duì)APK的權(quán)限進(jìn)行分析,如果沒有申請(qǐng)一些敏感的權(quán)限,并且也不存在ROOT的Exploit,那么就可以判定一個(gè)應(yīng)用是一個(gè)正常的應(yīng)用,如果申請(qǐng)了一些敏感權(quán)限,則需要進(jìn)一步的檢測(cè)。1.1.5研發(fā)互聯(lián)網(wǎng)平臺(tái)上的安全檢測(cè)以上述的權(quán)限檢測(cè)為例,即使一個(gè)應(yīng)用申請(qǐng)了大量的冗余權(quán)限,且權(quán)限中有敏感權(quán)限,但是其在實(shí)際API調(diào)用中并沒有調(diào)用敏感API,單單依靠敏感權(quán)限申請(qǐng)的檢測(cè)無(wú)法得到該程序合理的安全性解釋。我們一般采用平均權(quán)重分配法,對(duì)上述參考因子進(jìn)行隨機(jī)權(quán)重分配。并抽取市場(chǎng)上主流的、安全的應(yīng)用進(jìn)行測(cè)試,獲得各自的參考值,然后對(duì)參考值通過(guò)聚類算法,獲得聚類中心。將聚類中心作為標(biāo)準(zhǔn)參考值。如果測(cè)試APK的危險(xiǎn)值小于標(biāo)準(zhǔn)參考值,則判斷危險(xiǎn)程度為高,并需要進(jìn)一步人工檢查。如果危險(xiǎn)值大于標(biāo)準(zhǔn)參考值,則危險(xiǎn)程度為低。1.2動(dòng)態(tài)監(jiān)測(cè)技術(shù)在實(shí)際取證應(yīng)用中,我們還會(huì)采用動(dòng)態(tài)監(jiān)測(cè)分析,應(yīng)用程序最基本的行為是在系統(tǒng)中執(zhí)行的一條條指令,包括邏輯、運(yùn)算、執(zhí)行控制、存儲(chǔ)處理和接口處理等。但是孤立的研究每一條指令其意義并不大。從軟件工程角度出發(fā),可以把一系列命令看作是一個(gè)程序行為,通過(guò)檢測(cè)程序行為,與靜態(tài)檢測(cè)中獲取的權(quán)限聲明相比較,如果發(fā)現(xiàn)程序行為比申請(qǐng)的權(quán)限大,說(shuō)明這個(gè)程序是惡意程序的概率就大Android應(yīng)用動(dòng)態(tài)監(jiān)測(cè)一般由兩部分組成:應(yīng)用運(yùn)行實(shí)時(shí)行為監(jiān)測(cè)和監(jiān)測(cè)結(jié)果分析。常用的動(dòng)態(tài)監(jiān)測(cè)技術(shù)由沙箱技術(shù)、鉤子技術(shù)等??傮w來(lái)看,動(dòng)態(tài)監(jiān)測(cè)技術(shù)就是實(shí)時(shí)的檢測(cè)被測(cè)程序的行為,所發(fā)送的數(shù)據(jù),并對(duì)相關(guān)信息、行為和數(shù)據(jù)等進(jìn)行捕獲。因此對(duì)于惡意應(yīng)用取證來(lái)說(shuō),靜態(tài)檢測(cè)技術(shù)和動(dòng)態(tài)監(jiān)測(cè)技術(shù)都是必不可少的。2安卓惡意軟件樣本的檢測(cè)和分析2.1android惡意程序檢測(cè)流程前文已詳細(xì)闡述了如何通過(guò)靜態(tài)檢測(cè)技術(shù)和動(dòng)態(tài)監(jiān)測(cè)技術(shù)實(shí)現(xiàn)針對(duì)Android系統(tǒng)惡意程序開展電子取證。具體流程一般為檢測(cè)環(huán)境準(zhǔn)備、樣本獲取、惡意程序檢測(cè)、電子證物提取以及出具報(bào)告這幾個(gè)環(huán)節(jié)。其中惡意程序檢測(cè)環(huán)節(jié)又分為APK逆向、靜態(tài)檢測(cè)和動(dòng)態(tài)監(jiān)測(cè)三個(gè)子項(xiàng)目。筆者將對(duì)工作中捕獲的一個(gè)Android惡意程序“相冊(cè).APK”進(jìn)行檢測(cè)和取證。該惡意程序偽裝成相冊(cè)程序,無(wú)基本相冊(cè)功能,實(shí)際上該程序運(yùn)行后,會(huì)申請(qǐng)大量敏感權(quán)限,能夠群發(fā)惡意短信,獲取大量用戶信息,屬于典型的惡意程序。2.2硬件設(shè)備組成在進(jìn)行惡意程序檢測(cè)取證之前,首先準(zhǔn)備實(shí)驗(yàn)環(huán)境的搭建。其中包括硬件設(shè)備和軟件環(huán)境兩大部分。硬件設(shè)備有:取證工作站、手機(jī)信息號(hào)屏蔽設(shè)備、手機(jī)專用檢驗(yàn)設(shè)備、照相機(jī)等。軟件環(huán)境有:殺毒軟件、手機(jī)取證系統(tǒng)、Wireshark、手機(jī)PC套件等。2.3.手機(jī)木馬程序侵犯用戶隱私用戶合本次檢測(cè)實(shí)驗(yàn)是以一臺(tái)安裝了“相冊(cè).APK”木馬的手機(jī)(聯(lián)想手機(jī)A288T型號(hào))作為樣本,該樣本手機(jī)由于用戶的疏忽,點(diǎn)擊了其短信內(nèi)含有惡意鏈接地址,下載安裝了手機(jī)木馬程序,導(dǎo)致用戶手機(jī)內(nèi)大量隱私信息被泄露。惡意程序植入用戶手機(jī)后,以致該手機(jī)用戶遭受到詐騙犯罪侵害。為查明該手機(jī)樣本中是否含有惡意程序、惡意程序的數(shù)量、惡意程序具體行為以及相關(guān)涉案線索,需對(duì)該樣本手機(jī)進(jìn)行檢測(cè)取證,獲取手機(jī)中的惡意程序進(jìn),并開展檢測(cè)取證工作。2.4android惡意軟件的檢測(cè)和認(rèn)證2.4.1手機(jī)版本號(hào)登記對(duì)已感染了“相冊(cè).APK”木馬的手機(jī)進(jìn)行唯一性編號(hào),并對(duì)手機(jī)型號(hào)、手機(jī)IMEI碼、Android版本號(hào)、內(nèi)核版本號(hào)等相關(guān)信息進(jìn)行登記。隨后,再對(duì)具有唯一編號(hào)的實(shí)驗(yàn)手機(jī)進(jìn)行拍照和保全備份。2.4.2手機(jī)通信信號(hào)屏蔽首先,啟動(dòng)檢驗(yàn)工作站的殺毒軟件對(duì)工作站自身工作系統(tǒng)進(jìn)行殺毒,其次,在手機(jī)通信信號(hào)屏蔽的狀態(tài)下,運(yùn)行手機(jī)檢驗(yàn)系統(tǒng),分別獲取其內(nèi)存和SD卡信息,找出所有APK文件。2.4.3敏感權(quán)限檢測(cè)將所有提取的APK文件進(jìn)行靜態(tài)篩查過(guò)濾,排除正常APK程序包,通過(guò)識(shí)別簽名、查看權(quán)限申請(qǐng)等方法,將剩下未知來(lái)歷的APK文件,批量導(dǎo)入手機(jī)取證系統(tǒng)中,通過(guò)敏感權(quán)限檢測(cè),發(fā)現(xiàn)只有“相冊(cè).APK”申請(qǐng)了大量與其描述功能完全不一致的敏感權(quán)限,因此它的危險(xiǎn)等級(jí)高。2.4.4androidstop軟件簡(jiǎn)介為了能夠更好的確定風(fēng)險(xiǎn)函數(shù)的調(diào)用檢測(cè),需要對(duì)原始的可執(zhí)行應(yīng)用程序進(jìn)行反編譯,在反匯編實(shí)現(xiàn)過(guò)程中,綜合比較Dexdump、APKtool、Dedexer等工具性能,發(fā)現(xiàn)APKtool可以對(duì)所有資源進(jìn)行處理,功能強(qiáng)大,可以重新打包,能夠快速地解析出應(yīng)用程序中的manifest.xml配置文件,通過(guò)AndroidManifest.xml文件的掃描比對(duì),提高了檢測(cè)速度,避免對(duì)所有代碼進(jìn)行全部特征值掃描比對(duì)。通過(guò)APKtool反編譯APK,獲取資源文件。進(jìn)而可對(duì)資源文件進(jìn)行綜合分析評(píng)估,判定該程序是否具有安全風(fēng)險(xiǎn)性。2.4.5基于ab的行為分析靜態(tài)檢測(cè)主要還是指在程序沒有實(shí)際運(yùn)行的情況下,通過(guò)程序控制流、數(shù)據(jù)流等信息來(lái)研究分析程序的行為經(jīng)分析發(fā)現(xiàn)AB為分隔符,前面的數(shù)字為字符ASCII碼減去51所以100AB等于1,102AB等于3依此類推。得到一個(gè)郵箱名a1353347****@vip.*.com,手機(jī)號(hào)1353347****,密碼:****168。2.4.6實(shí)體惡意程序檢測(cè)數(shù)據(jù)分析由于AndroidManifest.xml文件的靜態(tài)分析不能反映應(yīng)用程序數(shù)據(jù)流的走向和遠(yuǎn)程服務(wù)端,在此我們還需采用動(dòng)態(tài)監(jiān)測(cè)技術(shù)進(jìn)行分析。本實(shí)驗(yàn)網(wǎng)絡(luò)抓包使用Linux支持的Tcpdump工具。為實(shí)時(shí)監(jiān)測(cè)掌握“相冊(cè).APK”程序運(yùn)行后的具體行為特征,在此,將“相冊(cè).APK”程序安裝到聯(lián)網(wǎng)的實(shí)驗(yàn)機(jī)中。操作流程如下:(1)加載實(shí)驗(yàn)機(jī),即加載聯(lián)想手機(jī)A288T,如圖3所示。(2)向?qū)嶒?yàn)機(jī)中Tcpdump文件賦值,如圖4所示。(3)為抓包的文件進(jìn)行命名,命名為1_capture.Pcap,如圖5所示。在抓包工具Tcpdump打開后,運(yùn)行“相冊(cè).APK”,間隔數(shù)十幾秒鐘后,關(guān)閉該應(yīng)用程序。將1_capture.pcap文件pull到電子檢驗(yàn)工作站中,通過(guò)Wireshark讀取網(wǎng)絡(luò)數(shù)據(jù)通信包。通過(guò)抓包分析能夠發(fā)現(xiàn)實(shí)驗(yàn)機(jī)聯(lián)網(wǎng)后數(shù)據(jù)的流向,明確了“相冊(cè).APK”惡意程序運(yùn)行時(shí)數(shù)據(jù)回傳的地址,為案件偵查提供線索支撐。至此,我們已掌握該惡意程序聯(lián)網(wǎng)后數(shù)據(jù)的流向?yàn)槟赤]件服務(wù)器IP地址,與靜態(tài)檢測(cè)的結(jié)果進(jìn)行比對(duì)吻合。為獲取動(dòng)態(tài)監(jiān)測(cè)出來(lái)的郵箱地址信息。我們還需要進(jìn)行抓包解析工作,如圖6所示。經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),郵件發(fā)件人和收件人均為a1353347****@vip.*.com,因此,我們可以證實(shí),a1353347****@vip.*.com郵箱為惡意程序編寫用于接收手機(jī)使用者通話記錄、短信內(nèi)容等個(gè)人手機(jī)信息。同時(shí),動(dòng)態(tài)監(jiān)測(cè)發(fā)現(xiàn),該惡意程序會(huì)向通信錄列表內(nèi)用戶群發(fā)惡意短信,該惡意短信包括了接收人姓名,因此極易欺騙用戶,如圖7所示。對(duì)惡意短信內(nèi)的連接URL地址進(jìn)行調(diào)查發(fā)現(xiàn),用戶如果點(diǎn)擊鏈接,則會(huì)出現(xiàn)下載安裝一個(gè)“相冊(cè).APK”程序的提示,被害者通過(guò)幾次點(diǎn)擊“下一步”安裝后,該惡意程序便成功地實(shí)現(xiàn)感染和

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論