一種數(shù)據(jù)處理方法及裝置的制造方法
【專利摘要】本發(fā)明實施例公開了一種數(shù)據(jù)處理方法及裝置,應用于第一應用程序,該方法包括:截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,該數(shù)據(jù)操作指令中攜帶該第二應用程序的標識信息以及對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型;判斷該操作類型是否為預設保護類型;當該操作類型為預設保護類型時,根據(jù)該第二應用程序的該標識信息,確定該第二應用程序?qū)哪繕诉M程路徑;判斷該目標進程路徑是否屬于預設進程路徑集合;如果是,丟棄該數(shù)據(jù)操作指令。應用本發(fā)明實施例以避免硬件數(shù)據(jù)被篡改,進而導致終端的數(shù)據(jù)被破壞,影響用戶體驗。
【專利說明】
一種數(shù)據(jù)處理方法及裝置
技術(shù)領域
[0001]本發(fā)明涉及計算機系統(tǒng)優(yōu)化領域,特別涉及一種數(shù)據(jù)處理方法及裝置。
【背景技術(shù)】
[0002]對于終端而言,其具有多種類型的硬件數(shù)據(jù),如MSR分區(qū)、數(shù)據(jù)總線、端口和物理內(nèi)存等等。其中,由于硬件數(shù)據(jù)影響終端的正常運行,因此,硬件數(shù)據(jù)的安全非常重要,舉例而言,屬于硬件數(shù)據(jù)的數(shù)據(jù)總線可以把(PU的數(shù)據(jù)傳送到存儲器或輸入輸出接口等其他部件,也可以將其他部件的數(shù)據(jù)傳送到CPU,如果數(shù)據(jù)總線上的數(shù)據(jù)被修改了,就會導致CPU的處理結(jié)果被修改,這樣就會嚴重破壞終端的數(shù)據(jù)。
[0003]但是,近年來,各種應用程序?qū)映霾桓F,終端中的各種數(shù)據(jù)存在很大隱患,尤其是硬件數(shù)據(jù)。具體的,對于硬件數(shù)據(jù)而言,一些應用程序可以通過調(diào)用內(nèi)核的NtSystemDebugControl函數(shù)對硬件數(shù)據(jù)進行讀寫操作,如惡意軟件,對硬件數(shù)據(jù)進行修改,進而導致終端數(shù)據(jù)被破壞,為用戶造成困擾。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例公開了一種數(shù)據(jù)處理方法及裝置,以避免硬件數(shù)據(jù)被篡改,進而導致終端數(shù)據(jù)被破壞,影響用戶體驗。具體方案如下:
[0005]—方面,本發(fā)明實施例提供了一種數(shù)據(jù)處理方法,應用于第一應用程序,所述方法包括:
[0006]截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,所述數(shù)據(jù)操作指令中攜帶所述第二應用程序的標識信息以及對所述硬件數(shù)據(jù)所執(zhí)行操作的操作類型;
[0007]判斷所述操作類型是否為預設保護類型;
[0008]當所述操作類型為預設保護類型時,根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑;
[0009]判斷所述目標進程路徑是否屬于預設進程路徑集合;
[0010]如果是,丟棄所述數(shù)據(jù)操作指令。
[0011]較佳的,所述預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑。
[0012]較佳的,所述數(shù)據(jù)操作指令中還攜帶有所述硬件數(shù)據(jù)的類型值;
[0013]在所述根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑之前,本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法還包括:
[0014]判斷所述類型值是否存在于預設類型值集合中,如果是,執(zhí)行所述根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑的步驟。
[0015]較佳的,所述截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,包括:
[0016]基于預先掛鉤的Nt SystemDebugControl函數(shù),截獲所述第二應用程序通過所述NtSystemDebugContro I函數(shù)發(fā)送的關(guān)于所述硬件數(shù)據(jù)的所述數(shù)據(jù)操作指令。
[0017]較佳的,本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法還包括:
[0018]當所述操作類型不為預設保護類型時,調(diào)用所述NtSystemDebugControl函數(shù),執(zhí)行所述數(shù)據(jù)操作指令。
[0019]較佳的,所述操作類型包括寫操作類型或讀操作類型;
[0020]所述預定保護類型,包括:寫操作類型。
[0021]另一方面,本發(fā)明實施例還提供了一種數(shù)據(jù)處理裝置,應用于第一應用程序,所述裝置包括:操作指令截獲模塊、操作類型判斷模塊、目標進程路徑確定模塊、目標進程路徑判斷模塊和操作指令丟棄模塊;
[0022]所述操作指令截獲模塊:用于截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,所述數(shù)據(jù)操作指令中攜帶所述第二應用程序的標識信息以及對所述硬件數(shù)據(jù)所執(zhí)行操作的操作類型;
[0023]所述操作類型判斷模塊:用于判斷所述操作類型是否為預設保護類型;當所述操作類型為預設保護類型時,觸發(fā)所述目標進程路徑確定模塊;
[0024]所述目標進程路徑確定模塊:用于根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑;
[0025]所述目標進程路徑判斷模塊:用于判斷所述目標進程路徑是否屬于預設進程路徑集合,如果是,觸發(fā)所述操作指令丟棄模塊;
[0026]所述操作指令丟棄模塊:用于丟棄所述數(shù)據(jù)操作指令。
[0027]較佳的,所述預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑。
[0028]較佳的,所述數(shù)據(jù)操作指令中還攜帶有所述硬件數(shù)據(jù)的類型值;
[0029]所述裝置還包括類型值判斷模塊;
[0030]所述類型值判斷模塊:用于判斷所述類型值是否存在于預設類型值集合中,如果是,觸發(fā)所述目標進程路徑確定模塊。
[0031 ]較佳的,所述操作指令截獲模塊具體用于:
[0032]基于預先掛鉤的Nt SystemDebugControl函數(shù),截獲所述第二應用程序通過所述NtSystemDebugContro I函數(shù)發(fā)送的關(guān)于所述硬件數(shù)據(jù)的所述數(shù)據(jù)操作指令。
[0033]較佳的,本發(fā)明實施例所提供的一種數(shù)據(jù)處理裝置還包括操作指令執(zhí)行模塊;
[0034]所述操作指令執(zhí)行模塊:用于當所述操作類型不為預設保護類型時,調(diào)用所述NtSystemDebugControl函數(shù),執(zhí)行所述數(shù)據(jù)操作指令。
[0035]較佳的,所述操作類型包括寫操作類型或讀操作類型;
[0036]所述預定保護類型,包括:寫操作類型。
[0037]在本方案中,截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,該數(shù)據(jù)操作指令中攜帶該第二應用程序的標識信息以及對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型;判斷該操作類型是否為預設保護類型;當該操作類型為預設保護類型時,根據(jù)該第二應用程序的該標識信息,確定該第二應用程序?qū)哪繕诉M程路徑;判斷該目標進程路徑是否屬于預設進程路徑集合;如果是,丟棄該數(shù)據(jù)操作指令。以避免硬件數(shù)據(jù)被篡改,進而導致終端的數(shù)據(jù)被破壞,影響用戶體驗。當然,實施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時達到以上所述的所有優(yōu)點。
【附圖說明】
[0038]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0039]圖1為本發(fā)明實施例提供的一種數(shù)據(jù)處理方法的流程示意圖;
[0040]圖2為本發(fā)明實施例提供的一種數(shù)據(jù)處理方法的另一流程示意圖;
[0041]圖3為本發(fā)明實施例提供的一種數(shù)據(jù)處理方法的另一流程示意圖;
[0042]圖4為本發(fā)明實施例提供的一種數(shù)據(jù)處理裝置的結(jié)構(gòu)示意圖;
[0043]圖5為本發(fā)明實施例提供的一種數(shù)據(jù)處理裝置的另一結(jié)構(gòu)示意圖。
【具體實施方式】
[0044]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0045]本發(fā)明實施例提供了一種數(shù)據(jù)處理方法及裝置,以避免硬件數(shù)據(jù)被篡改,進而導致終端數(shù)據(jù)被破壞,影響用戶體驗。
[0046]下面首先對本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法進行介紹。
[0047]需要說明的是,本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法可以應用于第一應用程序,該第一應用程序可以安裝于任一終端中,如電腦以及手機等。并且,可以實現(xiàn)該數(shù)據(jù)處理方法的功能軟件可以是專門的客戶端軟件,也可以是其他安全軟件的插件。
[0048]如圖1所示,本發(fā)明實施例提供了一種數(shù)據(jù)處理方法,可以包括步驟:
[0049]SlOl:截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,該數(shù)據(jù)操作指令中攜帶該第二應用程序的標識信息以及對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型;
[0050]可以理解的是,該第一應用程序可以安裝于任一終端中,該第一應用程序通過特定方式可以獲得第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,其中,該第二應用程序可以是與該第一應用程序安裝于同一終端中的任一可以發(fā)送數(shù)據(jù)操作指令的應用程序。并且,該第一應用程序可以獲得該第二應用程序針對該終端的任意硬件數(shù)據(jù)的數(shù)據(jù)操作指令。
[0051]S102:判斷該操作類型是否為預設保護類型,如果是,執(zhí)行S103:
[0052]可以理解的是,在該安裝有該第一應用程序的終端中已經(jīng)預先存儲有預設保護類型,該預設保護類型可以由該終端用戶自主設置,也可以由該終端根據(jù)該第一應用程序默認設置。其中,截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令后,可以判斷該數(shù)據(jù)操作指令對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型是否為預設保護類型,即將該操作類型與該預設保護類型進行匹配,如果匹配成功,則判斷為是,繼續(xù)后續(xù)的數(shù)據(jù)處理流程,如果匹配不成功,則判斷為否,則結(jié)束數(shù)據(jù)處理流程。
[0053]S103:根據(jù)該第二應用程序的該標識信息,確定該第二應用程序?qū)哪繕诉M程路徑;
[0054]在實際應用中,可以根據(jù)該第二應用程序的該標識信息,利用現(xiàn)有技術(shù)確定該第二應用程序?qū)倪M程標識符,進而根據(jù)該進程標識符可以查找到該第二應用程序?qū)哪繕诉M程路徑。
[0055]S104:判斷該目標進程路徑是否屬于預設進程路徑集合,如果是,執(zhí)行S105;
[0056]需要說明的是,可以預先存儲一個預設進程路徑集合,該預設進程路徑集合中包含有需要進行攔截(丟棄)的數(shù)據(jù)操作指令所對應的應用程序的進程路徑。將該目標進程路徑與該預設進程路徑集合中的每一個進程路徑進行一一匹配,若匹配成功,則判斷該目標進程路徑屬于預設進程路徑集合,繼續(xù)進行后續(xù)的數(shù)據(jù)保護流程;若匹配不成功,則判斷該目標進程路徑不屬于預設進程路徑集合,發(fā)送并執(zhí)行該數(shù)據(jù)操作指令。其中,該預設進程路徑集合中可以包括至少一個預先確定出的惡意應用程序的進程路徑。以避免惡意應用程序?qū)K端中的數(shù)據(jù)的破壞。該預先確定出的惡意應用程序可以根據(jù)該實際應用中出現(xiàn)的各類應用程序確定。
[0057]S105:丟棄該數(shù)據(jù)操作指令。
[0058]需要說明的是,當判斷出該目標進程路徑屬于預設進程路徑集合后,可以認為該數(shù)據(jù)操作指令為終端中的應用程序(如惡意應用程序)要對硬件數(shù)據(jù)進行操作,而對于硬件數(shù)據(jù)來說,該類操作是不希望被進行的,此時,可以采用現(xiàn)有技術(shù)將該數(shù)據(jù)操作指令進行丟棄。
[0059]此外,為了更好的使用戶知曉自身所持有的終端的安全狀況,丟棄該數(shù)據(jù)操作指令后,還可以輸出提示信息,以提示用戶該終端存在安全隱患。其中,該提示信息可以為聲音提示,可以為屏幕亮度提示,可以為文字信息提示,還可以為界面跳轉(zhuǎn)提示,等等,本發(fā)明實施例并不對該提示信息的提示形式進行限定。其中,該提示信息中可以攜帶該第二應用程序的該標識信息,以起到對該第二應用程序進行定位的作用,用戶可以根據(jù)該提示信息對該第二應用程序進行處理,卸載或設置權(quán)限限制?;蛘咴撎崾拘畔⒁越缑嫣D(zhuǎn)的形式進行提示,可以是直接跳轉(zhuǎn)至該終端的程序卸載界面,定位在該第二應用程序上,以便該終端用戶進行處理。等等,這都是合理的。
[0060]應用本發(fā)明實施例,截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,該數(shù)據(jù)操作指令中攜帶該第二應用程序的標識信息以及對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型;判斷該操作類型是否為預設保護類型;當該操作類型為預設保護類型時,根據(jù)該第二應用程序的該標識信息,確定該第二應用程序?qū)哪繕诉M程路徑;判斷該目標進程路徑是否屬于預設進程路徑集合,其中,該預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑;如果是,丟棄該數(shù)據(jù)操作指令。以避免硬件數(shù)據(jù)被篡改,進而影響終端的數(shù)據(jù)被破壞,影響用戶體驗。
[0061]進一步的,在實際應用中,數(shù)據(jù)操作指令針對該硬件數(shù)據(jù)時,所對應的操作類型可以包括寫操作類型或讀操作類型。為了提高該數(shù)據(jù)處理的效率,并不需要對所有的數(shù)據(jù)操作指令進行處理,可以只處理關(guān)于所對應操作類型為寫操作類型的數(shù)據(jù)操作指令,此時,該預定保護類型可以包括寫操作類型。即對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型為寫操作類型時,才會繼續(xù)后續(xù)的數(shù)據(jù)處理流程,否則,可以發(fā)送并執(zhí)行該數(shù)據(jù)操作指令。
[0062]更進一步的,對于終端中的硬件數(shù)據(jù)來說,其所對應的對終端的系統(tǒng)的安全性的關(guān)鍵程度也存在高低之分。為了更好的提供數(shù)據(jù)處理的效率,可以根據(jù)硬件數(shù)據(jù)所對應的對終端的系統(tǒng)的安全性的關(guān)鍵程度,預先存儲一個預設類型值集合,該集合中包含該硬件數(shù)據(jù)所對應的對終端的系統(tǒng)的安全性的關(guān)鍵程度超過一定閾值的硬件數(shù)據(jù)所對應的類型值。其中,對于該預設類型值集合中所包含的類型值可以根據(jù)實際情況進行調(diào)整。需要說明的是,在判斷出該數(shù)據(jù)操作指令對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型為預設保護類型后,還可以繼續(xù)判斷該硬件數(shù)據(jù)的的類型值是否在預設類型值集合中,當判斷在預設類型值集合中時,繼續(xù)后續(xù)數(shù)據(jù)處理流程,否則,結(jié)束該數(shù)據(jù)處理流程,以減少后續(xù)數(shù)據(jù)處理的數(shù)據(jù)量。具體的,如圖2所示,所述數(shù)據(jù)操作指令中還可以攜帶有該硬件數(shù)據(jù)的類型值;
[0063]在所述根據(jù)該第二應用程序的該標識信息,確定該第二應用程序?qū)哪繕诉M程路徑(S103)之前,本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法還可以包括:
[0064]S201:判斷該類型值是否存在于預設類型值集合中,如果是,執(zhí)行S103。
[0065]在實際應用中,能實現(xiàn)對硬件數(shù)據(jù)進行操作功能的函數(shù)存在多種,在一種具體實現(xiàn)方式中,如圖3所示,所述截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令(S101),可以包括:
[0066]SlOll:基于預先掛鉤的NtSystemDebugControl函數(shù),截獲該第二應用程序通過該NtSystemDebugControl函數(shù)發(fā)送的關(guān)于該硬件數(shù)據(jù)的該數(shù)據(jù)操作指令。
[0067]需要說明的是,可以依據(jù)系統(tǒng)服務描述符表(System Services DescriptorTable-SSDT)預先對該NtSystemDebugControl函數(shù)進行掛鉤,在預先掛鉤的NtSystemDebugControI函數(shù)中,可以調(diào)用該函數(shù)NtSystemDebugControl發(fā)送該數(shù)據(jù)操作指令,并執(zhí)行數(shù)據(jù)操作的動作,也可以將該數(shù)據(jù)操作指令丟棄,使其不能再繼續(xù)進行后續(xù)的數(shù)據(jù)操作的動作。
[0068]可以理解的是,該第一應用程序可以截獲該第二應用程序所發(fā)送的所有的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,并且,該第二應用程序可以是安裝有該第一應用程序的終端中的任一可以發(fā)送關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令的應用程序。本發(fā)明實施例所提供的數(shù)據(jù)處理指令會對均符合各種判斷條件的數(shù)據(jù)處理指令進行丟棄,對于本發(fā)明實施例中的各種判斷條件中,該數(shù)據(jù)處理指令至少不符合其中的任意一種判斷條件,本發(fā)明實施例并不會對其進行丟棄。具體的,如圖3所示,本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法還可以包括:
[0069]S301:當該操作類型不為預設保護類型時,調(diào)用該NtSystemDebugControl函數(shù),執(zhí)行該數(shù)據(jù)操作指令。
[°07°] 可以理解的是,在預先掛鉤的NtSystemDebugControl函數(shù)中,可以直接調(diào)用該NtSystemDebugControl函數(shù),執(zhí)行該數(shù)據(jù)操作指令。
[0071]下面通過具體實施例對本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法進行介紹。
[0072]在用戶電腦中,存在一個第二應用程序A,第一應用程序B,并且預先掛鉤了NtSystemDebugControl函數(shù)。當該第二應用程序A調(diào)用NtSystemDebugControl函數(shù)發(fā)送數(shù)據(jù)操作指令I,該第一應用程序B通過調(diào)用該預先掛鉤的NtSystemDebugControl函數(shù)截獲該數(shù)據(jù)操作指令I,經(jīng)判斷,該數(shù)據(jù)操作指令I為惡意應用程序(第二應用程序A)針對硬件數(shù)據(jù)發(fā)出的,要對該硬件數(shù)據(jù)進行寫操作,則該第一應用程序?qū)υ摂?shù)據(jù)操作指令I進行丟棄,以避免硬件數(shù)據(jù)被篡改,進而影響終端的數(shù)據(jù)被破壞,影響用戶體驗。
[0073]相應于上述方法實施例,本發(fā)明實施例提供了一種數(shù)據(jù)處理裝置,可以應用于第一應用程序,如圖4所示,所述裝置可以包括:操作指令截獲模塊401、操作類型判斷模塊402、目標進程路徑確定模塊403、目標進程路徑判斷模塊404和操作指令丟棄模塊405;
[0074]所述操作指令截獲模塊401:用于截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,所述數(shù)據(jù)操作指令中攜帶所述第二應用程序的標識信息以及對所述硬件數(shù)據(jù)所執(zhí)行操作的操作類型;
[0075]所述操作類型判斷模塊402:用于判斷所述操作類型是否為預設保護類型;當所述操作類型為預設保護類型時,觸發(fā)所述目標進程路徑確定模塊303;
[0076]所述目標進程路徑確定模塊403:用于根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑;
[0077]所述目標進程路徑判斷模塊404:用于判斷所述目標進程路徑是否屬于預設進程路徑集合,如果是,觸發(fā)所述操作指令丟棄模塊405;
[0078]所述操作指令丟棄模塊405:用于丟棄所述數(shù)據(jù)操作指令。
[0079]應用本發(fā)明實施例,截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,該數(shù)據(jù)操作指令中攜帶該第二應用程序的標識信息以及對該硬件數(shù)據(jù)所執(zhí)行操作的操作類型;判斷該操作類型是否為預設保護類型;當該操作類型為預設保護類型時,根據(jù)該第二應用程序的所述標識信息,確定該第二應用程序?qū)哪繕诉M程路徑;判斷該目標進程路徑是否屬于預設進程路徑集合,其中,該預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑;如果是,丟棄該數(shù)據(jù)操作指令。以避免硬件數(shù)據(jù)被篡改,進而影響終端的數(shù)據(jù)被破壞,影響用戶體驗。
[0080]具體的,所述預設進程路徑集合可以包括至少一個預先確定出的惡意應用程序的進程路徑。
[0081 ]具體的,所述數(shù)據(jù)操作指令中還攜帶有所述硬件數(shù)據(jù)的類型值;
[0082]如圖5所示,本發(fā)明實施例所提供的一種數(shù)據(jù)處理裝置還可以包括類型值判斷模塊 501;
[0083]所述類型值判斷模塊501:用于判斷所述類型值是否存在于預設類型值集合中,如果是,觸發(fā)所述目標進程路徑確定模塊403。
[0084]具體的,所述操作指令截獲模塊401具體用于:
[0085]基于預先掛鉤的Nt SystemDebugControl函數(shù),截獲所述第二應用程序通過所述NtSystemDebugContro I函數(shù)發(fā)送的關(guān)于所述硬件數(shù)據(jù)的所述數(shù)據(jù)操作指令。
[0086]具體的,本發(fā)明實施例所提供的一種數(shù)據(jù)處理裝置還可以包括操作指令執(zhí)行模塊;
[0087]所述操作指令執(zhí)行模塊:用于當所述操作類型不為預設保護類型時,調(diào)用所述NtSystemDebugControl函數(shù),執(zhí)行所述數(shù)據(jù)操作指令。
[0088]具體的,所述操作類型包括寫操作類型或讀操作類型;
[0089]所述預定保護類型,包括:寫操作類型。
[0090]對于系統(tǒng)/裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0091]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
[0092]本領域普通技術(shù)人員可以理解實現(xiàn)上述方法實施方式中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲于計算機可讀取存儲介質(zhì)中,這里所稱得的存儲介質(zhì),如:R0M/RAM、磁碟、光盤等。
[0093]以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。
【主權(quán)項】
1.一種數(shù)據(jù)處理方法,其特征在于,應用于第一應用程序,所述方法包括: 截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,所述數(shù)據(jù)操作指令中攜帶所述第二應用程序的標識信息以及對所述硬件數(shù)據(jù)所執(zhí)行操作的操作類型; 判斷所述操作類型是否為預設保護類型; 當所述操作類型為預設保護類型時,根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑; 判斷所述目標進程路徑是否屬于預設進程路徑集合; 如果是,丟棄所述數(shù)據(jù)操作指令。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)操作指令中還攜帶有所述硬件數(shù)據(jù)的類型值; 在所述根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑之前,還包括: 判斷所述類型值是否存在于預設類型值集合中,如果是,執(zhí)行所述根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑的步驟。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,包括: 基于預先掛鉤的NtSystemDebugControl函數(shù),截獲所述第二應用程序通過所述NtSystemDebugContro I函數(shù)發(fā)送的關(guān)于所述硬件數(shù)據(jù)的所述數(shù)據(jù)操作指令。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括: 當所述操作類型不為預設保護類型時,調(diào)用所述NtSystemDebugControl函數(shù),執(zhí)行所述數(shù)據(jù)操作指令。6.根據(jù)權(quán)利要求1-5任一項所述的方法,其特征在于,所述操作類型包括寫操作類型或讀操作類型; 所述預定保護類型,包括:寫操作類型。7.一種數(shù)據(jù)處理裝置,其特征在于,應用于第一應用程序,所述裝置包括:操作指令截獲模塊、操作類型判斷模塊、目標進程路徑確定模塊、目標進程路徑判斷模塊和操作指令丟棄模塊; 所述操作指令截獲模塊:用于截獲第二應用程序發(fā)送的關(guān)于硬件數(shù)據(jù)的數(shù)據(jù)操作指令,所述數(shù)據(jù)操作指令中攜帶所述第二應用程序的標識信息以及對所述硬件數(shù)據(jù)所執(zhí)行操作的操作類型; 所述操作類型判斷模塊:用于判斷所述操作類型是否為預設保護類型;當所述操作類型為預設保護類型時,觸發(fā)所述目標進程路徑確定模塊; 所述目標進程路徑確定模塊:用于根據(jù)所述第二應用程序的所述標識信息,確定所述第二應用程序?qū)哪繕诉M程路徑; 所述目標進程路徑判斷模塊:用于判斷所述目標進程路徑是否屬于預設進程路徑集合,如果是,觸發(fā)所述操作指令丟棄模塊; 所述操作指令丟棄模塊:用于丟棄所述數(shù)據(jù)操作指令。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述預設進程路徑集合包括至少一個預先確定出的惡意應用程序的進程路徑。9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述數(shù)據(jù)操作指令中還攜帶有所述硬件數(shù)據(jù)的類型值; 所述裝置還包括類型值判斷模塊; 所述類型值判斷模塊:用于判斷所述類型值是否存在于預設類型值集合中,如果是,觸發(fā)所述目標進程路徑確定模塊。10.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述操作指令截獲模塊具體用于: 基于預先掛鉤的NtSystemDebugControl函數(shù),截獲所述第二應用程序通過所述NtSystemDebugContro I函數(shù)發(fā)送的關(guān)于所述硬件數(shù)據(jù)的所述數(shù)據(jù)操作指令。
【文檔編號】G06F21/56GK105893845SQ201610206286
【公開日】2016年8月24日
【申請日】2016年4月5日
【發(fā)明人】楊峰
【申請人】北京金山安全軟件有限公司