本發(fā)明涉及對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的,其是一種對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的系統(tǒng)及方法。
背景技術(shù):
1、在移動(dòng)互聯(lián)網(wǎng)時(shí)代,移動(dòng)應(yīng)用(app)已成為人們生活的一部分,但隨之而來(lái)的安全問(wèn)題日益嚴(yán)峻,惡意軟件、數(shù)據(jù)泄露、權(quán)限濫用等安全威脅對(duì)用戶(hù)隱私和設(shè)備安全構(gòu)成了嚴(yán)重挑戰(zhàn),盡管市場(chǎng)上存在一些安全掃描工具,但它們往往無(wú)法全面覆蓋移動(dòng)應(yīng)用的安全需求,特別是在靜態(tài)代碼分析、權(quán)限濫用檢測(cè)、數(shù)據(jù)泄露風(fēng)險(xiǎn)評(píng)估等方面存在明顯不足。
2、現(xiàn)有的app掃描系統(tǒng)存在以下幾點(diǎn)不足:
3、(1)安全掃描不足:現(xiàn)有工具多側(cè)重于病毒檢測(cè),缺乏對(duì)代碼中安全漏洞的深入分析;
4、(2)權(quán)限濫用:應(yīng)用常請(qǐng)求不必要權(quán)限,增加用戶(hù)隱私泄露風(fēng)險(xiǎn);
5、(3)數(shù)據(jù)泄露風(fēng)險(xiǎn):應(yīng)用處理用戶(hù)數(shù)據(jù)時(shí)存在不當(dāng)行為,數(shù)據(jù)泄露風(fēng)險(xiǎn)高;
6、(4)簽名和來(lái)源驗(yàn)證不足:惡意應(yīng)用可通過(guò)偽造簽名混入應(yīng)用市場(chǎng),難以識(shí)別。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明為了解決安全掃描不足:現(xiàn)有工具多側(cè)重于病毒檢測(cè),缺乏對(duì)代碼中安全漏洞的深入分析;權(quán)限濫用:應(yīng)用常請(qǐng)求不必要權(quán)限,增加用戶(hù)隱私泄露風(fēng)險(xiǎn);數(shù)據(jù)泄露風(fēng)險(xiǎn):應(yīng)用處理用戶(hù)數(shù)據(jù)時(shí)存在不當(dāng)行為,數(shù)據(jù)泄露風(fēng)險(xiǎn)高;簽名和來(lái)源驗(yàn)證不足:惡意應(yīng)用可通過(guò)偽造簽名混入應(yīng)用市場(chǎng),難以識(shí)別的技術(shù)問(wèn)題,而提供一種對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的系統(tǒng)及方法。
2、本發(fā)明通過(guò)以下技術(shù)方案解決上述技術(shù)問(wèn)題:
3、本發(fā)明提供了一種對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的系統(tǒng)及方法,所述對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的系統(tǒng)及方法包括:
4、預(yù)掃描模塊,所述預(yù)掃描模塊用于對(duì)上傳的移動(dòng)應(yīng)用文件進(jìn)行初步屬性及格式檢查,并查詢(xún)數(shù)據(jù)庫(kù)以確定是否已對(duì)該文件執(zhí)行過(guò)分析;
5、代碼提取和文件解析模塊,所述代碼提取和文件解析模塊與預(yù)掃描模塊連接;所述代碼提取和文件解析模塊用于對(duì)移動(dòng)應(yīng)用進(jìn)行深度解析,提取關(guān)鍵的應(yīng)用信息及代碼;
6、漏洞掃描模塊,所述漏洞掃描模塊用于識(shí)別和標(biāo)記應(yīng)用中存在的已知安全漏洞;
7、權(quán)限檢測(cè)模塊,所述權(quán)限檢測(cè)模塊用于測(cè)移動(dòng)應(yīng)用請(qǐng)求的系統(tǒng)權(quán)限;
8、簽名檢測(cè)模塊,所述簽名檢測(cè)模塊用于負(fù)責(zé)驗(yàn)證移動(dòng)應(yīng)用的簽名真實(shí)性;
9、敏感信息檢測(cè)模塊,所述敏感信息檢測(cè)模塊用于識(shí)別移動(dòng)應(yīng)用中可能包含的敏感信息;
10、報(bào)告生成模塊,所述報(bào)告生成模塊用于匯總各個(gè)檢測(cè)模塊的結(jié)果;
11、所述代碼提取和文件解析模塊與漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊電性連接,所述漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊與報(bào)告生成模塊電性連接。
12、進(jìn)一步的,所述預(yù)掃描模塊單向連接代碼提取和文件解析模塊,所述代碼提取和文件解析模塊分別與漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊單向連接,所述漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊分別與報(bào)告生成模塊單向連接。
13、進(jìn)一步的,一種對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的方法,所述對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的方法包括如下步驟:
14、(一)通過(guò)預(yù)掃描模塊對(duì)上傳的移動(dòng)應(yīng)用文件進(jìn)行初步屬性及格式檢查,并查詢(xún)數(shù)據(jù)庫(kù)以確定是否已對(duì)該文件執(zhí)行過(guò)分析,若數(shù)據(jù)庫(kù)中已存在相關(guān)分析記錄,則系統(tǒng)將直接檢索并返回先前分析的數(shù)據(jù);若為首次掃描,則系統(tǒng)將初始化全新的安全掃描流程,預(yù)掃描模塊將信息傳遞到代碼提取和文件解析模塊,代碼提取和文件解析模塊對(duì)移動(dòng)應(yīng)用進(jìn)行深度解析,提取關(guān)鍵的應(yīng)用信息及代碼,此過(guò)程是安全分析的基石,確保后續(xù)模塊能夠準(zhǔn)確識(shí)別和評(píng)估應(yīng)用中的潛在風(fēng)險(xiǎn);
15、(二)代碼提取和文件解析模塊將信息分別傳遞到漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊處理,漏洞掃描模塊將應(yīng)用代碼與一個(gè)全面的已知漏洞特征數(shù)據(jù)庫(kù)進(jìn)行比對(duì),以識(shí)別和標(biāo)記應(yīng)用中存在的已知安全漏洞,為開(kāi)發(fā)者提供修復(fù)的方向,權(quán)限檢測(cè)模塊檢測(cè)移動(dòng)應(yīng)用請(qǐng)求的系統(tǒng)權(quán)限,特別是那些可能涉及用戶(hù)隱私的敏感權(quán)限請(qǐng)求,通過(guò)細(xì)致的權(quán)限分析,本模塊幫助識(shí)別和警示那些可能濫用用戶(hù)權(quán)限的請(qǐng)求,簽名檢測(cè)模塊驗(yàn)證移動(dòng)應(yīng)用的簽名真實(shí)性,本模塊確保應(yīng)用來(lái)源的合法性,并防止惡意應(yīng)用通過(guò)偽造簽名的方式混入正規(guī)應(yīng)用市場(chǎng),從而保護(hù)用戶(hù)免受惡意軟件的侵害,敏感信息檢測(cè)模塊識(shí)別移動(dòng)應(yīng)用中可能包含的敏感信息,如個(gè)人身份數(shù)據(jù)、財(cái)務(wù)信息和密鑰等,評(píng)估數(shù)據(jù)泄露風(fēng)險(xiǎn),并提供相應(yīng)的防護(hù)建議;
16、(三)漏洞掃描模塊、權(quán)限檢測(cè)模塊、簽名檢測(cè)模塊以及敏感信息檢測(cè)模塊處理后的信息傳遞到報(bào)告生成模塊中,通過(guò)報(bào)告生成模塊匯總各個(gè)檢測(cè)模塊的結(jié)果,并支持將安全評(píng)估報(bào)告導(dǎo)出為pdf、excel、csv、json等格式,供內(nèi)部安全運(yùn)營(yíng)人員進(jìn)行安全評(píng)分和進(jìn)一步的評(píng)估分析。
17、進(jìn)一步的,所述預(yù)掃描模塊的處理方法包括如下步驟:
18、a、判斷提交掃描的文件類(lèi)型,針對(duì)不同的應(yīng)用類(lèi)型進(jìn)行區(qū)分掃描;
19、b、生成md5值用于同數(shù)據(jù)庫(kù)中的掃描記錄進(jìn)行對(duì)比;
20、c、數(shù)據(jù)庫(kù)中查詢(xún)記錄,如果存在直接查詢(xún)并返回該數(shù)據(jù),如果第一次掃描,則從零開(kāi)始做掃描;
21、d、標(biāo)記首次掃描還是僅查詢(xún)狀態(tài)。
22、進(jìn)一步的,所述代碼提取和文件解析模塊處理方法包括如下步驟:
23、a、解壓應(yīng)用,獲取應(yīng)用源資源文件;
24、b、對(duì)于android應(yīng)用提取manifest.xml文件,并開(kāi)始解析文件中的數(shù)據(jù);對(duì)于ios應(yīng)用,則提取info.plist文件;
25、c、提取其中的uses-permission參數(shù),用于后續(xù)的權(quán)限檢測(cè)分析;
26、d、提取證書(shū)文件,包括cer、pem、cert、pub、key、pfx、p12等證書(shū)文件,以及jbs、bks等密鑰庫(kù)文件;
27、e、將移動(dòng)應(yīng)用反編譯為代碼,使用apktool或budletool等工具。用于后續(xù)的漏洞掃描;
28、d、將各提取的結(jié)果寫(xiě)入數(shù)據(jù)庫(kù)。
29、進(jìn)一步的,所述漏洞掃描模塊處理方法包括如下步驟:
30、a、從漏洞庫(kù)中獲取漏洞特征、修復(fù)建議等;
31、b、通過(guò)正則將代碼與特征進(jìn)行匹配對(duì)比;
32、c、將匹配結(jié)果進(jìn)行落庫(kù)保存。
33、進(jìn)一步的,所述權(quán)限檢測(cè)模塊處理方法包括如下步驟:
34、a、數(shù)據(jù)庫(kù)中讀取提取的應(yīng)用權(quán)限數(shù)據(jù);
35、b、對(duì)權(quán)限進(jìn)行分類(lèi)分級(jí),主要分為危險(xiǎn)權(quán)限(3級(jí))、核心權(quán)限(2及)、特殊權(quán)限(1級(jí))、其他權(quán)限信息(0級(jí));
36、c、權(quán)限信息進(jìn)行分析,識(shí)別出權(quán)限列表中的敏感權(quán)限,如訪(fǎng)問(wèn)通訊錄、短信、位置等,并進(jìn)行風(fēng)險(xiǎn)提示;
37、d、檢測(cè)數(shù)據(jù)落庫(kù)保存。
38、進(jìn)一步的,所述簽名檢測(cè)模塊處理方法包括如下步驟:
39、a、使用apksigner工具對(duì)應(yīng)用進(jìn)行簽名證書(shū)信息提取,包括v1-v4signature、signature?algorithm、issuer、bit?size、fingerprint等信息;
40、b、將簽名證書(shū)信息同內(nèi)部app證書(shū)對(duì)比,確認(rèn)合法性;
41、c、如比對(duì)不一致,將提示風(fēng)險(xiǎn);
42、d、檢測(cè)數(shù)據(jù)落庫(kù)保存。
43、進(jìn)一步的,所述敏感信息檢測(cè)模塊處理方法包括如下步驟:
44、a、使用apktool或budletool等工具對(duì)應(yīng)用文件進(jìn)行反編譯;
45、b、通過(guò)正則匹配關(guān)鍵詞,包括pwd、passwd、miyao等常亮字符串;
46、c、檢測(cè)數(shù)據(jù)落庫(kù)保存。
47、進(jìn)一步的,所述報(bào)告生成模塊處理方法包括如下步驟:
48、a、獲取各模塊檢測(cè)的結(jié)果;
49、b、合并各模塊檢測(cè)結(jié)果,并輸出pdf格式文件。
50、在符合本領(lǐng)域常識(shí)的基礎(chǔ)上,上述各優(yōu)選條件,可任意組合,即得本發(fā)明各較佳實(shí)例。
51、本發(fā)明的積極進(jìn)步效果在于:
52、上述提出的一種對(duì)移動(dòng)應(yīng)用進(jìn)行安全掃描的系統(tǒng)及方法,能快速識(shí)別安全漏洞、檢測(cè)權(quán)限濫用、評(píng)估數(shù)據(jù)泄露風(fēng)險(xiǎn),并提供清晰的安全報(bào)告;
53、通過(guò)靜態(tài)代碼分析,結(jié)合漏洞檢測(cè)、權(quán)限檢測(cè)、簽名證書(shū)檢測(cè)、敏感信息識(shí)別多個(gè)維度的安全檢測(cè)技術(shù),能夠全面覆蓋移動(dòng)應(yīng)用的安全需求,發(fā)現(xiàn)潛在的安全漏洞和風(fēng)險(xiǎn);
54、通過(guò)早期識(shí)別移動(dòng)應(yīng)用中的安全漏洞,可以減少后期修復(fù)的成本和時(shí)間,避免因漏洞被利用而導(dǎo)致的潛在損失;
55、實(shí)現(xiàn)自動(dòng)化檢測(cè),減少人工干預(yù),通過(guò)生成可讀性較高的報(bào)告以供內(nèi)部安全運(yùn)營(yíng)人員進(jìn)行分析,降低安全管理成本,提高效率。