主動防御方法
【專利摘要】本發(fā)明提供了一種主動防御方法,以解決現(xiàn)有技術(shù)中由用戶自行選擇的沙箱技術(shù)所存在的問題。所述方法包括:在對目標對象執(zhí)行操作之前,觸發(fā)以下防御步驟:對待操作的目標對象,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,如果是,則在沙箱中完成該目標對象的執(zhí)行;如果否,則在沙箱外完成該目標對象的執(zhí)行。本發(fā)明可以在用戶對目標對象執(zhí)行操作之前,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,幫助用戶決定哪些有風險的程序需要在沙箱內(nèi)運行。
【專利說明】主動防御方法
[0001]本發(fā)明專利申請是申請日為2011年4月21日、申請?zhí)枮?01110100859.6、名稱為“利用沙箱技術(shù)進行防御的方法、裝置及安全瀏覽器”的中國發(fā)明專利申請的分案申請。
【技術(shù)領域】
[0002]本發(fā)明涉及計算機安全【技術(shù)領域】,特別是涉及一種利用沙箱技術(shù)進行防御的方法、裝置及一種安全瀏覽器。
【背景技術(shù)】
[0003]在計算機安全領域,沙箱(也稱為沙盒)是一種程序的隔離運行機制,其目的是限制不可信進程的權(quán)限。沙箱技術(shù)經(jīng)常被用于執(zhí)行未經(jīng)測試的或不可信的客戶程序。為了避免不可信程序可能破壞其它程序的運行,沙箱技術(shù)通過為不可信客戶程序提供虛擬化的磁盤、內(nèi)存以及網(wǎng)絡資源,而這種虛擬化手段對客戶程序來說是透明的。由于沙箱里的資源被虛擬化(或被間接化),所以沙箱里的不可信程序的惡意行為往往會被限制在沙箱中,從而保護系統(tǒng)原有的狀態(tài)。
[0004]具體來說,沙箱技術(shù)可以將一個程序放入沙箱運行,這樣該程序所創(chuàng)建、修改、刪除的所有文件和注冊表都會被虛擬化重定向,也就是說所有操作都是虛擬的,真實的文件和注冊表不會被改動,這樣可以確保病毒無法對系統(tǒng)關鍵部位進行改動破壞系統(tǒng)。
[0005]目前沙箱技術(shù)提供了兩種類型的沙箱:一種是特定型沙箱,例如=ChiOme(—種瀏覽器)利用沙箱技術(shù)將渲染引擎或Flash放在沙箱內(nèi)運行,以保證瀏覽器的安全;還有一種是通用型沙箱,例如=Sandboxie (另一種瀏覽器)則提供給用戶一個沙箱,讓用戶自行選擇軟件程序放入沙箱內(nèi)運行。
[0006]與特定型沙箱相比,上述由用戶選擇的通用型沙箱為用戶提供了更多的靈活性,極大地方便了用戶的使用。但是,這種讓用戶選擇的方式存在以下幾個問題:
[0007]第一,用戶必須自行判斷哪些是有風險的程序需要放在沙箱內(nèi)運行,如果用戶不了解程序的特性,就可能選擇錯誤;
[0008]第二,錯誤地使用沙箱,如將正在編輯文件的編輯程序放置沙箱內(nèi),會導致文件丟失;
[0009]第三,用戶自行選擇的方式易用性不高,操作復雜,不符合用戶的操作習慣。
【發(fā)明內(nèi)容】
[0010]本發(fā)明所要解決的技術(shù)問題是提供一種利用沙箱技術(shù)進行防御的方法、裝置及安全瀏覽器,以解決現(xiàn)有技術(shù)中由用戶自行選擇的沙箱技術(shù)所存在的問題。
[0011]為了解決上述問題,本發(fā)明公開了一種利用沙箱技術(shù)進行防御的方法,包括:
[0012]在對目標對象執(zhí)行操作之前,觸發(fā)以下防御步驟:
[0013]對待操作的目標對象,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,如果是,則在沙箱中完成該目標對象的執(zhí)打;如果否,則在沙箱外完成該目標對象的執(zhí)打。獨發(fā)防御步驟;和/或,在下載所述目標文匕御步驟;
則在用戶輸入所述信息時觸發(fā)防御步驟。待操作的目標對象是否符合預置的匹配規(guī)需要導入沙箱;如果不符合,則不需要導入否符合預置的匹配規(guī)則之前,還包括:創(chuàng)建:所述進程的父進程是否在沙箱內(nèi),如果是,
;如果否,則繼續(xù)判斷所述待操作的目標對否符合預置的匹配規(guī)則之前,還包括:判斷導入沙箱,如果是,則所述待操作的目標對述待操作的目標對象是否符合預置的匹配否符合預置的匹配規(guī)則之前,還包括:判斷=在白名單中,則所述待操作的目標對象是置的匹配規(guī)則;和/或,判斷所述目標對象的來源程序的相關信息是否符合預置的匹配規(guī)則。
[0029]其中,所述目標對象的相關信息包括目標對象的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源;所述來源程序的相關信息包括來源程序的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源。
[0030]優(yōu)選的,當所述待操作的目標對象為用戶輸入的信息時,判斷所述待操作的目標對象是否符合預置的匹配規(guī)則,包括:判斷所述用戶輸入的信息是否符合預置的匹配規(guī)則。
[0031]優(yōu)選的,根據(jù)客戶端的請求,由服務器端自動判斷所述待操作的目標對象的執(zhí)行是否需要導入沙箱;和/或,由客戶端自動判斷所述待操作的目標對象的執(zhí)行是否需要導入沙箱。
[0032]優(yōu)選的,如果所述待操作的目標對象的執(zhí)行需要導入沙箱,則導入沙箱之前,還包括:彈出提示窗提示用戶是否導入沙箱。
[0033]本發(fā)明還提供了一種利用沙箱技術(shù)進行防御的裝置,包括:
[0034]判斷觸發(fā)模塊,用于在對目標對象執(zhí)行操作之前,觸發(fā)所述自動判斷模塊;
[0035]自動判斷模塊,用于對待操作的目標對象,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,如果是,則在沙箱中完成該目標對象的執(zhí)行;如果否,則在沙箱外完成該目標對象的執(zhí)行。
[0036]其中,當自動判斷所述目標對象的執(zhí)行需要導入沙箱時:
[0037]如果所述目標對象為目標程序,則所述自動判斷模塊將該目標程序?qū)肷诚?,在沙箱中完成該目標程序的運行;
[0038]如果所述目標對象為目標文件,則所述自動判斷模塊將執(zhí)行該目標文件的關聯(lián)程序?qū)肷诚洌谏诚渲杏伤鲫P聯(lián)程序運行該目標文件;
[0039]如果所述目標對象為用戶輸入的信息,則所述自動判斷模塊將接收該用戶輸入信息的關聯(lián)程序?qū)肷诚?,在沙箱中根?jù)該用戶輸入信息運行所述關聯(lián)程序;所述用戶輸入的信息包括網(wǎng)址和/或關鍵詞。
[0040]其中,如果所述目標對象為目標程序,則所述判斷觸發(fā)模塊將所述目標程序下載到客戶端后在客戶端運行該目標程序之前觸發(fā)自動判斷模塊;和/或,在下載所述目標程序之前觸發(fā)自動判斷模塊;
[0041]如果所述目標對象為目標文件,則所述判斷觸發(fā)模塊將所述目標文件或執(zhí)行該目標文件的關聯(lián)程序下載到客戶端后在客戶端運行該目標文件之前觸發(fā)自動判斷模塊;和/或,在下載所述目標文件或在線執(zhí)行該目標文件的關聯(lián)程序之前觸發(fā)自動判斷模塊;
[0042]如果所述目標對象為用戶輸入的信息,則所述判斷觸發(fā)模塊在用戶輸入所述信息時觸發(fā)自動判斷模塊。
[0043]優(yōu)選的,所述自動判斷模塊包括:規(guī)則判斷子模塊,用于判斷所述待操作的目標對象是否符合預置的匹配規(guī)則,如果符合,則所述待操作的目標對象的執(zhí)行需要導入沙箱;如果不符合,則不需要導入沙箱。
[0044]優(yōu)選的,所述自動判斷模塊還包括:父進程判斷子模塊,用于在創(chuàng)建用于自動判斷所述目標對象的執(zhí)行的進程后,判斷所述進程的父進程是否在沙箱內(nèi),如果是,則所述待操繼續(xù)判斷所述待操作的目標對象是否符合
I標程序和/或目標文件時,所述規(guī)則判斷預置的匹配規(guī)則40/或,判斷所述目標對2則;
標對象的文件路徑、和/或加密數(shù)據(jù)、和/:值、和/或下載來源;所述來源程序的相關、和/或文件屬性、和/或圖標特征值、和/
丨勺信息時,所述規(guī)則判斷子模塊判斷所述用于當所述待操作的目標對象的執(zhí)行需要導=是否導入沙箱。
&如上所述的利用沙箱技術(shù)進行防御的裝
【專利附圖】
【附圖說明】
[0059]圖1是本發(fā)明實施例所述一種利用沙箱技術(shù)進行防御的方法流程圖;
[0060]圖2是本發(fā)明優(yōu)選實施例所述一種利用沙箱技術(shù)進行防御的方法流程圖;
[0061]圖3是本發(fā)明優(yōu)選實施例所述一種利用沙箱技術(shù)進行防御的裝置結(jié)構(gòu)圖。
【具體實施方式】
[0062]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進一步詳細的說明。
[0063]對于采用了沙箱技術(shù)的系統(tǒng),本發(fā)明提供了一種智能判定的方法,可以在用戶對目標對象執(zhí)行操作之前,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,從而幫助用戶決定哪些有風險的程序需要在沙箱內(nèi)運行。
[0064]下面通過實施例進行詳細說明。
[0065]參照圖1,是本發(fā)明實施例所述一種利用沙箱技術(shù)進行防御的方法流程圖。
[0066]步驟101,在對目標對象執(zhí)行操作之前,觸發(fā)以下防御步驟;
[0067]步驟102,對待操作的目標對象,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱;
[0068]如果是,則執(zhí)行步驟103 ;如果否,則執(zhí)行步驟104。
[0069]步驟103,如果需要導入沙箱,則在沙箱中完成該目標對象的執(zhí)行。
[0070]步驟104,如果不需要導入沙箱,則在沙箱外完成該目標對象的執(zhí)行。
[0071]即按照正常的處理流程執(zhí)行該目標對象。
[0072]優(yōu)選的,如果所述待操作的目標對象的執(zhí)行需要導入沙箱,則導入沙箱之前,還可以彈出提示窗提示用戶是否導入沙箱,以方便用戶根據(jù)自動判斷的結(jié)果進行自由選擇。
[0073]上述實施例中,所述目標對象包括但不限于目標程序、目標文件和用戶輸入的信息。下面分別進行詳細說明。
[0074](I)目標程序
[0075]所述目標程序通常指可執(zhí)行文件,如電子書、在線播放器、序號生成器等。
[0076]用戶可通過多種方式觸發(fā)步驟102的執(zhí)行,觸發(fā)方式包括但不限于:將目標程序下載到客戶端后,通過雙擊或在右鍵菜單中點擊“打開”等方式在客戶端運行該目標程序之前,可觸發(fā)步驟102進行自動判斷,從而防止惡意程序的運行破壞系統(tǒng);和/或,在下載目標程序之前進行觸發(fā),從而在將惡意程序下載到客戶端之前就提前進行了防御。此外,對于一些可在線運行的目標程序,也可以在運行之前觸發(fā)防御保護??傊?,在對目標程序的任何操作之前都可進行自動判斷,以保護系統(tǒng)的安全性。
[0077]對于判斷為需要導入沙箱執(zhí)行的目標程序,所述在沙箱中完成該目標程序的執(zhí)行是指:將該目標程序?qū)肷诚?,在沙箱中完成該目標程序的運行。例如,對于某網(wǎng)站上的色情播放器,將該播放器放入沙箱中運行。
[0078](2)目標文件
[0079]所述目標文件通常指圖片等不可執(zhí)行文件,這種目標文件的執(zhí)行需要由關聯(lián)程序完成。例如,對于圖片,需要啟動圖片瀏覽器來瀏覽,所述圖片瀏覽器即為該圖片文件的關聯(lián)程序。俞入信息,所述在沙箱中完成該用戶輸入信I序?qū)肷诚?,在沙箱中根?jù)該用戶輸入信止,在沙箱中新打開一個瀏覽器來鏈接到該輸入的關聯(lián)程序。
'乍的目標對象是哪一種,圖1所示方法都可每施例提供的自動判斷方法包括但不限于:配規(guī)則,如果符合,則所述待操作的目標對學入沙箱。
I勺數(shù)據(jù)庫,將所述待操作的目標對象與該數(shù)5查詢到,則符合匹配規(guī)則;如果未查詢到,聽的規(guī)則,或者直接存儲了符合匹配規(guī)則的-的目標對象,則表明該目標對象的執(zhí)行需則也不同:
亨和/或目標文件時,判斷所述待操作的目
[0099]加密數(shù)據(jù)(如MD5),和/或
[0100]文件屬性(如產(chǎn)品名稱、版本信息、簽名發(fā)行者、文件大小等),和/或
[0101]圖標特征值(如圖標哈希值),和/或
[0102]文件特征值(如文件哈希值),和/或
[0103]下載來源(如從哪個網(wǎng)站下載)。
[0104]基于上述目標對象的相關信息和來源程序的相關信息,所述匹配規(guī)則可以是:
[0105]例1:對于網(wǎng)站上的色情播放器,匹配規(guī)則如下:
[0106]來源程序為:瀏覽器程序或資源管理器;
[0107]目標的文件名:包含“日本AV”或“情色”…;
[0108]目標的文件圖標:為特定播放器圖標;
[0109]目標的文件大小:可以限制在一個范圍,比如:1MB~1MB ;
[0110]目標的文件描述:比如xxxx成人播放器,χχχχ專用播放器。
[0111]即符合上述規(guī)則的播放器即判定為色情播放器。
[0112]例2:對于未知有風險的電子書,匹配規(guī)則如下:
[0113]目標文件名稱:包含“電子書”的關鍵字;
[0114]目標文件圖標的特征值包含:電子書的圖標的特征。
[0115]對于符合上述規(guī)則的電子書判定為有風險的電子書。
[0116]例3:對于未知有風險的序號生成器,匹配規(guī)則如下:
[0117]目標文件名稱:有包含“序號生成器”或“keygen”或“cracker”或“破解機”的關鍵字;
[0118]目標文件圖標的特征值包含:序號生成器的圖標的特征。
[0119]對符合上述規(guī)則的序號生成器可判斷為有風險的序號生成器。
[0120]除上述列舉的幾種匹配規(guī)則之外,還可以有其他的多種規(guī)則,如進行模糊匹配或全文匹配,優(yōu)先進行文件名稱的匹配,等等,視具體應用而定,在此不再一一列舉。
[0121]2)當所述待操作的目標對象為用戶輸入的信息時,判斷所述待操作的目標對象是否符合預置的匹配規(guī)則,包括:判斷所述用戶輸入的信息是否符合預置的匹配規(guī)則。
[0122]例如,判斷用戶輸入的網(wǎng)址是否為一些色情網(wǎng)站的網(wǎng)址,或者判斷用戶輸入的關鍵詞是否包含“日本AV”或“情色”等信息。通過用戶輸入的信息,就可以預先判斷出用戶下一步要瀏覽的網(wǎng)站或要搜索的網(wǎng)頁是否需要放入沙箱。
[0123]基于上述列舉的各種匹配規(guī)則,優(yōu)選的,在對目標對象進行上述匹配規(guī)則的自動判斷之前,還可以優(yōu)先進行如下的自動判斷,列舉如下:
[0124]I)在判斷所述待操作的目標對象是否符合預置的匹配規(guī)則之前:
[0125]創(chuàng)建用于自動判斷所述目標對象的執(zhí)行的進程;
[0126]判斷所述進程的父進程是否在沙箱內(nèi),如果是,則所述待操作的目標對象的執(zhí)行需要導入沙箱;如果否,則繼續(xù)判斷所述待操作的目標對象是否符合預置的匹配規(guī)則。
[0127]即如果所述用于自動判斷目標對象的執(zhí)行的進程存在父進程,則該用于自動判斷的進程稱為子進程。如果父進程已導入沙箱中,說明該父進程不可信,那么該父進程調(diào)用的子進程也是不可信的,所以子進程也應該導入沙箱執(zhí)行。
[0128]2)判斷所述待操作的目標對象是否符合預置的匹配規(guī)則之前:含預置的匹配規(guī)則之前:
名單中,如果在黑名單中,則所述待操作的I中,則繼續(xù)判斷所述待操作的目標對象是承對象,如果待操作的目標對象在所述黑名戶,也不能排除所述待操作的目標對象一定
I在黑名單中,也可以直接進行攔截而不放
4斷之前使用,也可以組合起來在匹配規(guī)則找I例還提供了以下兩種實現(xiàn)方式:
瑞自動判斷所述待操作的目標對象的執(zhí)行
1各種規(guī)則,如果待操作的目標程序或目標
[0146]第二,避免將安全無風險的程序放置沙箱內(nèi)運行導致用戶數(shù)據(jù)的丟失;
[0147]第三,無需用戶的參與,因此不影響用戶的操作,易用性高。
[0148]基于上述內(nèi)容,本發(fā)明還提供了圖2所示的優(yōu)選實施例。
[0149]參照圖2,是本發(fā)明優(yōu)選實施例所述一種利用沙箱技術(shù)進行防御的方法流程圖。
[0150]以目標對象是目標程序為例,目標對象是目標文件和用戶輸入信息的情況與此類似,不再詳述。
[0151]整個待操作的目標程序自動進入沙箱的判斷流程如下:
[0152]步驟201,創(chuàng)建進程;
[0153]步驟202,判斷父進程是否在沙箱內(nèi);
[0154]如果父進程在沙箱內(nèi),則跳轉(zhuǎn)到步驟208 ;
[0155]如果父進程不在沙箱內(nèi),則繼續(xù)步驟203。
[0156]步驟203,判斷用戶是否選擇將所述待操作的目標程序的執(zhí)行導入沙箱;
[0157]如果用戶已選擇將所述待操作的目標程序的執(zhí)行導入沙箱,則跳轉(zhuǎn)到步驟208 ;
[0158]如果用戶未選擇將所述待操作的目標程序的執(zhí)行導入沙箱,則繼續(xù)步驟204。
[0159]步驟204,判斷所述待操作的目標程序是否在白名單中;
[0160]如果在白名單中,則跳轉(zhuǎn)到步驟209 ;
[0161]如果不在白名單中,則是未知程序,繼續(xù)步驟205。
[0162]步驟205,判斷所述待操作的目標對象是否在黑名單中;
[0163]如果在黑名單中,則跳轉(zhuǎn)到步驟208 ;
[0164]如果不在黑名單中,則繼續(xù)步驟206。
[0165]步驟206,判斷所述目標程序是否為特定類型的程序;
[0166]即根據(jù)各種匹配規(guī)則判斷是否為特定類型的程序;
[0167]如果是,則繼續(xù)步驟207 ;
[0168]如果不是,則跳轉(zhuǎn)到步驟209。
[0169]步驟207,彈出提示窗提示用戶該目標程序?qū)肷诚鋬?nèi)執(zhí)行;
[0170]如果用戶選擇導入,則將該目標程序加入沙箱運行列表。
[0171]步驟208,開始將目標程序的文件/注冊表的寫入、刪除、修改等操作動作導向沙箱中,判斷流程結(jié)束。
[0172]步驟209,將目標程序在一般環(huán)境下運行(非沙箱模式),判斷流程結(jié)束。
[0173]需要說明的是,上述步驟203至步驟205的順序也可以更換,但都需要在步驟206之前。
[0174]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術(shù)人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術(shù)人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0175]基于上述內(nèi)容,本發(fā)明還提供了相應的裝置實施例,如圖3所示。
[0176]參照圖3,是本發(fā)明優(yōu)選實施例所述一種利用沙箱技術(shù)進行防御的裝置結(jié)構(gòu)圖。
[0177]所述裝置可以包括以下模塊:丨1]所述判斷觸發(fā)模塊31將所述目標程序下變自動判斷模塊32 ;和/或,在下載所述目
&判斷觸發(fā)模塊31將所述目標文件或執(zhí)行端運行該目標文件之前觸發(fā)自動判斷模塊目標文件的關聯(lián)程序之前觸發(fā)自動判斷模
,則所述判斷觸發(fā)模塊31在用戶輸入所述
5:
喿作的目標對象是否符合預置的匹配規(guī)則,要導入沙箱;如果不符合,則不需要導入沙
I標程序和/或目標文件時,所述規(guī)則判斷卜合預置的匹配規(guī)則;和7或,判斷所述目標的匹配規(guī)則。
[0195]優(yōu)選的,所述自動判斷模塊32還可以包括:
[0196]用戶選擇判斷子模塊323,用于判斷用戶是否選擇將所述待操作的目標對象的執(zhí)行導入沙箱,如果是,則所述待操作的目標對象的執(zhí)行需要導入沙箱;如果否,則觸發(fā)所述規(guī)則判斷子模塊繼續(xù)判斷所述待操作的目標對象是否符合預置的匹配規(guī)則。
[0197]優(yōu)選的,所述自動判斷模塊32還可以包括:
[0198]白名單判斷子模塊324,用于判斷所述待操作的目標對象是否在白名單中,如果不在白名單中,則所述待操作的目標對象是未知對象,觸發(fā)所述規(guī)則判斷子模塊繼續(xù)判斷所述待操作的目標對象是否符合預置的匹配規(guī)則;如果在白名單中,則不需要導入沙箱。
[0199]優(yōu)選的,所述自動判斷模塊32還可以包括:
[0200]黑名單判斷子模塊325,用于判斷所述待操作的目標對象是否在黑名單中,如果在黑名單中,則所述待操作的目標對象的執(zhí)行需要導入沙箱;如果不在黑名單中,則觸發(fā)所述規(guī)則判斷子模塊繼續(xù)判斷所述待操作的目標對象是否符合預置的匹配規(guī)則。
[0201]優(yōu)選的,所述裝置還可以包括:
[0202]提示模塊33,用于當所述待操作的目標對象的執(zhí)行需要導入沙箱時,在導入沙箱之前,彈出提示窗提示用戶是否導入沙箱。
[0203]對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
[0204]上述利用沙箱技術(shù)進行防御的裝置可以部署在服務器端,也可以部署在客戶端,在用戶對目標對象執(zhí)行操作之前,自動判斷所述目標對象的執(zhí)行是否需要導入沙箱,幫助用戶決定哪些有風險的程序需要在沙箱內(nèi)運行,避免將安全無風險的程序放置沙箱內(nèi)運行導致用戶數(shù)據(jù)的丟失,而且由于無需用戶的參與,因此不影響用戶的操作,易用性高。
[0205]基于上述的利用沙箱技術(shù)進行防御的裝置,本發(fā)明實施例還提供了一種安全瀏覽器,該瀏覽器包括如上述圖3實施例所述的用沙箱技術(shù)進行系統(tǒng)防御的裝置,并可采用圖1或圖2所述的方法自動判斷待操作的目標對象的執(zhí)行是否需要導入沙箱。具體描述可參見上述圖1、圖2和圖3的相關內(nèi)容,不再詳述。
[0206]本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0207]最后,還需要說明的是,在本文中,諸如第一和第二等之類的關系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。
[0208]而且,上文中的“和/或”表示本文既包含了 “和”的關系,也包含了 “或”的關系,其中:如果方案A與方案B是“和”的關系,則表示某實施例中可以同時包括方案A和方案B ;如果方案A與方案B是“或”的關系,則表示某實施例中可以單獨包括方案A,或者單獨包括方案B。
[0209]以上對本發(fā)明所提供的一種利用沙箱技術(shù)進行防御的方法、裝置及安全瀏覽器,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實施方式】及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
【權(quán)利要求】
1.一種主動防御方法,其包括: 在對目標對象執(zhí)行操作之前,判斷所述目標對象是否符合預置的匹配規(guī)則; 如果所述目標對象符合預置的匹配規(guī)則,則在沙箱中完成該目標對象的執(zhí)行。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述目標對象包括以下任一項:目標程序、目標文件和用戶輸入的信息。
3.根據(jù)權(quán)利要求2所述的方法,其中,當所述目標對象為目標程序時,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將該目標程序?qū)肷诚洌? 在沙箱中執(zhí)行該目標程序。
4.根據(jù)權(quán)利要求2所述的方法,其中,當所述目標對象為目標文件,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將執(zhí)行該目標文件的關聯(lián)程序?qū)肷诚洌? 在沙箱中由所述關聯(lián)程序運行該目標文件。
5.根據(jù)權(quán)利要求2所述的方法,其中,當所述目標對象為用戶輸入的信息時,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將接收該用戶輸入信息的關聯(lián)程序?qū)肷诚洌? 在沙箱中根據(jù)該用戶輸入信息運行所述關聯(lián)程序; 其中,所述用戶輸入的信息包括網(wǎng)址和/或關鍵詞。
6.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 查詢預置的數(shù)據(jù)庫; 將所述目標對象與該數(shù)據(jù)庫中的預置規(guī)則進行比較; 如果在該數(shù)據(jù)庫中查詢到,則所述目標對象符合匹配規(guī)則。
7.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中,當所述目標對象為目標程序和/或目標文件時,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 判斷所述目標對象的相關信息是否符合預置的匹配規(guī)則; 和/或,判斷所述目標對象的來源程序的相關信息是否符合預置的匹配規(guī)則。
8.根據(jù)權(quán)利要求7所述的方法,其中, 所述目標對象的相關信息包括目標對象的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源; 所述來源程序的相關信息包括來源程序的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源。
9.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中,當所述目標對象為用戶輸入的信息時,判斷所述目標對象是否符合預置的匹配規(guī)則包括: 判斷所述用戶輸入的信息是否符合預置的匹配規(guī)則。
10.一種主動防御方法,其包括: 在對目標對象執(zhí)行操作之前,創(chuàng)建用于判斷所述目標對象的執(zhí)行的進程; 判斷所述進程的父進程是否在沙箱內(nèi); 如果在沙箱內(nèi),則在沙箱中完成該目標對象的執(zhí)行,否則判斷所述目標對象是否符合預置的匹配規(guī)則; 如果所述目標對象符合預置的匹配規(guī)則,則在沙箱中完成該目標對象的執(zhí)行。
11.根據(jù)權(quán)利要求10所述的方法,其中,所述目標對象包括以下任一項:目標程序、目標文件和用戶輸入的信息。
12.根據(jù)權(quán)利要求11所述的方法,其中,當所述目標對象為目標程序時,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將該目標程序?qū)肷诚洌? 在沙箱中執(zhí)行該目標程序。
13.根據(jù)權(quán)利要求11所述的方法,其中,當所述目標對象為目標文件,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將執(zhí)行該目標文件的關聯(lián)程序?qū)肷诚洌? 在沙箱中由所述關聯(lián)程序運行該目標文件。
14.根據(jù)權(quán)利要求11所述的方法,其中,當所述目標對象為用戶輸入的信息時,在沙箱中完成該目標 對象的執(zhí)彳丁進一步包括: 將接收該用戶輸入信息的關聯(lián)程序?qū)肷诚洌? 在沙箱中根據(jù)該用戶輸入信息運行所述關聯(lián)程序; 其中,所述用戶輸入的信息包括網(wǎng)址和/或關鍵詞。
15.根據(jù)權(quán)利要求10至14中任一項所述的方法,其中,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 查詢預置的數(shù)據(jù)庫; 將所述目標對象與該數(shù)據(jù)庫中的預置規(guī)則進行比較; 如果在該數(shù)據(jù)庫中查詢到,則所述目標對象符合匹配規(guī)則。
16.根據(jù)權(quán)利要求10至14中任一項所述的方法,其中,當所述目標對象為目標程序和/或目標文件時,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 判斷所述目標對象的相關信息是否符合預置的匹配規(guī)則; 和/或,判斷所述目標對象的來源程序的相關信息是否符合預置的匹配規(guī)則。
17.根據(jù)權(quán)利要求16所述的方法,其中, 所述目標對象的相關信息包括目標對象的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源; 所述來源程序的相關信息包括來源程序的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源。
18.根據(jù)權(quán)利要求10至14中任一項所述的方法,其中,當所述目標對象為用戶輸入的信息時,判斷所述目標對象是否符合預置的匹配規(guī)則包括: 判斷所述用戶輸入的信息是否符合預置的匹配規(guī)則。
19.一種主動防御方法,其包括: 在對目標對象執(zhí)行操作之前,判斷所述目標對象是否在白名單中; 如果在白名單中,則不需要在沙箱中完成該目標對象的執(zhí)行,否則判斷所述目標對象是否符合預置的匹配規(guī)則; 如果所述目標對象符合預置的匹配規(guī)則,則在沙箱中完成該目標對象的執(zhí)行。
20.根據(jù)權(quán)利要求19所述的方法,其中,所述目標對象包括以下任一項:目標程序、目標文件和用戶輸入的信息。
21.根據(jù)權(quán)利要求20所述的方法,其中,當所述目標對象為目標程序時,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將該目標程序?qū)肷诚洌? 在沙箱中執(zhí)行該目標程序。
22.根據(jù)權(quán)利要求20所述的方法,其中,當所述目標對象為目標文件,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將執(zhí)行該目標文件的關聯(lián)程序?qū)肷诚洌? 在沙箱中由所述關聯(lián)程序運行該目標文件。
23.根據(jù)權(quán)利要求20所述的方法,其中,當所述目標對象為用戶輸入的信息時,在沙箱中完成該目標對象的執(zhí)彳丁進一步包括: 將接收該用戶輸入信息的關聯(lián)程序?qū)肷诚洌? 在沙箱中根據(jù)該用戶輸入信息運行所述關聯(lián)程序; 其中,所述用戶輸入的信息包括網(wǎng)址和/或關鍵詞。
24.根據(jù)權(quán)利要求19至23中任一項所述的方法,其中,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 查詢預置的數(shù)據(jù)庫; 將所述目標對象與該數(shù)據(jù)庫中的預置規(guī)則進行比較; 如果在該數(shù)據(jù)庫中查詢到,則所述目標對象符合匹配規(guī)則。
25.根據(jù)權(quán)利要求19至23中任一項所述的方法,其中,當所述目標對象為目標程序和/或目標文件時,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 判斷所述目標對象的相關信息是否符合預置的匹配規(guī)則; 和/或,判斷所述目標對象的來源程序的相關信息是否符合預置的匹配規(guī)則。
26.根據(jù)權(quán)利要求25所述的方法,其中, 所述目標對象的相關信息包括目標對象的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源; 所述來源程序的相關信息包括來源程序的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源。
27.根據(jù)權(quán)利要求19至23中任一項所述的方法,其中,當所述目標對象為用戶輸入的信息時,判斷所述目標對象是否符合預置的匹配規(guī)則包括: 判斷所述用戶輸入的信息是否符合預置的匹配規(guī)則。
28.—種主動防御方法,其包括: 在對目標對象執(zhí)行操作之前,判斷用戶是否選擇將所述目標對象的執(zhí)行導入沙箱;如果用戶選擇了將所述目標對象的執(zhí)行導入沙箱,則在沙箱中完成該目標對象的執(zhí)行,否則判斷所述目標對象是否符合預置的匹配規(guī)則; 如果所述目標對象符合預置的匹配規(guī)則,則在沙箱中完成該目標對象的執(zhí)行。
29.根據(jù)權(quán)利要求28所述的方法,其中,所述目標對象包括以下任一項:目標程序、目標文件和用戶輸入的信息。
30.根據(jù)權(quán)利要求29所述的方法,其中,當所述目標對象為目標程序時,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將該目標程序?qū)肷诚洌? 在沙箱中執(zhí)行該目標程序。
31.根據(jù)權(quán)利要求29所述的方法,其中,當所述目標對象為目標文件,在沙箱中完成該目標對象的執(zhí)行進一步包括: 將執(zhí)行該目標文件的關聯(lián)程序?qū)肷诚洌? 在沙箱中由所述關聯(lián)程序運行該目標文件。
32.根據(jù)權(quán)利要求29所述的方法,其中,當所述目標對象為用戶輸入的信息時,在沙箱中完成該目標對象的執(zhí)彳丁進一步包括: 將接收該用戶輸入信息的關聯(lián)程序?qū)肷诚洌? 在沙箱中根據(jù)該用戶輸入信息運行所述關聯(lián)程序; 其中,所述用戶輸入的信息包括網(wǎng)址和/或關鍵詞。
33.根據(jù)權(quán) 利要求28至32中任一項所述的方法,其中,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 查詢預置的數(shù)據(jù)庫; 將所述目標對象與該數(shù)據(jù)庫中的預置規(guī)則進行比較; 如果在該數(shù)據(jù)庫中查詢到,則所述目標對象符合匹配規(guī)則。
34.根據(jù)權(quán)利要求28至32中任一項所述的方法,其中,當所述目標對象為目標程序和/或目標文件時,判斷所述目標對象是否符合預置的匹配規(guī)則進一步包括: 判斷所述目標對象的相關信息是否符合預置的匹配規(guī)則; 和/或,判斷所述目標對象的來源程序的相關信息是否符合預置的匹配規(guī)則。
35.根據(jù)權(quán)利要求34所述的方法,其中, 所述目標對象的相關信息包括目標對象的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源; 所述來源程序的相關信息包括來源程序的文件路徑、和/或加密數(shù)據(jù)、和/或文件屬性、和/或圖標特征值、和/或文件特征值、和/或下載來源。
【文檔編號】G06F21/53GK104050411SQ201410058490
【公開日】2014年9月17日 申請日期:2011年4月21日 優(yōu)先權(quán)日:2011年4月21日
【發(fā)明者】范紀鍠, 潘劍鋒, 孫曉駿, 路健華 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司