本發(fā)明涉及信息安全技術(shù)領(lǐng)域,尤其涉及一種服務(wù)進(jìn)程注冊(cè)方法、裝置和終端設(shè)備。
背景技術(shù):
通常操作系統(tǒng)會(huì)提供服務(wù)進(jìn)程注冊(cè)函數(shù),該函數(shù)可以把普通權(quán)限的進(jìn)程注冊(cè)為服務(wù)進(jìn)程,其中,服務(wù)進(jìn)程的權(quán)限比較高,可以讀寫訪問操作系統(tǒng)的磁盤等。
然而,有些惡意進(jìn)程會(huì)使用該服務(wù)進(jìn)程注冊(cè)函數(shù),注冊(cè)為服務(wù)進(jìn)程以侵入操作系統(tǒng)中,破壞操作系統(tǒng)的安全。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的旨在至少在一定程度上解決上述的技術(shù)問題之一。
為此,本發(fā)明的第一個(gè)目的在于提出一種服務(wù)進(jìn)程注冊(cè)方法,該方法避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
本發(fā)明的第二個(gè)目的在于提出一種服務(wù)進(jìn)程注冊(cè)裝置。
本發(fā)明的第三個(gè)目的在于提出一種終端設(shè)備。
本發(fā)明的第四個(gè)目的在于提出另一種終端設(shè)備。
為了實(shí)現(xiàn)上述目的,本發(fā)明第一方面實(shí)施例提出了一種服務(wù)進(jìn)程注冊(cè)方法,包括以下步驟:監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用;如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù),運(yùn)行預(yù)設(shè)的與所述服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù);檢測(cè)當(dāng)前進(jìn)程的合法性;如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
另外,本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法還具有如下附加的技術(shù)特征:
在本發(fā)明的一個(gè)實(shí)施例中,還包括:如果檢測(cè)獲知當(dāng)前進(jìn)程非法,則拒絕當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,在所述監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用之前,還包括:在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與所述服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述檢測(cè)當(dāng)前進(jìn)程的合法性,包括:根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)當(dāng)前進(jìn)程的合法性。
在本發(fā)明的一個(gè)實(shí)施例中,所述特征庫(kù)包括:合法進(jìn)程的白名單,和/或,非法進(jìn)程的黑名單。
為了實(shí)現(xiàn)上述目的,本發(fā)明第二方面實(shí)施例提出了一種服務(wù)進(jìn)程注冊(cè)裝置,包括:監(jiān)測(cè)模塊,用于監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用;運(yùn)行模塊,用于在監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與所述服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù);檢測(cè)模塊,用于檢測(cè)當(dāng)前進(jìn)程的合法性;處理模塊,用于在檢測(cè)到當(dāng)前進(jìn)程合法時(shí),允許當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
在本發(fā)明的一個(gè)實(shí)施例中,所述處理模塊還用于:如果檢測(cè)獲知當(dāng)前進(jìn)程非法,則拒絕當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,還包括:設(shè)置模塊,用于在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與所述服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述檢測(cè)模塊用于:根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)當(dāng)前進(jìn)程的合法性。
在本發(fā)明的一個(gè)實(shí)施例中,所述特征庫(kù)包括:合法進(jìn)程的白名單,和/或,非法進(jìn)程的黑名單。
為了實(shí)現(xiàn)上述目的,本發(fā)明第三方面實(shí)施例提出了一種終端設(shè)備,包括本發(fā)明第二方面實(shí)施例所述的服務(wù)進(jìn)程注冊(cè)裝置。
本發(fā)明實(shí)施例的終端設(shè)備,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述目的,本發(fā)明第四方面實(shí)施例提出了另一種終端設(shè)備,包括以下一個(gè)或多個(gè)組件:處理器,存儲(chǔ)器,電源電路,多媒體組件,音頻組件,輸入/輸出(I/O)的接口,傳感器組件,以及通信組件;其中,電路板安置在殼體圍成的空間內(nèi)部,所述處理器和所述存儲(chǔ)器設(shè)置在所述電路板上;所述電源電路,用于為終端設(shè)備的各個(gè)電路或器件供電;所述存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼;所述處理器通過讀取所述存儲(chǔ)器中存儲(chǔ)的可執(zhí)行程序代碼來運(yùn)行與所述可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行以下步驟:
監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用;
如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù),運(yùn)行預(yù)設(shè)的與所述服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù);
檢測(cè)當(dāng)前進(jìn)程的合法性;
如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用所述服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
本發(fā)明實(shí)施例的終端設(shè)備,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。
附圖說明
本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法的流程圖;
圖2是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法的流程圖;
圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置的結(jié)構(gòu)示意圖;
圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置的結(jié)構(gòu)示意圖;
圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖;以及
圖6是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
下面參考附圖描述本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法、裝置和終端設(shè)備。
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法的流程圖。
如圖1所示,該服務(wù)進(jìn)程注冊(cè)方法包括:
S110,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用。
S120,如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
通常,操作系統(tǒng)的內(nèi)核會(huì)提供服務(wù)進(jìn)程注冊(cè)函數(shù),通過該服務(wù)進(jìn)程注冊(cè)函數(shù)可以使得具有普通權(quán)限的進(jìn)程,注冊(cè)為服務(wù)進(jìn)程,其中該服務(wù)進(jìn)程具有系統(tǒng)權(quán)限,可以讀寫、訪問操作系統(tǒng)的磁盤等。其中,根據(jù)具體應(yīng)用場(chǎng)景的不同,操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)不同。
舉例而言,當(dāng)操作系統(tǒng)提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是RegisterServicesProcess時(shí),進(jìn)程A可以通過調(diào)用RegisterServicesProcess函數(shù)對(duì)應(yīng)的內(nèi)核函數(shù)NtUserRegisterServicesProcess函數(shù)來注冊(cè)服務(wù)進(jìn)程,從而進(jìn)程A擁有系統(tǒng)權(quán)限。
然而,有些執(zhí)行惡意任務(wù)的惡意進(jìn)程,比如病毒、蠕蟲和特洛伊木馬進(jìn)程等,可用過調(diào)用操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù),注冊(cè)為服務(wù)進(jìn)程以獲取較高的權(quán)限,從而導(dǎo)致該惡意進(jìn)程可以侵入操作系統(tǒng),造成對(duì)操作系統(tǒng)的破壞。
因此,為了防止惡意進(jìn)程通過調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)注冊(cè)為服務(wù)進(jìn)程,在允許進(jìn)程使用服務(wù)進(jìn)程注冊(cè)函數(shù)之前,需要先判斷調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)進(jìn)程的合法性,從而根據(jù)判斷結(jié)果確定,是否允許該進(jìn)程使用該服務(wù)進(jìn)程注冊(cè)函數(shù)注冊(cè)為服務(wù)進(jìn)程。
其中,應(yīng)當(dāng)理解的是,鉤子函數(shù)可采用多種方式確定調(diào)用服務(wù)進(jìn)程控制函數(shù)的當(dāng)前進(jìn)程,比如可通過獲取調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的操作進(jìn)程路徑確定當(dāng)前進(jìn)程。
為了實(shí)現(xiàn)在允許當(dāng)前進(jìn)程使用服務(wù)進(jìn)程注冊(cè)函數(shù)之前,判斷當(dāng)前進(jìn)程的合法性,本發(fā)明實(shí)施例預(yù)先在系統(tǒng)設(shè)置與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
進(jìn)而,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用,每當(dāng)監(jiān)測(cè)到服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),則運(yùn)行預(yù)設(shè)的與該服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
即在操作系統(tǒng)響應(yīng)該服務(wù)進(jìn)程注冊(cè)函數(shù)的調(diào)用事件之前,通過與該服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)以判斷調(diào)用該服務(wù)進(jìn)程注冊(cè)函數(shù)進(jìn)程是否合法。
S130,檢測(cè)當(dāng)前進(jìn)程的合法性。
S140,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
具體地,在鉤子函數(shù)捕獲調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程后,檢測(cè)該當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
其中,需要說明的是,根據(jù)具體應(yīng)用場(chǎng)景的不同,預(yù)設(shè)的鉤子函數(shù)可采取多種方式檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的合法性。
第一種示例,可以通過在操作系統(tǒng)本地設(shè)置包含相關(guān)合法或者非法進(jìn)程相關(guān)特征的特征庫(kù),并通過特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的合法性。
第二種示例,可以在遠(yuǎn)程服務(wù)器上設(shè)置包含相關(guān)合法或者非法進(jìn)程相關(guān)特征的特征庫(kù),并在鉤子函數(shù)中設(shè)置一與該遠(yuǎn)程服務(wù)器進(jìn)行信息交互的相關(guān)函數(shù),從而鉤子函數(shù)中的相關(guān)函數(shù),將調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的相關(guān)信息發(fā)送至遠(yuǎn)程服務(wù)器,以供遠(yuǎn)程服務(wù)器根據(jù)特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的合法性。
第三種示例,預(yù)先存儲(chǔ)可靠、可信的進(jìn)程綁定安全標(biāo)識(shí),從而鉤子函數(shù)捕獲調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程后,檢測(cè)當(dāng)前進(jìn)程是否具有上述安全標(biāo)識(shí)以檢測(cè)當(dāng)前進(jìn)程的合法性。
綜上所述,本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了更加清楚的描述如何檢測(cè)當(dāng)前進(jìn)程的合法性,下面結(jié)合附圖2進(jìn)行舉例說明,在該示例中,通過設(shè)置包含相關(guān)進(jìn)程特征的特征庫(kù),并通過特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的合法性,說明如下:
圖2是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法的流程圖,如圖2所示,該服務(wù)進(jìn)程注冊(cè)方法包括:
在步驟S210中,在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
應(yīng)當(dāng)理解的是,根據(jù)應(yīng)用場(chǎng)景的不同,與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)可以被設(shè)置于操作系統(tǒng)的多個(gè)位置。本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法中,為了將操作系統(tǒng)中相關(guān)安全防御的資源的整合,將與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)設(shè)置于具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中。
S220,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用。
S230,如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
需要說明的是,步驟S220-S230的描述與上述步驟S110-S120相對(duì)應(yīng),因此對(duì)的步驟S220-S230的描述參考上述步驟S110-S120的描述,在此不再贅述。
S240,根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)當(dāng)前進(jìn)程的合法性。
S250,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
S260,如果檢測(cè)獲知當(dāng)前進(jìn)程非法,則拒絕當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。
具體地,本實(shí)施例根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程的合法性。如果檢測(cè)調(diào)用服務(wù)進(jìn)程調(diào)用函數(shù)的進(jìn)程非法,則表明調(diào)用該服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程可能是惡意進(jìn)程,從而拒絕該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。如果檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。
需要說明的是,特征庫(kù)中的具體內(nèi)容可以根據(jù)應(yīng)用需要進(jìn)行設(shè)置,例如包括合法進(jìn)程的白名單,和/或,包括非法進(jìn)程的黑名單。舉例說明如下:
第一種示例,特征庫(kù)中可包括白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程,允許該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)不會(huì)導(dǎo)致操作系統(tǒng)的安全會(huì)受到破壞。
在本示例中,確定調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程,根據(jù)該進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該進(jìn)程信息,與白名單中的進(jìn)程信息匹配,則認(rèn)為該進(jìn)程是合法進(jìn)程,因此允許該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。如果查詢獲取該進(jìn)程信息,與白名單中的進(jìn)程信息不匹配,則認(rèn)為該進(jìn)程是非法進(jìn)程,因此拒絕該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。
第二種示例,特征庫(kù)中包含黑名單,黑名單包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程,例如可能是惡意程序?qū)?yīng)的進(jìn)程,如果允許該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),則會(huì)使得惡意進(jìn)程獲取較高的權(quán)限,可讀寫操作系統(tǒng)的磁盤等,從而造成對(duì)操作系統(tǒng)安全的破壞。
在本示例中,確定調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程,根據(jù)該當(dāng)前進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果該進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該進(jìn)程是非法進(jìn)程,因此拒絕該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。如果該進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息不匹配,則認(rèn)為該進(jìn)程是合法進(jìn)程,因此允許該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。
第三種示例,特征庫(kù)中可包含黑名單和白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程,黑名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程。
在本示例中,確定調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程,根據(jù)該進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該進(jìn)程信息,與白名單的進(jìn)程信息匹配,則認(rèn)為該進(jìn)程是合法進(jìn)程,因此允許該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù);如果該進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該進(jìn)程是非法進(jìn)程,因此拒絕該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。
綜上所述,本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)方法,將與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)設(shè)置于具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中,并通過特征庫(kù)判斷調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)進(jìn)程的合法性,只有在該進(jìn)程合法時(shí),才允許該進(jìn)程對(duì)服務(wù)進(jìn)程注冊(cè)函數(shù)的調(diào)用,由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了一種服務(wù)進(jìn)程注冊(cè)裝置,圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置的結(jié)構(gòu)示意圖,如圖3所示,該服務(wù)進(jìn)程注冊(cè)裝置包括:
監(jiān)測(cè)模塊110,用于監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用。
運(yùn)行模塊120,用于在監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
檢測(cè)模塊130,用于檢測(cè)當(dāng)前進(jìn)程的合法性。
處理模塊140,用于在檢測(cè)到當(dāng)前進(jìn)程合法時(shí),允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
具體地,為了實(shí)現(xiàn)在允許調(diào)用進(jìn)程使用服務(wù)進(jìn)程注冊(cè)函數(shù)之前,判斷調(diào)用進(jìn)程的合法性,本發(fā)明實(shí)施例預(yù)先在系統(tǒng)設(shè)置與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
進(jìn)而,監(jiān)測(cè)模塊110監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用,每當(dāng)監(jiān)測(cè)模塊110監(jiān)測(cè)到服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),運(yùn)行模塊120則運(yùn)行預(yù)設(shè)的與該服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
即在操作系統(tǒng)響應(yīng)該服務(wù)進(jìn)程注冊(cè)函數(shù)的調(diào)用事件之前,通過與該服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)以判斷調(diào)用該服務(wù)進(jìn)程注冊(cè)函數(shù)進(jìn)程是否合法。
進(jìn)一步地,在鉤子函數(shù)捕獲調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程后,檢測(cè)模塊130檢測(cè)該進(jìn)程的合法性,如果檢測(cè)模塊130檢測(cè)獲知當(dāng)前進(jìn)程合法,處理模塊140則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程,以滿足相關(guān)應(yīng)用程序的正常運(yùn)行。
綜上所述,本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了更加清楚的描述如何檢測(cè)當(dāng)前進(jìn)程的合法性,下面結(jié)合附圖4進(jìn)行舉例說明,在該示例中,通過設(shè)置模塊設(shè)置包含相關(guān)進(jìn)程特征的特征庫(kù),并通過特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的當(dāng)前進(jìn)程的合法性,說明如下:
圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置的結(jié)構(gòu)示意圖,如圖4所示,在如圖3所示的基礎(chǔ)上,該服務(wù)進(jìn)程注冊(cè)裝置還包括:
設(shè)置模塊150,用于在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
應(yīng)當(dāng)理解的是,根據(jù)應(yīng)用場(chǎng)景的不同,與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)可以被設(shè)置于操作系統(tǒng)的多個(gè)位置。本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置中,為了將操作系統(tǒng)中相關(guān)安全防御的資源的整合,設(shè)置模塊150將與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)設(shè)置于具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中。
進(jìn)一步地,在監(jiān)測(cè)模塊110監(jiān)測(cè)到操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),運(yùn)行模塊120運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)獲取當(dāng)前進(jìn)程。
進(jìn)而檢測(cè)模塊130根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程的合法性。如果檢測(cè)模塊130檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程非法,則表明調(diào)用該服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程可能是惡意進(jìn)程,從而處理模塊140拒絕該進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)。如果檢測(cè)模塊130檢測(cè)調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)的進(jìn)程合法,則處理模塊140允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
需要說明的是,特征庫(kù)中的具體內(nèi)容可以根據(jù)應(yīng)用需要進(jìn)行設(shè)置,例如包括合法進(jìn)程的白名單,和/或,包括非法進(jìn)程的黑名單。
應(yīng)當(dāng)理解的是,本方實(shí)施例描述的服務(wù)進(jìn)程注冊(cè)裝置與上述結(jié)合圖1-圖2描述的服務(wù)進(jìn)程注冊(cè)方法對(duì)應(yīng),本發(fā)明的服務(wù)進(jìn)程注冊(cè)裝置的實(shí)施例中未披露的細(xì)節(jié),在此不再贅述。
綜上所述,本發(fā)明實(shí)施例的服務(wù)進(jìn)程注冊(cè)裝置,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了一種終端設(shè)備,圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖。
如圖5所示,本發(fā)明實(shí)施例的終端設(shè)備包括服務(wù)進(jìn)程注冊(cè)裝置1000。
其中,需要說明的是,本發(fā)明實(shí)施例中的服務(wù)進(jìn)程注冊(cè)裝置1000與上述實(shí)施例中參考圖3-圖4描述的服務(wù)進(jìn)程注冊(cè)裝置對(duì)應(yīng),在此不再贅述。
綜上所述,本發(fā)明實(shí)施例的終端設(shè)備,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了另一種終端設(shè)備。
圖6是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖。如圖6所示,終端設(shè)備2000可以是移動(dòng)電話等。
參見圖6,終端設(shè)備2000可以包括以下一個(gè)或多個(gè)組件:處理器2001,存儲(chǔ)器2002,電源電路2003,多媒體組件2004,音頻組件2005,輸入/輸出(I/O)的接口2006,傳感器組件2007,以及通信組件2008。
電源電路2003,用于為終端設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器2002用于存儲(chǔ)可執(zhí)行程序代碼;處理器2001通過讀取存儲(chǔ)器2002中存儲(chǔ)的可執(zhí)行程序代碼來運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行以下步驟:
監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)是否被調(diào)用。
如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
檢測(cè)當(dāng)前進(jìn)程的合法性。
如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。
綜上所述,本發(fā)明實(shí)施例的終端設(shè)備,在監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的服務(wù)進(jìn)程注冊(cè)函數(shù)被調(diào)用時(shí),如果監(jiān)測(cè)到當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù)時(shí),運(yùn)行預(yù)設(shè)的與服務(wù)進(jìn)程注冊(cè)函數(shù)對(duì)應(yīng)的鉤子函數(shù),以捕獲當(dāng)前進(jìn)程并檢測(cè)當(dāng)前進(jìn)程的合法性,如果檢測(cè)獲知當(dāng)前進(jìn)程合法,則允許當(dāng)前進(jìn)程調(diào)用服務(wù)進(jìn)程注冊(cè)函數(shù),將目標(biāo)進(jìn)程注冊(cè)為服務(wù)進(jìn)程。由此,避免了惡意進(jìn)程注冊(cè)為服務(wù)進(jìn)程,保護(hù)了操作系統(tǒng)的安全。
在本說明書的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說明書中,對(duì)上述術(shù)語(yǔ)的示意性表述不必須針對(duì)的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說明書中描述的不同實(shí)施例或示例以及不同實(shí)施例或示例的特征進(jìn)行結(jié)合和組合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。