1.一種應(yīng)用程序安裝包的檢測(cè)方法,其特征在于,包括:
接收客戶端發(fā)送的待檢測(cè)的應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
根據(jù)所述目標(biāo)函數(shù)列表中攜帶的所述邏輯地址,判斷是否存在地址偏移量,若是,則根據(jù)所述地址偏移量確定所述應(yīng)用程序安裝包的變更內(nèi)容;
若所述變更內(nèi)容記錄在應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容中,則根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述目標(biāo)函數(shù)列表中攜帶的所述邏輯地址,判斷是否存在地址偏移量,包括:
獲取預(yù)設(shè)函數(shù)列表,所述預(yù)設(shè)函數(shù)列表中攜帶所述應(yīng)用程序安裝包的上一個(gè)版本對(duì)應(yīng)的邏輯地址;
判斷目標(biāo)函數(shù)列表中攜帶的所述邏輯地址與預(yù)設(shè)函數(shù)列表中攜帶的所述上一個(gè)版本對(duì)應(yīng)的邏輯地址是否一致;
若不一致,則確定存在地址偏移量。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述地址偏移量確定所述應(yīng)用程序安裝包的變更內(nèi)容,包括:
若檢測(cè)到函數(shù)變更指示關(guān)系中包含所述地址偏移量所對(duì)應(yīng)的變更內(nèi)容時(shí),則根據(jù)所述函數(shù)變更指示關(guān)系獲取所述應(yīng)用程序安裝包的變更內(nèi)容。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述地址偏移量確定所述應(yīng)用程序安裝包的變更內(nèi)容,包括:
若檢測(cè)到函數(shù)變更指示關(guān)系中不包含所述地址偏移量所對(duì)應(yīng)的變更內(nèi)容時(shí),則向所述客戶端發(fā)送所述地址偏移量,以使所述客戶端根據(jù)所述地址偏移量更新所述函數(shù)變更指示關(guān)系。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果,包括:
根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,建立應(yīng)用程序安裝包檢測(cè)規(guī)則;
采用所述應(yīng)用程序安裝包檢測(cè)規(guī)則判斷所述應(yīng)用程序安裝包是否存在運(yùn)行漏洞;
若是,則向所述客戶端上報(bào)所述應(yīng)用程序安裝包存在所述運(yùn)行漏洞;
若否,則向所述客戶端上報(bào)所述應(yīng)用程序安裝包通過(guò)安全檢測(cè)。
6.根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的方法,其特征在于,所述應(yīng)用程序安裝包的變更內(nèi)容包括所述應(yīng)用程序安裝包的函數(shù)變更類型以及變更模塊名,所述變更模塊名用于指示所述應(yīng)用程序安裝包中發(fā)生變更的模塊名稱;
其中,所述函數(shù)變更類型包括增加函數(shù)、刪除函數(shù)以及修改函數(shù)中的至少一項(xiàng)。
7.一種應(yīng)用程序安裝包的檢測(cè)方法,其特征在于,包括:
確定待檢測(cè)的應(yīng)用程序安裝包;
反編譯所述應(yīng)用程序安裝包,并獲取經(jīng)過(guò)反編譯后的得到的所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
向服務(wù)器發(fā)送所述目標(biāo)函數(shù)列表,以使所述服務(wù)器根據(jù)所述目標(biāo)函數(shù)列表確定所述應(yīng)用程序安裝包的變更內(nèi)容,并獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述反編譯所述應(yīng)用程序安裝包,并獲取經(jīng)過(guò)反編譯后的得到的所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,包括:
通過(guò)交互式反編譯器IDA導(dǎo)出所述應(yīng)用程序安裝包的函數(shù);
根據(jù)所述應(yīng)用程序安裝包的函數(shù)確定所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述向服務(wù)器發(fā)送所述目標(biāo)函數(shù)列表之后,所述方法還包括:
接收內(nèi)容更新指令,所述內(nèi)容更新指令用于指示函數(shù)變更指示關(guān)系的更新;
根據(jù)所述內(nèi)容更新指令,對(duì)所述函數(shù)變更指示關(guān)系進(jìn)行更新。
10.一種服務(wù)器,其特征在于,包括:
接收模塊,用于接收客戶端發(fā)送的待檢測(cè)的應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
確定模塊,用于根據(jù)所述接收模塊接收的所述目標(biāo)函數(shù)列表中攜帶的所述邏輯地址,判斷是否存在地址偏移量,若是,則根據(jù)所述地址偏移量確定所述應(yīng)用程序安裝包的變更內(nèi)容;
獲取模塊,用于若所述判斷模塊判斷得到的所述變更內(nèi)容記錄在應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容中,則根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果。
11.根據(jù)權(quán)利要求10所述的服務(wù)器,其特征在于,所述確定模塊包括:
第一獲取單元,用于獲取預(yù)設(shè)函數(shù)列表,所述預(yù)設(shè)函數(shù)列表中攜帶所述應(yīng)用程序安裝包的上一個(gè)版本對(duì)應(yīng)的邏輯地址;
第一判斷單元,用于判斷目標(biāo)函數(shù)列表中攜帶的所述邏輯地址與所述第一獲取單元獲取的所述預(yù)設(shè)函數(shù)列表中攜帶的所述上一個(gè)版本對(duì)應(yīng)的邏輯地址是否一致;
確定單元,用于若所述第一判斷單元判斷得到目標(biāo)函數(shù)列表中攜帶的所述邏輯地址與所述預(yù)設(shè)函數(shù)列表中攜帶的所述上一個(gè)版本對(duì)應(yīng)的邏輯地址不一致,則確定存在地址偏移量。
12.根據(jù)權(quán)利要求10所述的服務(wù)器,其特征在于,所述確定模塊包括:
第二獲取單元,用于若檢測(cè)到函數(shù)變更指示關(guān)系中包含所述地址偏移量所對(duì)應(yīng)的變更內(nèi)容時(shí),則根據(jù)所述函數(shù)變更指示關(guān)系獲取所述應(yīng)用程序安裝包的變更內(nèi)容。
13.根據(jù)權(quán)利要求10所述的服務(wù)器,其特征在于,所述確定模塊包括:
發(fā)送單元,用于若檢測(cè)到函數(shù)變更指示關(guān)系中不包含所述地址偏移量所對(duì)應(yīng)的變更內(nèi)容時(shí),則向所述客戶端發(fā)送所述地址偏移量,以使所述客戶端根據(jù)所述地址偏移量更新所述函數(shù)變更指示關(guān)系。
14.根據(jù)權(quán)利要求10所述的服務(wù)器,其特征在于,所述獲取模塊包括:
建立單元,用于根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,建立應(yīng)用程序安裝包檢測(cè)規(guī)則;
第二判斷單元,用于采用所述建立單元建立的所述應(yīng)用程序安裝包檢測(cè)規(guī)則判斷所述應(yīng)用程序安裝包是否存在運(yùn)行漏洞;
第一上報(bào)單元,用于若所述第二判斷單元采用所述應(yīng)用程序安裝包檢測(cè)規(guī)則判斷得到所述應(yīng)用程序安裝包存在運(yùn)行漏洞,則向所述客戶端上報(bào)所述應(yīng)用程序安裝包存在所述運(yùn)行漏洞;
第二上報(bào)單元,用于若所述第二判斷單元采用所述應(yīng)用程序安裝包檢測(cè)規(guī)則判斷得到所述應(yīng)用程序安裝包未存在運(yùn)行漏洞,則向所述客戶端上報(bào)所述應(yīng)用程序安裝包通過(guò)安全檢測(cè)。
15.根據(jù)權(quán)利要求10至15中任一項(xiàng)所述的服務(wù)器,其特征在于,所述應(yīng)用程序安裝包的變更內(nèi)容包括所述應(yīng)用程序安裝包的函數(shù)變更類型以及變更模塊名,所述變更模塊名用于指示所述應(yīng)用程序安裝包中發(fā)生變更的模塊名稱;
其中,所述函數(shù)變更類型包括增加函數(shù)、刪除函數(shù)以及修改函數(shù)中的至少一項(xiàng)。
16.一種客戶端,其特征在于,包括:
確定模塊,用于確定待檢測(cè)的應(yīng)用程序安裝包;
獲取模塊,反編譯所述確定模塊確定的所述應(yīng)用程序安裝包,并獲取經(jīng)過(guò)反編譯后的得到的所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
發(fā)送模塊,用于向服務(wù)器發(fā)送所述獲取模塊獲取的所述目標(biāo)函數(shù)列表,以使所述服務(wù)器根據(jù)所述目標(biāo)函數(shù)列表確定所述應(yīng)用程序安裝包的變更內(nèi)容,并獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果。
17.根據(jù)權(quán)利要求16所述的客戶端,其特征在于,所述獲取模塊包括:
導(dǎo)出單元,用于通過(guò)交互式反編譯器IDA導(dǎo)出所述應(yīng)用程序安裝包的函數(shù);
確定單元,用于根據(jù)所述導(dǎo)出單元導(dǎo)出的所述應(yīng)用程序安裝包的函數(shù)確定所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表。
18.根據(jù)權(quán)利要求16所述的客戶端,其特征在于,所述客戶端還包括:
接收模塊,用于所述發(fā)送模塊向服務(wù)器發(fā)送所述目標(biāo)函數(shù)列表之后,接收內(nèi)容更新指令,所述內(nèi)容更新指令用于指示函數(shù)變更指示關(guān)系的更新;
更新模塊,用于根據(jù)所述接收模塊接收的所述內(nèi)容更新指令,對(duì)所述函數(shù)變更指示關(guān)系進(jìn)行更新。
19.一種應(yīng)用程序安裝包的檢測(cè)系統(tǒng),其特征在于,包括:服務(wù)器以及客戶端;
所述客戶端確定待檢測(cè)的應(yīng)用程序安裝包;
所述客戶端反編譯所述應(yīng)用程序安裝包,并獲取經(jīng)過(guò)反編譯后的得到的所述應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
所述服務(wù)器接收客戶端發(fā)送的待檢測(cè)的應(yīng)用程序安裝包的目標(biāo)函數(shù)列表,所述目標(biāo)函數(shù)列表中攜帶所述應(yīng)用程序安裝包邏輯地址;
所述服務(wù)器根據(jù)所述目標(biāo)函數(shù)列表中攜帶的所述邏輯地址,判斷是否存在地址偏移量,若是,則根據(jù)所述地址偏移量確定所述應(yīng)用程序安裝包的變更內(nèi)容;
若所述變更內(nèi)容記錄在應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容中,則所述服務(wù)器根據(jù)所述應(yīng)用程序安裝包的變更內(nèi)容以及所述應(yīng)用程序安裝包的預(yù)設(shè)檢測(cè)內(nèi)容,獲取所述應(yīng)用程序安裝包的檢測(cè)結(jié)果。