本發(fā)明涉及信息安全技術(shù)領(lǐng)域,尤其涉及一種防止修改鍵盤(pán)輸入數(shù)據(jù)的方法、裝置和終端設(shè)備。
背景技術(shù):
通常,系統(tǒng)會(huì)為用戶提供鍵盤(pán)按鍵修改函數(shù),該按鍵修改函數(shù)用以滿足用戶在某些應(yīng)用場(chǎng)景下對(duì)鍵盤(pán)輸入數(shù)據(jù)的修改需求。
然而,有些惡意程序會(huì)調(diào)用鍵盤(pán)按鍵修改函數(shù),該惡意程序通過(guò)鍵盤(pán)按鍵修改函數(shù)對(duì)鍵盤(pán)的輸入數(shù)據(jù)進(jìn)行修改,從而破壞用戶的按鍵操作,為系統(tǒng)的安全帶來(lái)安全隱患。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的旨在至少在一定程度上解決上述的技術(shù)問(wèn)題之一。
為此,本發(fā)明的第一個(gè)目的在于提出一種防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,該方法防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
本發(fā)明的第二個(gè)目的在于提出一種防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置。
本發(fā)明的第三個(gè)目的在于提出一種終端設(shè)備。
本發(fā)明的第四個(gè)目的在于提出另一種終端設(shè)備。
為達(dá)上述目的,本發(fā)明第一方面實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,包括:監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用,運(yùn)行預(yù)設(shè)的與所述鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù);獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程;檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與所述第一進(jìn)程是否相同;如果檢測(cè)獲知所述第二進(jìn)程與所述第一進(jìn)程相同,則允許所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該方法在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
另外,在本發(fā)明的一個(gè)實(shí)施例中,所述方法還包括:如果檢測(cè)獲知所述第二進(jìn)程與所述第一進(jìn)程不相同,則檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性;如果所述第二進(jìn)程非法,則拒絕所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述方法還包括:如果所述第二進(jìn)程合法,則允許所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,在所述監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用之前,還包括:在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與所述鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性,包括:根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性。
在本發(fā)明的一個(gè)實(shí)施例中,所述特征庫(kù)包括:合法進(jìn)程的白名單,和/或,非法進(jìn)程的黑名單。
在本發(fā)明的一個(gè)實(shí)施例中,所述根據(jù)特征庫(kù)檢測(cè)調(diào)用所述第二進(jìn)程的合法性,包括:將所述特征庫(kù)中預(yù)存的非法進(jìn)程與所述第二進(jìn)程進(jìn)行匹配;如果所述非法進(jìn)程與所述第二進(jìn)程匹配成功,則確定當(dāng)前進(jìn)程非法;如果所述非法進(jìn)程與所述第二進(jìn)程匹配不成功,則確定當(dāng)前進(jìn)程合法。
為達(dá)上述目的,本發(fā)明第二方面實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置,包括:監(jiān)測(cè)模塊,用于監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用;運(yùn)行模塊,用于在所述監(jiān)測(cè)模塊監(jiān)測(cè)到所述操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),運(yùn)行預(yù)設(shè)的與所述鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù);獲取模塊,用于獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程;第一檢測(cè)模塊,用于檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與所述第一進(jìn)程是否相同;第一處理模塊,用于在檢測(cè)獲知所述第二進(jìn)程與所述第一進(jìn)程相同時(shí),允許所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該裝置在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
另外,在本發(fā)明的一個(gè)實(shí)施例中,所述裝置還包括:第二檢測(cè)模塊,用于在所述第一檢測(cè)模塊檢測(cè)獲知所述第二進(jìn)程與所述第一進(jìn)程不相同時(shí),檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性;第二處理模塊,用于在所述第二進(jìn)程非法時(shí),拒絕所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述裝置包括:所述第二處理模塊還用于在所述第二進(jìn)程合法時(shí),允許所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述裝置還包括:設(shè)置模塊,用于在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與所述鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
在本發(fā)明的一個(gè)實(shí)施例中,所述第二檢測(cè)模塊用于:
根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性。
在本發(fā)明的一個(gè)實(shí)施例中,所述特征庫(kù)包括:合法進(jìn)程的白名單,和/或,非法進(jìn)程的黑名單。
在本發(fā)明的一個(gè)實(shí)施例中,所述第二檢測(cè)模塊用于:將所述特征庫(kù)中預(yù)存的非法進(jìn)程與所述第二進(jìn)程進(jìn)行匹配;在所述非法進(jìn)程與所述第二進(jìn)程匹配成功時(shí),確定當(dāng)前進(jìn)程非法;或者在所述非法進(jìn)程與所述第二進(jìn)程匹配不成功時(shí),確定當(dāng)前進(jìn)程合法。
為達(dá)上述目的,本發(fā)明第三方面實(shí)施例的終端設(shè)備,包括本發(fā)明第二方面實(shí)施例所述的終端設(shè)備。
本發(fā)明實(shí)施例的終端設(shè)備,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該終端設(shè)備在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
為達(dá)上述目的,本發(fā)明第四方面實(shí)施例的終端設(shè)備,包括以下一個(gè)或多個(gè)組件:處理器,存儲(chǔ)器,電源電路,多媒體組件,音頻組件,輸入/輸出(I/O)的接口,傳感器組件,以及通信組件;其中,電路板安置在殼體圍成的空間內(nèi)部,所述處理器和所述存儲(chǔ)器設(shè)置在所述電路板上;所述電源電路,用于為終端設(shè)備的各個(gè)電路或器件供電;所述存儲(chǔ)器用于存儲(chǔ)可執(zhí)行程序代碼;所述處理器通過(guò)讀取所述存儲(chǔ)器中存儲(chǔ)的可執(zhí)行程序代碼來(lái)運(yùn)行與所述可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行以下步驟:
監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用,運(yùn)行預(yù)設(shè)的與所述鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù);
獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程;
檢測(cè)調(diào)用所述鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與所述第一進(jìn)程是否相同;
如果檢測(cè)獲知所述第二進(jìn)程與所述第一進(jìn)程相同,則允許所述第二進(jìn)程調(diào)用所述鍵盤(pán)按鍵修改函數(shù)。
本發(fā)明實(shí)施例的終端設(shè)備,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該終端設(shè)備在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
附圖說(shuō)明
本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法的流程圖;
圖2是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法的流程圖;
圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的修改鍵盤(pán)輸入數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖;
圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置的結(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)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
下面參考附圖描述本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法、裝置和終端設(shè)備。
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法的流程圖,如圖1所示,該防止修改鍵盤(pán)輸入數(shù)據(jù)的方法包括:
S110,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用,運(yùn)行預(yù)設(shè)的與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
通常,操作系統(tǒng)內(nèi)核會(huì)提供鍵盤(pán)按鍵修改函數(shù),以滿足在某些應(yīng)用場(chǎng)景下,通過(guò)該鍵盤(pán)按鍵修改函數(shù)對(duì)鍵盤(pán)輸入數(shù)據(jù)的修改需求。其中,根據(jù)具體應(yīng)用場(chǎng)景的不同,操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)不同。
比如,當(dāng)操作系統(tǒng)提供鍵盤(pán)按鍵修改函數(shù)SetKeyboardState函數(shù)時(shí),可通過(guò)調(diào)用SetKeyboardState函數(shù)對(duì)應(yīng)的操作系統(tǒng)內(nèi)核的函數(shù)NtUserSetKeyboardState函數(shù)修改鍵盤(pán)的輸入數(shù)據(jù)。
然而,在某些應(yīng)用場(chǎng)景下,有些執(zhí)行惡意任務(wù)的惡意進(jìn)程,比如病毒、蠕蟲(chóng)和特洛伊木馬進(jìn)程等,可用過(guò)調(diào)用操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù),對(duì)鍵盤(pán)按鍵的輸入數(shù)據(jù)進(jìn)行篡改,從而破壞用戶對(duì)鍵盤(pán)的按鍵操作。
因此,為了防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)操作系統(tǒng)的安全,在允許調(diào)用鍵盤(pán)按鍵修改函數(shù)之前,需要判斷調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否合法等,從而根據(jù)判斷結(jié)果決定是否允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。
本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,將鉤子函數(shù)與操作系統(tǒng)進(jìn)行掛接,通過(guò)鉤子函數(shù)監(jiān)視操作系統(tǒng)內(nèi)核中,鍵盤(pán)按鍵修改函數(shù)的調(diào)用事件,每當(dāng)監(jiān)測(cè)到鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),在操作系統(tǒng)響應(yīng)該調(diào)用事件之前,鉤子函數(shù)捕獲調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程,并判斷調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否合法。
S120,獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程。
具體而言,獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程,其中第一進(jìn)程對(duì)應(yīng)于當(dāng)前用戶使用的應(yīng)用程序,比如微信應(yīng)用程序等。
S130,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同。
具體地,在獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程后,通過(guò)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同,判斷調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,即判斷是否是當(dāng)前正在使用的應(yīng)用程序本身的進(jìn)程在調(diào)用鍵盤(pán)按鍵修改函數(shù)。
S140,如果檢測(cè)獲知第二進(jìn)程與第一進(jìn)程相同,則允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
具體地,如果檢測(cè)獲知第二進(jìn)程與第一進(jìn)程相同,則表明是當(dāng)前正在使用的應(yīng)用程序本身的進(jìn)程在調(diào)用鍵盤(pán)按鍵修改函數(shù),從而允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
綜上所述,本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該方法在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
基于以上實(shí)施例,當(dāng)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程不相同時(shí),并不直接允許其調(diào)用鍵盤(pán)按鍵修改函數(shù),需要對(duì)第二進(jìn)程的合法性進(jìn)行判斷,只有當(dāng)判斷第二進(jìn)程合法時(shí),才允許對(duì)其調(diào)用鍵盤(pán)按鍵修改函數(shù)。
下面結(jié)合附圖2對(duì)當(dāng)?shù)诙M(jìn)程與第一進(jìn)程不相同時(shí),對(duì)第二進(jìn)程的合法性進(jìn)行判斷的過(guò)程進(jìn)行具體說(shuō)明,說(shuō)明如下:
S210,在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
應(yīng)當(dāng)理解的是,根據(jù)應(yīng)用場(chǎng)景的不同,與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)可以被設(shè)置于操作系統(tǒng)的多個(gè)位置。本發(fā)明實(shí)施例的防止鍵盤(pán)輸入數(shù)據(jù)的方法中,為了將操作系統(tǒng)中相關(guān)安全防御的資源的整合,將與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)設(shè)置于具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中。
具體地,當(dāng)監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),運(yùn)行預(yù)設(shè)的與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù),從而利用鉤子函數(shù)獲取調(diào)用當(dāng)前調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程。
S220,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同。
S230,如果檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同,則根據(jù)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)第二進(jìn)程的合法性。
其中,需要說(shuō)明的是,根據(jù)具體應(yīng)用場(chǎng)景的不同,鉤子函數(shù)可采取多種方式檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性。
第一種示例,可以通過(guò)在操作系統(tǒng)本地對(duì)應(yīng)設(shè)置包含相關(guān)合法或者非法進(jìn)程相關(guān)特征的特征庫(kù),并通過(guò)特征庫(kù)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(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)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的相關(guān)信息發(fā)送至遠(yuǎn)程服務(wù)器,以供遠(yuǎn)程服務(wù)器根據(jù)特征庫(kù)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性。
第三種示例,預(yù)先存儲(chǔ)可靠、可信的進(jìn)程綁定安全標(biāo)識(shí),從而鉤子函數(shù)捕獲調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程后,檢測(cè)第二進(jìn)程是否具有上述安全標(biāo)識(shí)以檢測(cè)第二進(jìn)程的合法性。
S240,如果第二進(jìn)程非法,則拒絕第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
S250,如果第二進(jìn)程合法,則允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
具體地,本實(shí)施例根據(jù)預(yù)設(shè)的特征庫(kù)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程的合法性。如果檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程非法,則表明調(diào)用該第二進(jìn)程可能是惡意進(jìn)程,從而拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。如果檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程合法,則允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
需要說(shuō)明的是,特征庫(kù)中的具體內(nèi)容可以根據(jù)應(yīng)用需要進(jìn)行設(shè)置,例如包括合法進(jìn)程的白名單,和/或,包括非法進(jìn)程的黑名單。舉例說(shuō)明如下:
作為一種示例,特征庫(kù)中可包括白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程、是不會(huì)對(duì)操作系統(tǒng)的安全帶來(lái)破壞的進(jìn)程,允許該進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)不會(huì)破壞操作系統(tǒng)的安全。
在本示例中,在檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該第二進(jìn)程信息,與白名單中的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù),如果查詢獲取該第二進(jìn)程信息,與白名單中的進(jìn)程信息不匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù)。
作為一種示例,特征庫(kù)中包含黑名單,黑名單包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程,例如可能是惡意程序?qū)?yīng)的進(jìn)程,如果允許該進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)會(huì)造成對(duì)操作系統(tǒng)的破壞。
在本示例中,在檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。,如果該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息不匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
作為一種示例,特征庫(kù)中可包含黑名單和白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程,黑名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程。
在本示例中,檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該第二進(jìn)程信息,與白名單的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù);如果該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
綜上所述,本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的方法,當(dāng)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程不相同時(shí),則檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性,當(dāng)?shù)诙M(jìn)程合法時(shí),允許調(diào)用所述鍵盤(pán)按鍵修改函數(shù),當(dāng)?shù)诙M(jìn)程非法時(shí),拒絕調(diào)用鍵盤(pán)按鍵修改函數(shù),進(jìn)一步防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了一種修改鍵盤(pán)輸入數(shù)據(jù)的裝置。圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的修改鍵盤(pán)輸入數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖,如圖3所示,該修改鍵盤(pán)輸入數(shù)據(jù)的裝置包括:監(jiān)測(cè)模塊310、運(yùn)行模塊320、獲取模塊330、第一檢測(cè)模塊340和第一處理模塊350。
其中,監(jiān)測(cè)模塊310,用于監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用;
運(yùn)行模塊320,用于在監(jiān)測(cè)模塊監(jiān)測(cè)到操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),運(yùn)行預(yù)設(shè)的與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù);
獲取模塊330,用于獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程;
第一檢測(cè)模塊340,用于檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同;
第一處理模塊350,用于在檢測(cè)獲知第二進(jìn)程與第一進(jìn)程相同時(shí),允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
具體地,本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置,將鉤子函數(shù)與操作系統(tǒng)進(jìn)行掛接,通過(guò)鉤子函數(shù)監(jiān)視操作系統(tǒng)內(nèi)核中,鍵盤(pán)按鍵修改函數(shù)的調(diào)用事件,每當(dāng)監(jiān)測(cè)模塊310監(jiān)測(cè)到鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),在操作系統(tǒng)響應(yīng)該調(diào)用事件之前,運(yùn)行模塊320運(yùn)行鉤子函數(shù)捕獲調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程,從而判斷調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否合法。
進(jìn)而,獲取模塊330獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程,其中第一進(jìn)程對(duì)應(yīng)于當(dāng)前用戶使用的應(yīng)用程序,比如微信應(yīng)用程序等。
進(jìn)一步地,在獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程后,第一檢測(cè)模塊340通過(guò)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同,判斷調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,即判斷是否是當(dāng)前正在使用的應(yīng)用程序本身的進(jìn)程在調(diào)用鍵盤(pán)按鍵修改函數(shù)。
從而,如果第一檢測(cè)模塊340檢測(cè)獲知第二進(jìn)程與第一進(jìn)程相同,則表明是當(dāng)前正在使用的應(yīng)用程序本身的進(jìn)程在調(diào)用鍵盤(pán)按鍵修改函數(shù),從而第一處理模塊350允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
綜上所述,本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該裝置在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
基于以上實(shí)施例,當(dāng)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程不相同時(shí),并不直接允許其調(diào)用鍵盤(pán)按鍵修改函數(shù),需要對(duì)第二進(jìn)程的合法性進(jìn)行判斷,只有當(dāng)判斷第二進(jìn)程合法時(shí),才允許對(duì)其調(diào)用鍵盤(pán)按鍵修改函數(shù)。
下面結(jié)合附圖4對(duì)當(dāng)?shù)诙M(jìn)程與第一進(jìn)程不相同時(shí),對(duì)第二進(jìn)程的合法性進(jìn)行判斷的過(guò)程進(jìn)行具體說(shuō)明,說(shuō)明如下:
圖4是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置的結(jié)構(gòu)示意圖,如圖4所示,在如圖3所示的基礎(chǔ)上,該裝置還包括:設(shè)置模塊360、第二檢測(cè)模塊370和第二處理模塊380。
其中,設(shè)置模塊360,用于在具有網(wǎng)絡(luò)安全應(yīng)用的防御驅(qū)動(dòng)中設(shè)置與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù)。
第二檢測(cè)模塊370,用于在第一檢測(cè)模塊340檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性;
第二處理模塊380,用于在第二進(jìn)程非法時(shí),拒絕第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
具體地,在當(dāng)監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)被調(diào)用時(shí),運(yùn)行預(yù)設(shè)的與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù),從而利用設(shè)置模塊360設(shè)置的鉤子函數(shù)獲取調(diào)用當(dāng)前調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程,并檢測(cè)該進(jìn)程是否合法。
在本發(fā)明的一個(gè)實(shí)施例中,第二檢測(cè)模塊370根據(jù)特征庫(kù)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性。如果檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程非法,則表明調(diào)用該鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程可能是惡意進(jìn)程,從而第二處理模塊380拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。如果檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程合法,第二處理模塊380則允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
需要說(shuō)明的是,特征庫(kù)中的具體內(nèi)容可以根據(jù)應(yīng)用需要進(jìn)行設(shè)置,例如包括合法進(jìn)程的白名單,和/或,包括非法進(jìn)程的黑名單。舉例說(shuō)明如下:
第一種示例,特征庫(kù)中可包括白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程、是不會(huì)對(duì)操作系統(tǒng)的安全帶來(lái)破壞的進(jìn)程,允許該進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)不會(huì)破壞操作系統(tǒng)的安全。
在本示例中,在第一檢測(cè)模塊340檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),第二檢測(cè)模塊370根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該第二進(jìn)程信息,與白名單中的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此第二處理模塊380允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù)。如果查詢獲取該第二進(jìn)程信息,與白名單中的進(jìn)程信息不匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此第二處理模塊380拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù)。
第二種示例,特征庫(kù)中包含黑名單,黑名單包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程,例如可能是惡意程序?qū)?yīng)的進(jìn)程,如果允許該進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)會(huì)造成對(duì)操作系統(tǒng)的破壞。
在本示例中,在第一檢測(cè)模塊340檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),第二檢測(cè)模塊370根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此第二處理模塊380拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。如果該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息不匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此第二處理模塊380允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
第三那種示例,特征庫(kù)中可包含黑名單和白名單,白名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是合法進(jìn)程,黑名單中包含的進(jìn)程信息對(duì)應(yīng)的進(jìn)程是非法進(jìn)程。
在本示例中,第一檢測(cè)模塊340檢測(cè)獲知第二進(jìn)程與第一進(jìn)程不相同時(shí),第二檢測(cè)模塊370根據(jù)該第二進(jìn)程的進(jìn)程信息查詢特征庫(kù),如果查詢獲取該第二進(jìn)程信息,與白名單的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是合法進(jìn)程,因此第二處理模塊380允許該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修該函數(shù);如果第二檢測(cè)模塊370檢測(cè)該第二進(jìn)程的進(jìn)程信息與黑名單包含的進(jìn)程信息匹配,則認(rèn)為該第二進(jìn)程是非法進(jìn)程,因此第二處理模塊380拒絕該第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
綜上所述,本發(fā)明實(shí)施例的防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置,當(dāng)檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程不相同時(shí),則檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程的合法性,當(dāng)?shù)诙M(jìn)程合法時(shí),允許調(diào)用所述鍵盤(pán)按鍵修改函數(shù),當(dāng)?shù)诙M(jìn)程非法時(shí),拒絕調(diào)用鍵盤(pán)按鍵修改函數(shù),進(jìn)一步防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了一種終端設(shè)備。
圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖,如圖5所示,該終端設(shè)備包括防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置500。
需要說(shuō)明的是,上述防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置500的描述可參考上述結(jié)合圖3和圖4對(duì)防止修改鍵盤(pán)輸入數(shù)據(jù)的裝置的描述,在此不再贅述。
綜上所述,本發(fā)明實(shí)施例的終端設(shè)備,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該終端設(shè)備在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出了另外一種終端設(shè)備。
圖6是根據(jù)本發(fā)明一個(gè)具體實(shí)施例的終端設(shè)備的結(jié)構(gòu)示意圖,如圖6所示,終端設(shè)備1000可以是移動(dòng)電話等。
參見(jiàn)圖6,終端設(shè)備1000可以包括以下一個(gè)或多個(gè)組件:處理器1001,存儲(chǔ)器1002,電源電路1003,多媒體組件1004,音頻組件1005,輸入/輸出(I/O)的接口1006,傳感器組件1007,以及通信組件1008。
電源電路1003,用于為終端設(shè)備的各個(gè)電路或器件供電;存儲(chǔ)器1002用于存儲(chǔ)可執(zhí)行程序代碼;處理器1001通過(guò)讀取存儲(chǔ)器1002中存儲(chǔ)的可執(zhí)行程序代碼來(lái)運(yùn)行與可執(zhí)行程序代碼對(duì)應(yīng)的程序,以用于執(zhí)行以下步驟:監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用,運(yùn)行預(yù)設(shè)的與鍵盤(pán)按鍵修改函數(shù)對(duì)應(yīng)的鉤子函數(shù);
獲取操作系統(tǒng)當(dāng)前頂層窗口所屬的第一進(jìn)程;
檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的第二進(jìn)程與第一進(jìn)程是否相同;
如果檢測(cè)獲知第二進(jìn)程與第一進(jìn)程相同,則允許第二進(jìn)程調(diào)用鍵盤(pán)按鍵修改函數(shù)。
需要說(shuō)明的是,上述對(duì)終端設(shè)備1000的描述可參考上述結(jié)合圖1和圖2對(duì)防止修改鍵盤(pán)輸入數(shù)據(jù)的方法的描述,在此不再贅述。
綜上所述,本發(fā)明實(shí)施例的終端設(shè)備,監(jiān)測(cè)操作系統(tǒng)內(nèi)核提供的鍵盤(pán)按鍵修改函數(shù)是否被調(diào)用,如果被調(diào)用時(shí)判斷調(diào)用該鍵盤(pán)按鍵修改函數(shù)的進(jìn)程是否是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,如果是操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程,則允許調(diào)用鍵盤(pán)按鍵修改函數(shù)。該終端設(shè)備在調(diào)用按鍵修改函數(shù)之前,檢測(cè)調(diào)用鍵盤(pán)按鍵修改函數(shù)的進(jìn)程與操作系統(tǒng)當(dāng)前頂層窗口所屬的進(jìn)程是否一致,一致時(shí)才允許調(diào)用鍵盤(pán)按鍵修改函數(shù),防止鍵盤(pán)輸入數(shù)據(jù)被惡意篡改,保護(hù)了操作系統(tǒng)的安全。
此外,術(shù)語(yǔ)“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括至少一個(gè)該特征。在本發(fā)明的描述中,“多個(gè)”的含義是至少兩個(gè),例如兩個(gè),三個(gè)等,除非另有明確具體的限定。
在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不必須針對(duì)的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說(shuō)明書(shū)中描述的不同實(shí)施例或示例以及不同實(shí)施例或示例的特征進(jìn)行結(jié)合和組合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。