一種指令處理方法及裝置的制造方法
【專利摘要】本發(fā)明實(shí)施例公開一種指令處理方法及裝置,用于解決安全客戶端無(wú)法攔截非法客戶端非常規(guī)操作的問(wèn)題,該方法包括:當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取該指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,第一控制碼用于標(biāo)識(shí)該指令所需操作數(shù)據(jù);根據(jù)第一控制碼第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)程序的名稱,判斷該指令是否為合法指令;當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行;當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行。實(shí)施本發(fā)明實(shí)施例,可以攔截非法客戶端的非常規(guī)操作。
【專利說(shuō)明】
一種指令處理方法及裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種指令處理方法及裝置。
【背景技術(shù)】
[0002]用戶可以在手機(jī)、平板電腦、筆記本電腦等用戶設(shè)備上安裝安全客戶端,用于提高用戶設(shè)備的安全性。目前,安全客戶端能夠攔截非法客戶端常規(guī)操作,如采用系統(tǒng)導(dǎo)出的函數(shù)進(jìn)行惡意操作、結(jié)束進(jìn)程、修改注冊(cè)表等。但當(dāng)非法客戶端采用非常規(guī)操作進(jìn)行惡意行為時(shí),如采用系統(tǒng)未導(dǎo)出的函數(shù)進(jìn)行惡意操作等,安全客戶端將無(wú)法攔截這些操作。
【發(fā)明內(nèi)容】
[0003]本發(fā)明實(shí)施例公開了一種指令處理方法及裝置,用于解決安全客戶端無(wú)法攔截非法客戶端非常規(guī)操作的問(wèn)題。
[0004]第一方面公開一種指令處理方法,包括:
[0005]當(dāng)檢測(cè)到客戶端的進(jìn)程向所述客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取所述指令包括的第一控制碼和所述第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,所述第一控制碼用于標(biāo)識(shí)所述指令所需操作數(shù)據(jù);
[0006]根據(jù)所述第一控制碼、所述第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷所述指令是否為合法指令;
[0007]當(dāng)所述指令為合法指令時(shí),允許所述指令執(zhí)行;
[0008]當(dāng)所述指令為非法指令時(shí),禁止所述指令執(zhí)行。
[0009]在一個(gè)實(shí)施例中,所述根據(jù)所述第一控制碼、所述第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)程序的名稱,判斷所述指令是否為合法指令包括:
[0010]判斷配置文件中是否存在與所述第一控制碼相同的第二控制碼;
[0011]當(dāng)不存在時(shí),確定所述指令為合法指令;
[0012]當(dāng)存在時(shí),判斷所述第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與所述第一名稱相同;
[0013]當(dāng)相同時(shí),確定所述指令為非法指令;
[0014]當(dāng)不相同時(shí),確定所述指令為合法指令。
[0015]在一個(gè)實(shí)施例中,所述方法還包括:
[0016]建立配置文件;
[0017]獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及所述第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱;
[0018]將所述第二控制碼和所述第三名稱存儲(chǔ)在所述配置文件中。
[0019]在一個(gè)實(shí)施例中,所述禁止所述指令執(zhí)行包括:
[0020]中斷所述進(jìn)程向所述驅(qū)動(dòng)程序發(fā)送所述第一控制碼。
[0021 ]第二方面公開一種指令處理裝置,包括:
[0022]獲取單元,用于當(dāng)檢測(cè)到客戶端的進(jìn)程向所述客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí), 獲取所述指令包括的第一控制碼和所述第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,所述第一控制碼用于標(biāo)識(shí)所述指令所需操作數(shù)據(jù);[〇〇23]判斷單元,用于根據(jù)所述獲取單元獲取的第一控制碼、所述獲取單元獲取的第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷所述指令是否為合法指令;[〇〇24]允許單元,用于當(dāng)所述判斷單元的判斷結(jié)果為是時(shí),允許所述指令執(zhí)行;
[0025]禁止單元,用于當(dāng)所述判斷單元的判斷結(jié)果為否時(shí),禁止所述指令執(zhí)行。
[0026]在一個(gè)實(shí)施例中,所述判斷單元包括:
[0027]第一判斷子單元,用于判斷配置文件中是否存在與所述第一控制碼相同的第二控制碼;
[0028]確定子單元,用于當(dāng)所述第一判斷子單元的判斷結(jié)果為否時(shí),確定所述指令為合法指令;
[0029]第二判斷子單元,用于當(dāng)所述第一判斷子單元的判斷結(jié)果為是時(shí),判斷所述第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與所述獲取單元獲取的第一名稱相同;
[0030]所述確定子單元,還用于當(dāng)所述第二判斷子單元的判斷結(jié)果為是時(shí),確定所述指令為非法指令;
[0031]所述確定子單元,還用于當(dāng)所述第二判斷子單元的判斷結(jié)果為否時(shí),確定所述指令為合法指令。[〇〇32] 在一個(gè)實(shí)施例中,所述裝置還包括:[〇〇33]建立單元,用于建立配置文件;[〇〇34]所述獲取單元,還用于獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及所述第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱;[〇〇35] 所述裝置還包括:
[0036]存儲(chǔ)單元,用于將所述獲取單元獲取的第二控制碼和所述獲取單元獲取的第三名稱存儲(chǔ)在所述建立單元建立的配置文件中。
[0037]在一個(gè)實(shí)施例中,所述禁止單元,具體用于中斷所述進(jìn)程向所述驅(qū)動(dòng)程序發(fā)送所述第一控制碼。
[0038]本發(fā)明實(shí)施例中,當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的包括控制碼的指令時(shí),獲取指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱判斷該指令是否為合法指令,當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行,當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行,可以攔截非法客戶端的非常規(guī)操作?!靖綀D說(shuō)明】
[0039]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0040]圖1是本發(fā)明實(shí)施例公開的一種指令處理方法的流程示意圖;
[0041]圖2是本發(fā)明實(shí)施例公開的一種指令處理裝置的結(jié)構(gòu)示意圖;
[0042]圖3是本發(fā)明實(shí)施例公開的另一種指令處理裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0043]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0044]本發(fā)明實(shí)施例公開了一種指令處理方法及裝置,用于解決安全客戶端無(wú)法攔截非法客戶端非常規(guī)操作的問(wèn)題。以下分別進(jìn)行詳細(xì)說(shuō)明。
[0045]為了更好地理解本發(fā)明實(shí)施例公開的一種指令處理方法及裝置,下面先對(duì)本發(fā)明實(shí)施例的應(yīng)用場(chǎng)景進(jìn)行描述。非法客戶端,即惡意軟件,可以采用非常規(guī)操作進(jìn)行惡意行為,這種非常規(guī)操作的前提是非法客戶端的進(jìn)程會(huì)把用于標(biāo)識(shí)所需操作數(shù)據(jù)的控制碼傳遞給非法客戶端的驅(qū)動(dòng)程序,非法客戶端的驅(qū)動(dòng)程序接收到控制碼時(shí),將對(duì)控制碼所標(biāo)識(shí)的數(shù)據(jù)進(jìn)行非法操作。因此,攔截這種非法操作就是攔截控制碼的傳遞,目前,常規(guī)的做法就是把需要攔截的控制碼寫入到安全客戶端(即安全軟件,如金山毒霸等)的防御驅(qū)動(dòng)中,當(dāng)安全客戶端檢測(cè)到包括控制碼的指令時(shí),將該控制碼、該控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的名稱與防御驅(qū)動(dòng)中存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱進(jìn)行匹配,如果匹配,將中斷此控制碼的傳遞。然而,由于要攔截的控制碼和控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的名稱存儲(chǔ)在安全客戶端的防御驅(qū)動(dòng)中,即內(nèi)核層中,如果要新增一個(gè)控制碼的攔截就必須修改安全客戶端的防御驅(qū)動(dòng)程序,以致風(fēng)險(xiǎn)較高、周期較長(zhǎng)。
[0046]請(qǐng)參閱圖1,圖1是本發(fā)明實(shí)施例公開的一種指令處理方法的流程示意圖。其中,該指令處理方法是從安全客戶端的角度描述的。如圖1所示,該指令處理方法可以包括以下步驟。
[0047]101、當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取該指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱。
[0048]本實(shí)施例中,當(dāng)安全客戶端檢測(cè)到一個(gè)客戶端的進(jìn)程向這個(gè)客戶端的驅(qū)動(dòng)程序發(fā)送的包括第一控制碼的指令,即檢測(cè)到用戶層向內(nèi)核層發(fā)送的包括第一控制碼的指令時(shí),安全客戶端將獲取(即解析出)該指令包括的第一控制碼,以及第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱。其中,驅(qū)動(dòng)設(shè)備是驅(qū)動(dòng)程序創(chuàng)建的,用于與其它進(jìn)程進(jìn)行交互的,一個(gè)驅(qū)動(dòng)程序可以創(chuàng)建至少一個(gè)驅(qū)動(dòng)設(shè)備,一個(gè)控制碼可以對(duì)應(yīng)至少一個(gè)驅(qū)動(dòng)設(shè)備,第一控制碼用于標(biāo)識(shí)該指令所需操作數(shù)據(jù)。其中,客戶端的進(jìn)程處于用戶層,客戶端的驅(qū)動(dòng)程序處于內(nèi)核層。
[0049]102、根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷該指令是否為合法指令,當(dāng)該指令是合法指令時(shí),執(zhí)行步驟103,當(dāng)該指令為非法指令時(shí),執(zhí)行步驟104。
[0050]本實(shí)施例中,獲取到第一控制碼和第一名稱之后,將判斷配置文件中是否存在與第一控制碼相同的第二控制碼,當(dāng)配置文件中不存在與第一控制碼相同的第二控制碼時(shí),表明該指令為合法指令,也表明這個(gè)客戶端為合法客戶端,將執(zhí)行步驟103。當(dāng)配置文件中存在與第一控制碼相同的第二控制碼時(shí),將繼續(xù)判斷第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與第一名稱相同,當(dāng)?shù)诙刂拼a對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱與第一名稱相同時(shí),表明該指令為非法指令,也表明這個(gè)客戶端為非法客戶端,將執(zhí)行步驟104。當(dāng)?shù)诙刂拼a對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱與第一名稱不同時(shí),表明該指令為合法指令,也表明這個(gè)客戶端為合法客戶端,將執(zhí)行步驟103。
[0051]在一個(gè)實(shí)施例中,可以預(yù)先在內(nèi)存中建立一個(gè)配置文件,在后續(xù)獲取到非法客戶端所需操作數(shù)據(jù)的第三控制碼以及第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱之后,可以將第二控制碼和第三名稱存儲(chǔ)在配置文件中,以便安全客戶端后續(xù)調(diào)用。[〇〇52]103、允許該指令執(zhí)行。[〇〇53]104、禁止該指令執(zhí)行。[〇〇54]其中,禁止該指令執(zhí)行,即中斷這個(gè)客戶端的進(jìn)行將第一控制碼發(fā)送給這個(gè)客戶端的驅(qū)動(dòng)程序。
[0055]在圖1所描述的指令處理方法中,當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的包括控制碼的指令時(shí),獲取指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱判斷該指令是否為合法指令,當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行,當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行,可以攔截非法客戶端的非常規(guī)操作。
[0056]請(qǐng)參閱圖2,圖2是本發(fā)明實(shí)施例公開的一種指令處理裝置的結(jié)構(gòu)圖示意圖。其中, 該指令處理裝置可以為安全客戶端。如圖2所示,該指令處理裝置可以包括:[〇〇57]獲取單元201,用于當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí), 獲取該指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,第一控制碼用于標(biāo)識(shí)該指令所需操作數(shù)據(jù);[〇〇58]判斷單元202,用于根據(jù)獲取單元201獲取的第一控制碼、獲取單元201獲取的第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷該指令是否為合法指令;[〇〇59]允許單元203,用于當(dāng)判斷單元202的判斷結(jié)果為是時(shí),允許該指令執(zhí)行;[〇〇6〇] 禁止單元204,用于當(dāng)判斷單元202的判斷結(jié)果為否時(shí),禁止該指令執(zhí)行。
[0061]作為一種可能的實(shí)施方式,判斷單元202可以包括:[〇〇62]第一判斷子單元2021,用于判斷配置文件中是否存在與獲取單元201第一控制碼相同的第二控制碼;[〇〇63]確定子單元2022,用于當(dāng)?shù)谝慌袛嘧訂卧?021的判斷結(jié)果為否時(shí),確定該指令為合法指令;[〇〇64] 第二判斷子單元2023,用于當(dāng)?shù)谝慌袛嘧訂卧?021的判斷結(jié)果為是時(shí),判斷第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與獲取單元201獲取的第一名稱相同;[0〇65]確定子單元2022,還用于當(dāng)?shù)诙袛嘧訂卧?023的判斷結(jié)果為是時(shí),確定該指令為非法指令;[〇〇66]確定子單元2022,還用于當(dāng)?shù)诙袛嘧訂卧?023的判斷結(jié)果為否時(shí),確定該指令為合法指令。[〇〇67]作為一種可能的實(shí)施方式,該指令處理裝置還可以包括:[〇〇68] 建立單元205,用于建立配置文件;
[0069]獲取單元201,還用于獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱;
[0070]該指令處理裝置還可以包括:
[0071]存儲(chǔ)單元206,用于將獲取單元201獲取的第二控制碼和獲取單元201獲取的第三名稱存儲(chǔ)在建立單元205建立的配置文件中。
[0072]具體地,判斷單元202根據(jù)獲取單元201獲取的第一控制碼、獲取單元201獲取的第一名稱以及建立單元205建立的配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷該指令是否為合法指令;
[0073]作為一種可能的實(shí)施方式,禁止單元204,具體用于中斷該客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送第一控制碼。
[0074]在圖2所描述的指令處理裝置中,當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的包括控制碼的指令時(shí),獲取指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱判斷該指令是否為合法指令,當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行,當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行,可以攔截非法客戶端的非常規(guī)操作。
[0075]請(qǐng)參閱圖3,圖3是本發(fā)明實(shí)施例公開的另一種指令處理裝置的結(jié)構(gòu)示意圖。其中,該指令處理裝置可以為安全客戶端。如圖3所示,該指令處理裝置包括處理器301和存儲(chǔ)器302,其中:
[0076]存儲(chǔ)器302中存儲(chǔ)有一組程序代碼,處理器301用于調(diào)用存儲(chǔ)器302存儲(chǔ)的程序代碼執(zhí)行以下操作:
[0077]當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取該指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,第一控制碼用于標(biāo)識(shí)該指令所需操作數(shù)據(jù);
[0078]根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷該指令是否為合法指令;
[0079]當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行;
[0080]當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行。
[0081]作為一種可能的實(shí)施方式,處理器301根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)程序的名稱,判斷該指令是否為合法指令包括:
[0082]判斷配置文件中是否存在與第一控制碼相同的第二控制碼;
[0083]當(dāng)不存在時(shí),確定該指令為合法指令;
[0084]當(dāng)存在時(shí),判斷第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與第一名稱相同;
[0085]當(dāng)相同時(shí),確定該指令為非法指令;
[0086]當(dāng)不相同時(shí),確定該指令為合法指令。
[0087]作為一種可能的實(shí)施方式,處理器301還用于調(diào)用存儲(chǔ)器302存儲(chǔ)的程序代碼執(zhí)行以下操作:
[0088]建立配置文件;
[0089]獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱;
[0090]將第二控制碼和第三名稱存儲(chǔ)在配置文件中。
[0091]作為一種可能的實(shí)施方式,處理器301禁止該指令執(zhí)行包括:
[0092]中斷該客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送第一控制碼。
[0093]在圖3所描述的指令處理裝置中,當(dāng)檢測(cè)到客戶端的進(jìn)程向該客戶端的驅(qū)動(dòng)程序發(fā)送的包括控制碼的指令時(shí),獲取指令包括的第一控制碼和第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,根據(jù)第一控制碼、第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱判斷該指令是否為合法指令,當(dāng)該指令為合法指令時(shí),允許該指令執(zhí)行,當(dāng)該指令為非法指令時(shí),禁止該指令執(zhí)行,可以攔截非法客戶端的非常規(guī)操作。[〇〇94]本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:閃存盤、只讀存儲(chǔ)器(read-only memory,ROM)、隨機(jī)存取器(random access memory,RAM)、磁盤或光盤等。
[0095]以上對(duì)本發(fā)明實(shí)施例公開的分布式系統(tǒng)中軟件加載方法及系統(tǒng)進(jìn)行了詳細(xì)介紹, 本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
【主權(quán)項(xiàng)】
1.一種指令處理方法,其特征在于,包括: 當(dāng)檢測(cè)到客戶端的進(jìn)程向所述客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取所述指令包括的第一控制碼和所述第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,所述第一控制碼用于標(biāo)識(shí)所述指令所需操作數(shù)據(jù); 根據(jù)所述第一控制碼、所述第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷所述指令是否為合法指令; 當(dāng)所述指令為合法指令時(shí),允許所述指令執(zhí)行; 當(dāng)所述指令為非法指令時(shí),禁止所述指令執(zhí)行。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述第一控制碼、所述第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)程序的名稱,判斷所述指令是否為合法指令包括: 判斷配置文件中是否存在與所述第一控制碼相同的第二控制碼; 當(dāng)不存在時(shí),確定所述指令為合法指令; 當(dāng)存在時(shí),判斷所述第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與所述第一名稱相同; 當(dāng)相同時(shí),確定所述指令為非法指令; 當(dāng)不相同時(shí),確定所述指令為合法指令。3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述方法還包括: 建立配置文件; 獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及所述第三控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱; 將所述第二控制碼和所述第三名稱存儲(chǔ)在所述配置文件中。4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述禁止所述指令執(zhí)行包括: 中斷所述進(jìn)程向所述驅(qū)動(dòng)程序發(fā)送所述第一控制碼。5.一種指令處理裝置,其特征在于,包括: 獲取單元,用于當(dāng)檢測(cè)到客戶端的進(jìn)程向所述客戶端的驅(qū)動(dòng)程序發(fā)送的指令時(shí),獲取所述指令包括的第一控制碼和所述第一控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第一名稱,所述第一控制碼用于標(biāo)識(shí)所述指令所需操作數(shù)據(jù); 判斷單元,用于根據(jù)所述獲取單元獲取的第一控制碼、所述獲取單元獲取的第一名稱以及配置文件存儲(chǔ)的控制碼和驅(qū)動(dòng)設(shè)備的名稱,判斷所述指令是否為合法指令; 允許單元,用于當(dāng)所述判斷單元的判斷結(jié)果為是時(shí),允許所述指令執(zhí)行; 禁止單元,用于當(dāng)所述判斷單元的判斷結(jié)果為否時(shí),禁止所述指令執(zhí)行。6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述判斷單元包括: 第一判斷子單元,用于判斷配置文件中是否存在與所述第一控制碼相同的第二控制碼; 確定子單元,用于當(dāng)所述第一判斷子單元的判斷結(jié)果為否時(shí),確定所述指令為合法指令; 第二判斷子單元,用于當(dāng)所述第一判斷子單元的判斷結(jié)果為是時(shí),判斷所述第二控制碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第二名稱是否與所述獲取單元獲取的第一名稱相同; 所述確定子單元,還用于當(dāng)所述第二判斷子單元的判斷結(jié)果為是時(shí),確定所述指令為非法指令;所述確定子單元,還用于當(dāng)所述第二判斷子單元的判斷結(jié)果為否時(shí),確定所述指令為 合法指令。7.根據(jù)權(quán)利要求5或6所述的裝置,其特征在于,所述裝置還包括:建立單元,用于建立配置文件;所述獲取單元,還用于獲取非法客戶端所需操作數(shù)據(jù)的第三控制碼以及所述第三控制 碼對(duì)應(yīng)的驅(qū)動(dòng)設(shè)備的第三名稱;所述裝置還包括:存儲(chǔ)單元,用于將所述獲取單元獲取的第二控制碼和所述獲取單元獲取的第三名稱存 儲(chǔ)在所述建立單元建立的配置文件中。8.根據(jù)權(quán)利要求5或6所述的裝置,其特征在于,所述禁止單元,具體用于中斷所述進(jìn)程 向所述驅(qū)動(dòng)程序發(fā)送所述第一控制碼。
【文檔編號(hào)】G06F21/51GK106022105SQ201610349105
【公開日】2016年10月12日
【申請(qǐng)日】2016年5月24日
【發(fā)明人】楊峰
【申請(qǐng)人】北京金山安全軟件有限公司