掃描漏洞的方法、云端服務(wù)器及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及Android技術(shù)領(lǐng)域,尤其是涉及一種掃描漏洞的方法、云端服務(wù)器及系統(tǒng)。
【背景技術(shù)】
[0002]隨著移動(dòng)行業(yè)的快速發(fā)展,手機(jī)應(yīng)用的安全問題越來越嚴(yán)重,而安卓系統(tǒng)占有絕大多數(shù)的用戶,而且安卓系統(tǒng)的開放性帶來具體便捷和發(fā)展的同時(shí),也帶來諸多問題,為惡意軟件代碼提供了滋生環(huán)境,大量的第三方應(yīng)用程序存在著諸多驚人的漏洞,而往往被忽略,逆向、破解、反編譯、偽造、外掛、木馬等威脅越來越多,不斷威脅著廣大用戶和手機(jī)應(yīng)用開發(fā)商的信息安全和自身利益。
[0003]現(xiàn)有的安卓APK掃描漏洞方法,一般是用戶在使用的時(shí)候,應(yīng)用下載到用戶手機(jī)中,利用手機(jī)中的第三方安全軟件,如手機(jī)衛(wèi)士、手機(jī)管家等軟件進(jìn)行下載后的安全掃描和風(fēng)險(xiǎn)掃描,以及安裝之前系統(tǒng)提供的基本的風(fēng)險(xiǎn)和權(quán)限提醒,但并沒有在開發(fā)初期就給予開發(fā)人員提醒,防范于未然。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題是:可在客戶端開發(fā)初期,尋找出漏洞風(fēng)險(xiǎn),提示開發(fā)者進(jìn)行改進(jìn),以減少損失。
[0005]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:提供一種掃描漏洞的方法,包括:
[0006]S1:云端服務(wù)器解析APK文件中應(yīng)用程序的XML文件,解密并獲取簽名信息;
[0007]S2:云端服務(wù)器解析所述簽名信息,并與預(yù)設(shè)的簽名信息比對(duì),生成比對(duì)結(jié)果;
[0008]S3:云端服務(wù)器生成含有比對(duì)結(jié)果的結(jié)果報(bào)表,輸出給客戶端。
[0009]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:提供一種掃描漏洞的系統(tǒng),包括云端服務(wù)器及客戶端。
[0010]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:提供一種掃描漏洞的云端服務(wù)器,所述云端服務(wù)器使用上述方法進(jìn)行掃描漏洞。
[0011]本發(fā)明的有益效果在于:區(qū)別于現(xiàn)有技術(shù),本發(fā)明可以通過在云端對(duì)APK文件進(jìn)行掃描,不需要運(yùn)行或打開APK程序,即可實(shí)現(xiàn)對(duì)APK內(nèi)文件的全方位掃描,其操作簡單,在開發(fā)初期就給予開發(fā)者提示,減少損失。
【附圖說明】
[0012]圖1為本發(fā)明方法實(shí)施例一的流程示意圖;
[0013]圖2為本發(fā)明方法實(shí)施例二的流程示意圖;
[0014]圖3為本發(fā)明系統(tǒng)實(shí)施例三的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0015]為詳細(xì)說明本發(fā)明的技術(shù)內(nèi)容、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖予以說明。
[0016]請(qǐng)參照?qǐng)D1,本發(fā)明實(shí)施例一提供一種掃描漏洞的方法,包括如下步驟:
[0017]S1:云端服務(wù)器解析APK文件中應(yīng)用程序的XML文件,解密并獲取簽名信息;
[0018]S2:云端服務(wù)器解析所述簽名信息,并與預(yù)設(shè)的簽名信息比對(duì),生成比對(duì)結(jié)果;
[0019]S3:云端服務(wù)器生成含有比對(duì)結(jié)果的結(jié)果報(bào)表,輸出給客戶端。
[0020]區(qū)別于現(xiàn)有技術(shù),本發(fā)明實(shí)施例一可以通過在云端對(duì)APK文件進(jìn)行掃描,不需要運(yùn)行或打開APK程序,即可實(shí)現(xiàn)對(duì)APK內(nèi)文件的全方位掃描,其操作簡單,在開發(fā)初期就給予開發(fā)者提示,減少損失。
[0021]其中,如圖2所示,在實(shí)施例一的基礎(chǔ)上,本發(fā)明實(shí)施例二在步驟SI之前,還包括如下步驟:
[0022]SOl:客戶端發(fā)送所述APK文件到云端服務(wù)器;
[0023]S02:云端服務(wù)器接收所述APK文件,并保存;
[0024]S03:云端服務(wù)器解壓所述APK文件。
[0025]具體地,在一個(gè)具體實(shí)施例中,步驟S2還包括:
[0026]S211:解析所述XML文件,進(jìn)行程序入口 activity及其風(fēng)險(xiǎn)分析;
[0027]S212:列出所有程序入口,進(jìn)行查庫和特征匹配;
[0028]S213:判斷所述程序入口是否被惡意篡改;
[0029]若是,則執(zhí)行步驟S30:向客戶端進(jìn)行安全提示;
[0030]反之,則執(zhí)行步驟S3。
[0031]其中,步驟S2還可包括:
[0032]S221:解析應(yīng)用程序的開啟服務(wù);
[0033]S222:列出所有開啟服務(wù),進(jìn)行查庫和特征匹配;
[0034]S223:判斷所述開啟服務(wù)是否被惡意篡改;
[0035]若是,則執(zhí)行步驟S30:向客戶端進(jìn)行安全提示;
[0036]反之,則執(zhí)行步驟S3。
[0037]其中,步驟S2還可包括:
[0038]S231:解析應(yīng)用程序的開機(jī)啟動(dòng)接受器;
[0039]S232:列出所有開機(jī)啟動(dòng)接受器,進(jìn)行查庫和特征匹配;
[0040]S233:判斷所述開機(jī)啟動(dòng)接受器是否被惡意篡改;
[0041]若是,則執(zhí)行步驟S30:向客戶端進(jìn)行安全提示;
[0042]反之,則執(zhí)行步驟S3。
[0043]其中,步驟S2還可包括:
[0044]S241:解析應(yīng)用程序的敏感權(quán)限;
[0045]S242:列出所有敏感權(quán)限,進(jìn)行查庫和特征匹配;
[0046]S243:判斷所述敏感權(quán)限是否被惡意篡改;
[0047]若是,則執(zhí)行步驟S30:向客戶端進(jìn)行安全提示;
[0048]反之,則執(zhí)行步驟S3。
[0049]其中,步驟S2還可包括:
[0050]S251:云端服務(wù)器掃描代碼漏洞、匹配特征代碼和風(fēng)險(xiǎn)代碼;
[0051]S252:判斷所述特征代碼和風(fēng)險(xiǎn)代碼是否被惡意篡改;
[0052]若是,則執(zhí)行步驟S30:向客戶端進(jìn)行安全提示;
[0053]反之,則執(zhí)行步驟S3。
[0054]其中,上述進(jìn)行查庫和特征匹配的步驟具體為:
[0055]分別在風(fēng)險(xiǎn)特征庫、安全特征庫中進(jìn)行查詢及特征匹配。
[0056]其中,進(jìn)行查庫和特征匹配的步驟之后,還包括:
[0057]設(shè)置智能特征庫;
[0058]智能特征庫對(duì)查詢及特征匹配進(jìn)行統(tǒng)計(jì)分析,將風(fēng)險(xiǎn)的特征、安全特征掃描結(jié)果記錄到智能特征庫中;
[0059]根據(jù)風(fēng)險(xiǎn)的特征、安全特征,智能特征庫設(shè)定對(duì)應(yīng)的安全指數(shù)。
[0060]具體地,APK是AndroidPackage的縮寫,即Android安裝包(APK)。APK是類似Symbian Sis或Sisx的文件格式。通過將APK文件直接傳到Android模擬器或Android手機(jī)中執(zhí)行即可安裝。APK文件和sis—樣,把a(bǔ)ndroid sdk編譯的工程打包成一個(gè)安裝程序文件,格式為APK。APK文件其實(shí)是zip格式,但后綴名被修改為APK,通過UnZip解壓后,可以看到Dex文件,Dex是DalvikVM executes的簡稱,即Android Dalvik執(zhí)行程序,并非Java ME的字節(jié)碼而是Dalvik字節(jié)碼。Android在運(yùn)行一個(gè)程序時(shí)首先需要UnZip,然后類似Symbian那樣直接,和Windows Mobile中的PE文件有區(qū)別。
[0061]在Android平臺(tái)中dalvik vm的執(zhí)行文件被打包為APK格式,最終運(yùn)行時(shí)加載器會(huì)解壓然后獲取編譯后的androidmanifest.xml文件中的permiss1n分支相關(guān)的安全訪問,但仍然存在很多安全限制,如果將APK文件傳到/system/app文件夾下會(huì)發(fā)現(xiàn)執(zhí)行是不受限制的。安裝的文件可能不是這個(gè)文件夾,而在androidrom中,系統(tǒng)的APK文件默認(rèn)會(huì)放入這個(gè)文件夾,它們擁有著root權(quán)限。
[0062]而window平臺(tái)上,通常掃描的都是pe文件,exe等可執(zhí)行文件,以及一些特殊的文件,以判斷其中是否含有木馬病毒,這些一般根據(jù)木馬病毒的黑名單特征庫來掃描的。
[0063]而現(xiàn)有技術(shù)中,安卓平臺(tái)上的安全衛(wèi)士軟件,安卓平臺(tái)的衛(wèi)士軟件,一般是掃描安卓系統(tǒng)本身環(huán)境的安全問題,以及監(jiān)控新安裝的APK包是否含有木馬病毒,一般也是通過黑名單庫進(jìn)行判斷的。
[0064]而本發(fā)明實(shí)施例是上傳APK文件,如應(yīng)用,到云端服務(wù)器上,即掃描過程中,是不暴露給客戶端;而現(xiàn)有技術(shù)中存在的安全軟件,掃描算法都在客戶端上顯示出來,具有一定的風(fēng)險(xiǎn);是能夠被黑客破解和抓取到其算法的運(yùn)作流程,因?yàn)閽呙璧乃惴ǘ荚诳蛻舳藱C(jī)器中運(yùn)行著;
[0065]其次,