本發(fā)明涉及信息安全技術領域,尤其涉及一種防止用戶界面特權隔離被攻擊的方法、裝置及終端設備。
背景技術:
通常,操作系統(tǒng)提供調用函數(shù),可以向用戶界面特權隔離消息過濾器中添加過濾消息,允許高完整性級別的進程能從低完整性級別的進程接收什么信息。
然而,有些低完整性級別的惡意軟件會通過在較高完整性級別的進程上下文里執(zhí)行任意代碼提升允許特權,從而向目標窗口添加和刪除過濾信息,使得目標窗口不能正常工作,對操作系統(tǒng)的安全帶來破壞。
技術實現(xiàn)要素:
本發(fā)明的目的旨在至少在一定程度上解決上述的技術問題之一。
為此,本發(fā)明的第一個目的在于提出一種防止用戶界面特權隔離被攻擊的方法,該方法避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
本發(fā)明的第二個目的在于提出了一種防止用戶界面特權隔離被攻擊的裝置。
本發(fā)明的第三個目的在于提出一種終端設備。
本發(fā)明的第四個目的在于提出另一種終端設備。
為達上述目的,根據(jù)本發(fā)明第一方面實施例提出的一種防止用戶界面特權隔離被攻擊的方法,包括以下步驟:監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用;如果監(jiān)測到當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與所述用戶界面特權隔離函數(shù)對應的鉤子函數(shù);檢測所述目標窗口所屬進程是否為所述當前進程;如果檢測獲知所述目標窗口所屬進程是所述當前進程,則允許所述當前進程調用所述用戶界面特權隔離函數(shù)修改所述目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
本發(fā)明實施例的防止用戶界面特權隔離被攻擊的方法,首先監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,如果目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該方法避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
另外,根據(jù)本發(fā)明上述實施例的防止用戶界面特權隔離被攻擊的方法還可以具有如下附加的技術特征:
在一些示例中,所述的方法,還包括:如果檢測獲知所述目標窗口所屬進程不是所述當前進程,則根據(jù)所述鉤子函數(shù)中的特征庫檢測所述當前進程的合法性;如果所述當前進程非法,則拒絕所述當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
在一些示例中,如果所述當前進程合法,則允許所述當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
在一些示例中,在所述監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用之前,還包括:在具有網(wǎng)絡安全應用的防御驅動中設置與所述用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
在一些示例中,所述檢測當前進程的合法性,包括:根據(jù)預設的特征庫檢測當前進程的合法性。
在一些示例中,所述特征庫包括:包括合法進程的白名單,和/或,包括非法進程的黑名單。
為達上述目的,根據(jù)本發(fā)明的第二方面實施例提出的一種防止用戶界面特權隔離被攻擊的裝置,包括:監(jiān)測模塊,用于監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用;運行模塊,用于如果監(jiān)測到當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與所述用戶界面特權隔離函數(shù)對應的鉤子函數(shù);第一檢測模塊,用于檢測所述目標窗口所屬進程是否為所述當前進程;第一處理模塊,用于在檢測獲知所述目標窗口所屬進程是所述當前進程時,允許所述當前進程調用所述用戶界面特權隔離函數(shù)修改所述目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
本發(fā)明實施例的防止用戶界面特權隔離被攻擊的裝置,首先監(jiān)測模塊監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時運行模塊運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),使第一檢測模塊檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,第一處理模塊在目標窗口所屬進程是當前進程時,允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該裝置避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
另外,根據(jù)本發(fā)明上述實施例的防止用戶界面特權隔離被攻擊的裝置還可以具有如下附加的技術特征:
在一些示例中,所述的裝置,還包括:第二檢測模塊,用于在檢測獲知所述目標窗口所屬進程不是所述當前進程時,根據(jù)所述鉤子函數(shù)中的特征庫檢測所述當前進程的合法性;第二處理模塊,用于在所述當前進程非法時,拒絕所述當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
在一些示例中,所述的裝置,包括:所述第二處理模塊還用于在所述當前進程合法時,允許所述當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
在一些示例中,所述的裝置,還包括:設置模塊,用于在具有網(wǎng)絡安全應用的防御驅動中設置與所述用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
在一些示例中,所述檢測當前進程的合法性,包括:根據(jù)預設的特征庫檢測當前進程的合法性。
在一些示例中,所述特征庫包括:包括合法進程的白名單,和/或,包括非法進程的黑名單。
為了實現(xiàn)上述目的,本發(fā)明第三方面實施例提出了一種終端設備,包括本發(fā)明第二方面實施例所述的防止用戶界面特權隔離被攻擊的裝置。
本發(fā)明實施例的終端設備,首先監(jiān)測模塊監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時運行模塊運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),使第一檢測模塊檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,第一處理模塊在目標窗口所屬進程是當前進程時,允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該裝置避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
為達上述目的,根據(jù)本申請的第四方面實施例提出的一種終端設備,包括以下一個或多個組件:處理器,存儲器,電源電路,多媒體組件,音頻組件,輸入/輸出(I/O)的接口,傳感器組件,以及通信組件;其中,電路板安置在殼體圍成的空間內部,所述處理器和所述存儲器設置在所述電路板上;所述電源電路,用于為終端設備的各個電路或器件供電;所述存儲器用于存儲可執(zhí)行程序代碼;所述處理器通過讀取所述存儲器中存儲的可執(zhí)行程序代碼來運行與所述可執(zhí)行程序代碼對應的程序,以用于執(zhí)行以下步驟:
監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用;
如果監(jiān)測到當前進程調用所述用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與所述用戶界面特權隔離函數(shù)對應的鉤子函數(shù);
所述目標窗口所屬進程是否為所述當前進程;
如果檢測獲知所述目標窗口所屬進程是所述當前進程,則允許所述當前進程調用所述用戶界面特權隔離函數(shù)修改所述目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
本發(fā)明實施例的終端設備,首先監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,如果目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
附圖說明
本發(fā)明的上述和/或附加的方面和優(yōu)點從結合下面附圖對實施例的描述中將變得明顯和容易理解,其中:
圖1是根據(jù)本發(fā)明一個實施例的防止用戶界面特權隔離被攻擊的方法的流程圖;
圖2是根據(jù)本發(fā)明另一個實施例的防止用戶界面特權隔離被攻擊的方法的流程圖;
圖3是根據(jù)本發(fā)明一個實施例的防止用戶界面特權隔離被攻擊的裝置的結構示意圖;
圖4是根據(jù)本發(fā)明另一個實施例的防止用戶界面特權隔離被攻擊的裝置的結構示意圖;
圖5是根據(jù)本發(fā)明一個實施例的終端設備的結構示意圖;以及
圖6是根據(jù)本發(fā)明另一個實施例的終端設備的結構示意圖。
具體實施方式
下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。
下面參考附圖描述本發(fā)明實施例的防止用戶界面特權隔離被攻擊的方法、裝置及終端設備。
圖1是根據(jù)本發(fā)明一個實施例的防止用戶界面特權隔離被攻擊的方法的流程圖,如圖1所示,該防止用戶界面特權隔離被攻擊的方法包括:
S101,監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用。
S102,如果監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
通常,操作系統(tǒng)內核會為用戶提供用戶界面特權隔離函數(shù),通過該用戶界面特權隔離函數(shù)可以修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。其中,根據(jù)具體應用場景的不同,操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)不同。
舉例而言,當操作系統(tǒng)提供的用戶界面特權隔離函數(shù)是ChangeWindowMessageFilterEx時,窗口A進程是較低等完整性級別的進程,窗口B進程是較高等完整性級別進程,通過調用用戶界面特權隔離函數(shù)ChangeWindowMessageFilterEx,可以向用戶界面特權隔離消息過濾器中添加過濾消息,允許高完整性級別的B進程能從低完整性級別的A進程接收什么信息。
由此可見,惡意軟件可以通過調用操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。其中,惡意軟件可以是系統(tǒng)上執(zhí)行惡意任務的病毒、蠕蟲和特洛伊木馬的程序,通過破壞調用用戶界面特權隔離函數(shù)的當前進程修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。比如,目標窗口是安全軟件窗口,惡意軟件能夠向安全軟件發(fā)送指定的消息破壞安全軟件進程,也可以阻止安全軟件的窗口接收相關的消息,進而安全軟件的防御功能將不能正常工作,從而破壞操作系統(tǒng)的安全。
為了避免惡意軟件通過調用操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,本發(fā)明提供的防止用戶界面特權隔離被攻擊的方法預先在系統(tǒng)中設置與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
進而,監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,當監(jiān)測到用戶界面特權隔離函數(shù)被當前進程調用時,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。即,在操作系統(tǒng)響應該調用事件之前,鉤子函數(shù)就捕獲到當前進程,即鉤子函數(shù)先得到控制權。其中,該控制權包括:可以改變當前進程調用別的函數(shù),也可以不作處理而當前進程繼續(xù)調用用戶界面特權隔離函數(shù),還可以強制結束當前進程等等。從而,通過與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)確定是否允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
S103,檢測目標窗口所屬進程是否為當前進程。
S104,如果檢測獲知目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
具體而言,監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),并獲取目標窗口所屬進程。
進而,通過檢測目標窗口所屬進程與調用用戶界面特權隔離函數(shù)的當前進程是否相同,即判斷是否是目標窗口本身的進程在調用用戶界面特權隔離函數(shù)。
如果檢測獲知目標窗口所屬進程與當前進程相同,則表明是目標窗口本身的進程在調用用戶界面特權隔離函數(shù),從而允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
綜上所述,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的方法,首先監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,如果目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該方法避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
基于以上實施例,當檢測目標窗口所屬進程與當前進程不相同時,并不直接允許當前進程直接調用用戶界面特權隔離函數(shù),需要對當前進程的合法性進行判斷,只有當判斷當前進程合法時,才允許其調用用戶界面特權隔離函數(shù)。
其中,檢測當前進程是否合法的方式有很多種,例如:根據(jù)預設的特征庫檢測、根據(jù)預設的安全標識檢測和根據(jù)服務器之間的交互檢測等等,可以根據(jù)不同的應用場景,選擇合適的檢測方式。
下面結合附圖2對當目標窗口所屬進程與當前進程不相同時,對當前進程的合法性進行判斷的過程進行具體說明,說明如下:
S201,在具有網(wǎng)絡安全應用的防御驅動中設置與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
應當理解的是,根據(jù)應用場景的不同,與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)可以被設置于操作系統(tǒng)的多個位置,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的方法中,將鉤子函數(shù)設置于具有網(wǎng)絡安全應用的防御驅動中,有利于操作系統(tǒng)中相關安全資源的整合。
S202,監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用。
S203,如果監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
需要說明的是,步驟S202-S203的描述與上述步驟S101-S102相對應,因此對的步驟S202-S203的描述參考上述步驟S101-S102的描述,在此不再贅述。
S204,檢測目標窗口所屬進程是否為當前進程。
S205,如果檢測獲知目標窗口所屬進程不是當前進程,則根據(jù)預設的特征庫檢測當前進程的合法性。
具體而言,監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息時,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),并獲取目標窗口所屬進程。
首先,通過檢測目標窗口所屬進程與調用用戶界面特權隔離函數(shù)的當前進程是否相同,即判斷是否是當前正在使用的應用程序本身的進程在調用用戶界面特權隔離函數(shù)。
如果檢測獲知目標窗口所屬進程不是當前進程,則表明不是當前正在使用的應用程序本身的進程在調用用戶界面特權隔離函數(shù),從而需要根據(jù)預設的特征庫檢測當前進程的合法性。
S206,如果檢測獲知當前進程非法,則拒絕當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
S207,如果檢測獲知當前進程合法,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
具體地,本實施例根據(jù)預設的特征庫檢測調用用戶界面特權隔離函數(shù)的進程的合法性。如果檢測用戶界面特權隔離函數(shù)的進程非法,則表明調用該用戶界面特權隔離函數(shù)的進程可能是惡意進程,從而拒絕該進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。如果檢測調用用戶界面特權隔離函數(shù)的進程合法,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
需要說明的是,特征庫中的具體內容可以根據(jù)應用需要進行設置,例如包括合法進程的白名單,和/或,包括非法進程的黑名單。舉例說明如下:
作為一種示例,特征庫中可包括白名單,白名單中包含的進程信息對應的進程是合法進程、是不會對操作系統(tǒng)的安全帶來破壞的進程,允許進程調用用戶界面特權隔離函數(shù),不會破壞操作系統(tǒng)的安全。
在本示例中,在檢測獲知目標窗口所屬進程不是當前進程時,根據(jù)當前進程的進程信息查詢特征庫,如果查詢獲取當前進程信息,與白名單中的進程信息匹配,則認為當前進程是合法進程,因此允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。與白名單中的進程信息不匹配,則認為該進程是非法進程,因此拒絕該進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
作為一種示例,特征庫中包含黑名單,黑名單包含的進程信息對應的進程是非法進程,例如可能是惡意程序對應的進程,如果允許該進程調用用戶界面特權隔離函數(shù)會造成對操作系統(tǒng)的破壞。
在本示例中,在檢測獲知目標窗口所屬進程不是當前進程時,根據(jù)當前進程的進程信息查詢特征庫,如果當前進程的進程信息與黑名單包含的進程信息匹配,則認為該當前進程是非法進程,因此拒絕當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。與黑名單中的進程信息不匹配,則認為該進程是合法進程,因此允許該進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
作為一種示例,特征庫中可包含黑名單和白名單,白名單中包含的進程信息對應的進程是合法進程,黑名單中包含的進程信息對應的進程是非法進程。
在本示例中,檢測獲知目標窗口所屬進程不是當前進程時,根據(jù)當前進程的進程信息查詢特征庫,如果查詢獲取當前進程信息,與白名單的進程信息匹配,則認為當前進程是合法進程,因此允許當前進程調用用戶界面特權隔離函數(shù);如果當前進程的進程信息與黑名單包含的進程信息匹配,則認為當前進程是非法進程,因此拒絕當前進程調用用戶界面特權隔離函數(shù)。
綜上所述,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的方法,當檢測目標窗口所屬進程不是調用用戶界面特權隔離函數(shù)的當前進程時,則根據(jù)鉤子函數(shù)中的特征庫檢測當前進程合法性,當當前進程合法時,允許調用用戶界面特權隔離函數(shù),當當前進程非法時,拒絕調用用戶界面特權隔離函數(shù),進一步防止用戶界面特權隔離被攻擊,保護了操作系統(tǒng)的安全。
為了實現(xiàn)上述實施例,本發(fā)明還提出了一種防止用戶界面特權隔離被攻擊的裝置。圖3是根據(jù)本發(fā)明一個實施例的防止用戶界面特權隔離被攻擊的裝置的結構示意圖,如圖3所示,該防止用戶界面特權隔離被攻擊的裝置包括:監(jiān)測模塊10、運行模塊20、第一檢測模塊30和第一處理模塊40。
其中,監(jiān)測模塊10,用于監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用。
運行模塊20,用于如果監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
第一檢測模塊30,用于檢測目標窗口所屬進程是否為當前進程。
第一處理模塊40,用于在檢測獲知目標窗口所屬進程是當前進程時,允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
具體地,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的裝置,將鉤子函數(shù)與操作系統(tǒng)進行掛接,通過鉤子函數(shù)監(jiān)視操作系統(tǒng)內核中,用戶界面特權隔離函數(shù)的調用,每當監(jiān)測模塊10監(jiān)測到用戶界面特權隔離函數(shù)被調用時,在操作系統(tǒng)響應調用之前,運行模塊20運行鉤子函數(shù)捕獲調用用戶界面特權隔離函數(shù)的當前進程,從而判斷調用用戶界面特權隔離函數(shù)的當前進程是否合法。
進一步地,第一檢測模塊30通過檢測目標窗口所屬進程與調用用戶界面特權隔離函數(shù)的當前進程是否相同,即判斷是否是當前目標窗口本身的進程在調用用戶界面特權隔離函數(shù)。
從而,如果第一檢測模塊30檢測獲知目標窗口所屬進程與當前進程相同,則表明是當前目標窗口本身的進程在調用用戶界面特權隔離函數(shù),從而第一處理模塊40允許當前進程調用用戶界面特權隔離函數(shù)。
需要說明的是,前述對防止用戶界面特權隔離被攻擊的方法實施例的解釋說明也適用于該實施例的防止用戶界面特權隔離被攻擊的裝置,其實現(xiàn)原理類似,此處不再贅述。
綜上所述,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的裝置,首先監(jiān)測模塊監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時運行模塊運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),使第一檢測模塊檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,第一處理模塊在目標窗口所屬進程是當前進程時,允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該裝置避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
基于以上實施例,當檢測目標窗口所屬進程與當前進程不相同時,并不直接允許當前進程直接調用用戶界面特權隔離函數(shù),需要對當前進程的合法性進行判斷,只有當判斷當前進程合法時,才允許對其調用用戶界面特權隔離函數(shù)。
下面結合附圖4對當目標窗口所屬進程與當前進程不相同時,對當前進程的合法性進行判斷的過程進行具體說明,說明如下:
圖4是根據(jù)本發(fā)明另一個實施例的防止用戶界面特權隔離被攻擊的裝置的結構示意圖,如圖4所示,在如圖3所示的基礎上,該裝置還包括:設置模塊50、第二檢測模塊60和第二處理模塊70。
其中,設置模塊50,用于在具有網(wǎng)絡安全應用的防御驅動中設置與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
第二檢測模塊60,用于在檢測獲知目標窗口所屬進程不是當前進程時,根據(jù)鉤子函數(shù)中的特征庫檢測當前進程的合法性。
第二處理模塊70,用于在當前進程非法時,拒絕當前進程調用用戶界面特權隔離函數(shù)。
具體地,當監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)被調用時,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),從而利用設置模塊50設置的鉤子函數(shù)獲取調用當前調用用戶界面特權隔離函數(shù)的當前進程,并通過特征庫檢測該進程是否合法。
需要說明的是,特征庫中的具體內容可以根據(jù)應用需要進行設置,例如包括合法進程的白名單,和/或,包括非法進程的黑名單。
需要說明的是,前述對防止用戶界面特權隔離被攻擊的方法實施例的解釋說明也適用于該實施例的防止用戶界面特權隔離被攻擊的裝置,其實現(xiàn)原理類似,此處不再贅述。
綜上所述,本發(fā)明實施例的防止用戶界面特權隔離被攻擊的裝置,當檢測目標窗口所屬進程不是調用用戶界面特權隔離函數(shù)的當前進程時,則根據(jù)鉤子函數(shù)中的特征庫檢測當前進程合法性,當當前進程合法時,允許調用用戶界面特權隔離函數(shù),當當前進程非法時,拒絕調用用戶界面特權隔離函數(shù),進一步防止用戶界面特權隔離被攻擊,保護了操作系統(tǒng)的安全。
為了實現(xiàn)上述實施例,本發(fā)明還提出了一種終端設備,圖5是根據(jù)本發(fā)明一個實施例的終端設備的結構示意圖。
如圖5所示,本發(fā)明實施例的終端設備包括防止用戶界面特權隔離被攻擊的裝置1000。
其中,需要說明的是,本發(fā)明實施例中的防止用戶界面特權隔離被攻擊的裝置1000與上述實施例中參考圖3-圖4描述的防止用戶界面特權隔離被攻擊的裝置對應,在此不再贅述。
本發(fā)明實施例的終端設備,首先監(jiān)測模塊監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時運行模塊運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù),使第一檢測模塊檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,第一處理模塊在目標窗口所屬進程是當前進程時,允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。該裝置避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
為了實現(xiàn)上述實施例,本發(fā)明還提出了另一種終端設備。
圖6是根據(jù)本發(fā)明另一個實施例的終端設備的結構示意圖。
參見圖6,終端設備2000可以包括以下一個或多個組件:處理器2001,存儲器2002,電源電路2003,多媒體組件2004,音頻組件2005,輸入/輸出(I/O)的接口2006,傳感器組件2007,以及通信組件2008。
電源電路2003,用于為終端設備的各個電路或器件供電;存儲器2002用于存儲可執(zhí)行程序代碼;處理器2001通過讀取存儲器2002中存儲的可執(zhí)行程序代碼來運行與可執(zhí)行程序代碼對應的程序,以用于執(zhí)行以下步驟:
監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用。
如果監(jiān)測到當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息,運行預設的與用戶界面特權隔離函數(shù)對應的鉤子函數(shù)。
檢測目標窗口所屬進程是否為當前進程。
如果檢測獲知目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。
需要說明的是,前述對防止用戶界面特權隔離被攻擊的方法實施例的解釋說明也適用于該實施例的終端設備,其實現(xiàn)原理類似,此處不再贅述。
綜上所述,本發(fā)明實施例的終端設備,首先監(jiān)測操作系統(tǒng)內核提供的用戶界面特權隔離函數(shù)是否被調用,接著在被調用時檢測目標窗口所屬進程是否是調用該用戶界面特權隔離函數(shù)的當前進程,如果目標窗口所屬進程是當前進程,則允許當前進程調用用戶界面特權隔離函數(shù)修改目標窗口的用戶界面特權隔離消息過濾器中的過濾信息。避免了惡意軟件對用戶界面特權隔離的攻擊,保護了操作系統(tǒng)的安全。
在本發(fā)明的描述中,需要理解的是,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括至少一個該特征。在本發(fā)明的描述中,“多個”的含義是至少兩個,例如兩個,三個等,除非另有明確具體的限定。
在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結合和組合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領域的普通技術人員在本發(fā)明的范圍內可以對上述實施例進行變化、修改、替換和變型。