亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種文件解鎖的方法及裝置的制作方法

文檔序號:6427264閱讀:118來源:國知局
專利名稱:一種文件解鎖的方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計算機安全的技術(shù)領(lǐng)域,特別是涉及一種文件解鎖的方法和一種文件解鎖的裝置。
背景技術(shù)
計算機病毒是指“編制者在計算機程序中插入的破壞計算機功能或者破壞數(shù)據(jù),影響計算機使用并且能夠自我復(fù)制的一組計算機指令或者程序代碼。計算機一旦染上病毒,計算機通常表現(xiàn)為其文件被增加、刪出、改變名稱或?qū)傩?、移動到其它目錄下,病毒對計算機文件的這些操作,可能會導(dǎo)致正常的程序無法運行、計算機操作系統(tǒng)崩潰、計算機被遠程控制、用戶信息被盜用等一系列的問題。為了保證計算機的安全運行,需要對計算機中感染病毒的文件進行病毒查殺,以 防止和清除病毒的破壞。在安全軟件領(lǐng)域,針對染毒計算機文件的“刪除”與“反刪除”是安全軟件和惡意程序(計算機病毒)對抗的永恒主題之一?,F(xiàn)有技術(shù)中的病毒,往往通過特殊文件名、畸形文件路徑或此二者組合等手段給染毒文件加上了加密鎖,采用常規(guī)手段無法破解加密鎖即無法刪除染毒文件,這些手段阻止殺毒軟件查殺染毒文件。安全軟件查殺病毒的過程,可以理解為對染毒文件進行解鎖和粉碎?,F(xiàn)有安全軟件,對染毒文件的解鎖和粉碎手段單一,無法破除染毒文件設(shè)置的層層保護,對抗能力不強。傳統(tǒng)安全軟件廠商只解決了部分“反刪除”問題,在操作系統(tǒng)內(nèi)核態(tài)的攻防上往往體現(xiàn)出一定的能力缺失,驅(qū)動級惡意程序(Rootkit)對抗能力偏弱。因此,目前需要本領(lǐng)域技術(shù)人員迫切解決的一個技術(shù)問題就是提出一種文件解鎖的處理機制,用以在復(fù)雜的客戶端環(huán)境中識別惡意程序的文件自保護行為并加以對抗,增強和驅(qū)動級惡意程序攻防的對抗能力。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種文件解鎖的方法,以增強和驅(qū)動級惡意程序攻防的對抗能力。本發(fā)明還提供了一種文件解鎖的裝置,用以保證上述方法在實際中的應(yīng)用及實現(xiàn)。為了解決上述問題,本發(fā)明實施例公開了一種文件解鎖的方法,包括獲取目標文件的路徑;在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。優(yōu)選的,所述將目標文件路徑處理為正確的路徑的步驟包括按照路徑分隔符依次拆解出目標文件路徑中的路徑段;判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。優(yōu)選的,所述預(yù)置規(guī)則為操作系統(tǒng)定義的標準路徑描述方式。
優(yōu)選的,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式包括,在路徑段中存在保留關(guān)鍵子和設(shè)備名,和/或,在路徑段中存在特殊符號。優(yōu)選的,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟包括在所述目標文件路徑加上“\\ \”的前綴。優(yōu)選的,若所述路徑段中包括目錄名和特殊符號”,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟包括若存在去掉”后的目錄且不存在加”的目錄,則用去掉”后的目錄名替換當前路徑段中的目錄名;和/或,若存在加”的目錄,則在所述目標文件路徑加上“\\ \ ”的前綴。
優(yōu)選的,所述按照預(yù)置規(guī)則矯正目標文件路徑的步驟還包括若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。優(yōu)選的,所述的方法,還包括依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體包括獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑;校驗所述調(diào)用者輸入?yún)?shù),若校驗通過,則依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程;若查找到對應(yīng)的文件對象解析例程,則依據(jù)所述文件對象解析例程生成I/O請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/O請求包中包括從所述目標文件操作請求中提取的操作信息;由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。優(yōu)選的,所述依據(jù)文件路徑在對象管理器中查找對應(yīng)的文件對象解析例程的步驟具體包括以下子步驟;子步驟SI、判斷文件路徑是否已經(jīng)拆解完畢,若否,則執(zhí)行子步驟S2 ;若是,則執(zhí)行子步驟S4 ;子步驟S2、按照路徑分隔符拆解出文件路徑中下一個待拆解的路徑段;子步驟S3、采用當前拆解出的路徑段在對象管理器中搜索,判斷是否存在對應(yīng)的文件對象例程;若是,則返回子步驟SI ;若否,則執(zhí)行子步驟S5 ;子步驟S4、獲得所述文件路徑對應(yīng)的文件對象解析例程。子步驟S5、返回未找到對應(yīng)文件對象解析例程的信息。優(yōu)選的,所述目標文件操作請求包括目標文件打開請求,所述操作信息包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。優(yōu)選的,所述目標文件操作請求還包括目標文件刪除請求,所述操作信息還包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。本發(fā)明實施例還公開了一種文件解鎖的裝置,包括路徑獲取模塊,用于獲取目標文件的路徑;
路徑預(yù)處理模塊,用于在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。優(yōu)選的,所述路徑預(yù)處理模塊包括路徑段拆解子模塊,用于按照路徑分隔符依次拆解出目標文件路徑中的路徑段;按規(guī)則矯正子模塊,用于判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。優(yōu)選的,所述預(yù)置規(guī)則為操作系統(tǒng)定義的標準路徑描述方式。優(yōu)選的,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式包括,在路徑段中存在保留關(guān)鍵子和設(shè)備名,和/或,在路徑段中存在特殊符號。
優(yōu)選的,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按規(guī)則矯正子模塊包括第一修正單元,用于在所述目標文件路徑加上“\\ \”的前綴。優(yōu)選的,若所述路徑段中包括目錄名和特殊符號”,則按規(guī)則矯正子模塊包括第二修正單元,用于在存在去掉”后的目錄且不存在加”的目錄時,用去掉”后的目錄名替換當前路徑段中的目錄名;和/ 或,第三修正單元,用于在存在加”的目錄,則在所述目標文件路徑加上“\\ V的前綴。優(yōu)選的,所述按規(guī)則矯正子模塊還包括第四修正單元,用于若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。優(yōu)選的,所述的裝置,還包括文件操作模塊,用于依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體包括請求獲取子模塊,用于獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑;參數(shù)檢驗子模塊,用于校驗所述調(diào)用者輸入?yún)?shù);解析例程查找子模塊,用于在所述調(diào)用者輸入?yún)?shù)校驗通過時,依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程;IRP包發(fā)送子模塊,用于在查找到對應(yīng)的文件對象解析例程時,依據(jù)所述文件對象解析例程生成I/o請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/O請求包中包括從所述目標文件操作請求中提取的操作信息;并由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。優(yōu)選的,所述目標文件操作請求包括目標文件打開請求,所述操作信息包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。優(yōu)選的,所述目標文件操作請求還包括目標文件刪除請求,所述操作信息還包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點本發(fā)明通過在依據(jù)目標文件的路徑無法對目標文件進行定位時,則調(diào)用自定義的文件路徑預(yù)處理的應(yīng)用程序接口 BAPI,將所述目標文件路徑處理為正確的路徑,并針對正確路徑的目標文件執(zhí)行解鎖和粉碎的操作。本發(fā)明所提供的文件解鎖、粉碎機制不僅安全、可靠、成功率高,并且可以在復(fù)雜的客戶端環(huán)境中識別惡意程序的文件自保護行為并加以對抗,增強了和驅(qū)動級惡意程序攻防的對抗能力。


圖I是本發(fā)明的一種文件解鎖的方法實施例的步驟流程圖;圖2是本發(fā)明的一種文件解鎖的裝置實施例的結(jié)構(gòu)框圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。
本發(fā)明實施例的核心構(gòu)思之一在于,在依據(jù)目標文件的路徑無法對目標文件進行定位時,則調(diào)用自定義的文件路徑預(yù)處理的應(yīng)用程序接口 BAPI,將所述目標文件路徑處理為正確的路徑,并針對正確路徑的目標文件執(zhí)行解鎖和粉碎的操作。參考圖1,示出了本發(fā)明的一種文件解鎖的方法實施例的步驟流程圖,具體可以包括以下步驟步驟101、獲取目標文件的路徑;步驟102、在所述目標文件的路徑無法定位,將所述目標文件路徑處理為正確的路徑。在本發(fā)明的一種優(yōu)選實施例中,所述將目標文件路徑處理為正確的路徑的步驟具體可以包括如下子步驟子步驟S11、按照路徑分隔符依次拆解出目標文件路徑中的路徑段;在本實施例中,可以基于路徑分隔符“\”和/或“/”依次拆解文件路徑,例如,文件路徑為c:\a\b. txt,則第一次拆解出的路徑段為C:,第二次拆解出的路徑段為a,第三次拆解出的路徑段為b. txt。子步驟S12、判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。針對Windows操作系統(tǒng)的應(yīng)用而言,所述預(yù)置規(guī)則可以為操作系統(tǒng)定義的標準路徑描述方式。Windows操作系統(tǒng)在路徑名命名規(guī)則中,針對特殊符號(如”)和保留關(guān)鍵字和設(shè)備名做出了特別規(guī)定,因而,在具體實現(xiàn)中,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式具體可以包括,在路徑段中存在保留關(guān)鍵字和設(shè)備名,和/或,在路徑段中存在特殊符號。作為本發(fā)明實施例具體應(yīng)用的一種示例,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟具體可以包括以下子步驟子步驟S121、在所述目標文件路徑加上“\\ \”的前綴。作為本發(fā)明實施例具體應(yīng)用的另一種示例,若所述路徑段中包括目錄名和特殊符號”,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟具體還可以包括以下子步驟子步驟S 122、若存在去掉”后的目錄且不存在加”的目錄,則用去掉”后的目錄名替換當前路徑段中的目錄名;和/ 或,子步驟S 122、若存在加”的目錄,則在所述目標文件路徑加上“\\ \ ”的前作為本發(fā)明實施例具體應(yīng)用的又一種示例,所述按照預(yù)置規(guī)則矯正目標文件路徑的步驟具體還可以包括以下子步驟若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。更具體而言,針對目標文件路徑無法定位的畸形路徑而言,本發(fā)明實施例可以處理的保留關(guān)鍵字和設(shè)備名,以及特殊符號主要包括以下幾種情形(I)路徑段尾的”號干擾,這類型的”號會被去掉;
例如,假設(shè)目標文件路徑是C:\Windows. \System32\a. \con. txt。第一個路徑段C:\Windows. \是故意加“點”,如果系統(tǒng)真的存在目錄C: \Windows\,并且C:\Windows. \不存在,就認為這里的點號是“干擾”可以去掉。(2)帶“· ”號的NT風格路徑(相對DOS風格而言這是“畸形”的路徑,這也是畸形的由來),這類型的點號不能去掉。例如,假設(shè)目標文件路徑是C: \Windows. \System32\a. \con. txt。第三個路徑段“a. \,,子目錄真實存在,可以認為這不是干擾,屬于NT風格路徑,微軟規(guī)定NT風格路徑需要加\\ \前綴,于是針對這類型的處理是在目標文件路徑加上“\\ \”的前綴。(3)上述(1)、(2)混合存在于目標文件路徑中的情形,在具體實現(xiàn)中,通過逐個路徑段判斷,明確哪個點號可以去除,哪個點號不應(yīng)去除。例如,父目錄有”號干擾,則去除父目錄中的”號;子目錄中存在帶”號的畸形文件夾,則保留該”號,但在目標文件路徑加上“\\ \ ”的前綴。(4)兩條目標文件路徑的區(qū)別僅在于某個或某幾個路徑段中,一個加了 ”號,一個沒加”號,則確定起作用的目標文件路徑為沒加”號目標文件路徑。例如在注冊表的啟動項里寫c: \a. \run. exe會導(dǎo)致run. exe程序開機自啟動。若磁盤上存在c:\a\run. exe文件、也存在c:\a. \run. exe文件,則起作用(自啟動時被加載)的目標文件路徑為c: \a\run. exe。(5)以Windows操作系統(tǒng)的保留關(guān)鍵字、設(shè)備名為名字的文件,針對此類型的路徑處理為,在所述目標文件路徑加上“\\ \”的前綴。Windows操作系統(tǒng)的保留關(guān)鍵字、設(shè)備名包括PRN、COMI、COM2、COM3、COM4、C0M5、C0M6、C0M7、C0M8、C0M9、COMlO、LPTl、LPT2、LPT3、LPT4、LPT5、LPT6、LPT7、LPT8、LPT9、NUL、CON、AUX 等。例如,假設(shè)目標文件路徑是C: \Windows. \System32\a. \con. txt。由于最后一個路徑段con. txt中包括保留關(guān)鍵字con,于是在目標文件路徑加上“\\ \”的前綴。(6)上述五種情形混合出現(xiàn)。如上例中所述的畸形目標文件路徑C: \Windows. \System32\a. \con. txt,經(jīng)處理為的正確路徑為\\ \C:\Windows\System32\a. \con. txt O在具體應(yīng)用中,本發(fā)明實施例適合各種Windows操作系統(tǒng)平臺(除DOS磁盤操作系統(tǒng))。隨著操作系統(tǒng)的發(fā)展,如果有另外的保留關(guān)鍵字和擴展名以及特殊符號,在實際中可以動態(tài)擴充ExpandFileName函數(shù)(自定義應(yīng)用程序接口 BAPI路徑預(yù)處理裝置),方便地達到新增保留關(guān)鍵字和擴展名以及特殊符號的目的。在本發(fā)明的一種優(yōu)選實施例中,本發(fā)明還可以包括以下步驟步驟103、依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體可以包括如下子步驟子步驟S31、獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑;子步驟S32、校驗所述調(diào)用者輸入?yún)?shù),若校驗通過,則依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程;子步驟S33、若查找到對應(yīng)的文件對象解析例程,則依據(jù)所述文件對象解析例程生 成I/o請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/O請求包中包括從所述目標文件操作請求中提取的操作信息;子步驟S34、由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。針對文件解鎖的應(yīng)用,所述目標文件操作請求可以包括目標文件打開請求,所述操作信息可以包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。需要說明的是,在本發(fā)明實施例中,所述文件打開不是指通過雙擊鼠標或按回車鍵等觸發(fā)方式打開文件(如*. exe、*. doc等類型的文件);而是指用操作系統(tǒng)API或本發(fā)明的自定義BAPI (應(yīng)用本發(fā)明,可以在操作系統(tǒng)用戶態(tài)接口完整實現(xiàn)一套文件操作調(diào)用庫)的CreateFileO函數(shù)等打開文件、得到文件句柄的操作,因為只有得到文件句柄后才可以進一步操作該文件。從函數(shù)調(diào)用方法角度而言,本發(fā)明實施例中所指文件“打開”主要包括以下幾種情形I、使用Windows標準API CreateFile函數(shù)打開目標文件;2、使用 Windows Native API ZwCreateFile/NtCreateFile 函數(shù)打開目標文件;3、使用 Windows Native API ZwOpenFile/NtOpenFile 函數(shù)打開目標文件其中,CreateFile的參數(shù)dwCreationDisposition可以控制函數(shù)行為是“創(chuàng)建新文件”還是“打開已經(jīng)存在的文件”。針對文件刪除的應(yīng)用,所述目標文件操作請求還可以包括目標文件刪除請求,所述操作信息還可以包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。在本發(fā)明的一種優(yōu)選實施例中,所述依據(jù)文件路徑在對象管理器中查找對應(yīng)的文件對象解析例程的步驟具體包括以下子步驟;子步驟SI、判斷文件路徑是否已經(jīng)拆解完畢,若否,則執(zhí)行子步驟S2 ;若是,則執(zhí)行子步驟S4 ;子步驟S2、按照路徑分隔符拆解出文件路徑中下一個待拆解的路徑段;子步驟S3、采用當前拆解出的路徑段在對象管理器中搜索,判斷是否存在對應(yīng)的文件對象例程;若是,則返回子步驟S I ;若否,則執(zhí)行子步驟S5 ;子步驟S4、獲得所述文件路徑對應(yīng)的文件對象解析例程。子步驟S5、返回未找到對應(yīng)文件對象解析例程的信息。在具體實現(xiàn)中,可以預(yù)先構(gòu)建對象管理器查詢的OpenPacket結(jié)構(gòu),基于路徑分隔符“ \ ”循環(huán)拆解文件路徑,例如,文件路徑為c:\a\b. txt,則第一次拆解出的路徑段為c:,第二次拆解出的路徑段為c:\a,第三次拆解出的路徑段為c:\a\b. txt,即在本發(fā)明實施例,是基于遞歸調(diào)用的方式拆解文件路徑。對象管理器中維護有拉鏈式的對象Hash表,基于每次拆解出的路徑段搜索對象管理器,若能查找到對應(yīng)的對象解析例程ParseProcedure,則繼續(xù)下一次的文件路徑拆解,并基于下一次拆解出的路徑段和之前已拆解出的路徑段搜索對象管理器,若當前的文件路徑經(jīng)過循環(huán)解析被完全拆解完畢,則經(jīng)過搜索對象管理器找到的文件對象解析例程ParseRoutine為當前文件路徑對應(yīng)的文件對象解析例程。 在實際中,調(diào)用者進程可以在用戶態(tài)通過調(diào)用自定義的FSCreateFile例程發(fā)起文件打開請求或調(diào)用自定義的FSDeleteFile例程發(fā)起文件刪除請求,所述請求中包括目標文件的路徑,在對所述路徑采用本發(fā)明進行預(yù)處理(若為畸形路徑,則預(yù)處理為正確路徑)后,操作系統(tǒng)內(nèi)核態(tài)驅(qū)動獲取并校驗所述來自用戶態(tài)的請求,構(gòu)建查詢數(shù)據(jù)結(jié)構(gòu)循環(huán)解析傳入的文件路徑,最終查找到對象管理器中維護的對象類型,這一過程有效對抗了內(nèi)核態(tài)的劫持內(nèi)險。此后,操作系統(tǒng)內(nèi)核態(tài)驅(qū)動構(gòu)建并填充IRP請求數(shù)據(jù)包,發(fā)送至預(yù)先確定的文件系統(tǒng)下層設(shè)備的原始地址處,此時文件系統(tǒng)調(diào)用棧上的第三方過濾驅(qū)動(其他安全軟件、驅(qū)動級惡意程序)被穿透(旁路,bypass)。簡而言之,即本發(fā)明通過建立一條新的、可信的、可以穿透過濾驅(qū)動的文件操作執(zhí)行路徑,有效避免了傳統(tǒng)操作系統(tǒng)的文件執(zhí)行路徑上存在的風險。需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。參考圖2,示出了本發(fā)明的一種文件解鎖的裝置實施例的結(jié)構(gòu)框圖,具體可以包括以下模塊路徑獲取模塊21,用于獲取目標文件的路徑;路徑預(yù)處理模塊22,用于在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。在本發(fā)明的一種優(yōu)選實施例中,所述路徑預(yù)處理模塊具體可以包括以下子模塊路徑段拆解子模塊,用于按照路徑分隔符依次拆解出目標文件路徑中的路徑段;按規(guī)則矯正子模塊,用于判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。在具體實現(xiàn)中,所述預(yù)置規(guī)則可以為操作系統(tǒng)定義的標準路徑描述方式。在本實施例中,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式包括,在路徑段中存在保留關(guān)鍵字和設(shè)備名,和/或,在路徑段中存在特殊符號。作為本發(fā)明實施例具體應(yīng)用的一種示例,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按規(guī)則矯正子模塊可以包括第一修正單元,用于在所述目標文件路徑加上“\\ \”的前綴。作為本發(fā)明實施例具體應(yīng)用的另一種示例,若所述路徑段中包括目錄名和特殊符號”,則按規(guī)則矯正子模塊可以包括第二修正單元,用于在存在去掉”后的目錄且不存在加”的目錄時,用去掉”后的目錄名替換當前路徑段中的目錄名;和/ 或,第三修正單元,用于在存在加”的目錄,則在所述目標文件路徑加上“\\ V的前綴。作為本發(fā)明實施例具體應(yīng)用的又一種示例,所述按規(guī)則矯正子模塊還可以包括
第四修正單元,用于若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。針對文件解鎖和粉碎的應(yīng)用,本發(fā)明實施例還可以包括如下模塊文件操作模塊,用于依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體可以包括以下子模塊請求獲取子模塊,用于獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑;參數(shù)檢驗子模塊,用于校驗所述調(diào)用者輸入?yún)?shù);解析例程查找子模塊,用于在所述調(diào)用者輸入?yún)?shù)校驗通過時,依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程;IRP包發(fā)送子模塊,用于在查找到對應(yīng)的文件對象解析例程時,依據(jù)所述文件對象解析例程生成I/o請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/O請求包中包括從所述目標文件操作請求中提取的操作信息;并由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。針對文件解鎖的應(yīng)用而言,所述目標文件操作請求可以包括目標文件打開請求,所述操作信息可以包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。針對文件粉碎的應(yīng)用而言,所述目標文件操作請求還可以包括目標文件刪除請求,所述操作信息還可以包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。由于所述裝置實施例基本相應(yīng)于前述方法實施例,故本實施例的描述中未詳盡之處,可以參見前述實施例中的相關(guān)說明,在此就不贅述了。本發(fā)明可用于眾多通用或?qū)S玫挠嬎阆到y(tǒng)環(huán)境或配置中。例如個人計算機、服務(wù)器計算機、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費電子設(shè)備、網(wǎng)絡(luò)PC、小型計算機、大型計算機、包括以上任何系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。本發(fā)明可以在由計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計算環(huán)境中實踐本發(fā)明,在這些分布式計算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠程處理設(shè)備來執(zhí)行任務(wù)。在分布式計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備在內(nèi)的本地和遠程計算機存儲介質(zhì)中。
以上對本發(fā)明所提供的一種文件解鎖的方法和一種文件解鎖的裝置進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
權(quán)利要求
1.一種文件解鎖的方法,其特征在于,包括 獲取目標文件的路徑; 在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。
2.如權(quán)利要求I所述的方法,其特征在于,所述將目標文件路徑處理為正確的路徑的步驟包括 按照路徑分隔符依次拆解出目標文件路徑中的路徑段; 判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。
3.如權(quán)利要求2所述的方法,其特征在于,所述預(yù)置規(guī)則為操作系統(tǒng)定義的標準路徑描述方式。
4.如權(quán)利要求3所述的方法,其特征在于,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式包括,在路徑段中存在保留關(guān)鍵子和設(shè)備名,和/或,在路徑段中存在特殊符號。
5.如權(quán)利要求4所述的方法,其特征在于,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟包括 在所述目標文件路徑加上“\\ \”的前綴。
6.如權(quán)利要求4或5所述的方法,其特征在于,若所述路徑段中包括目錄名和特殊符號 ”,則按照預(yù)置規(guī)則矯正目標文件路徑的步驟包括 若存在去掉”后的目錄且不存在加”的目錄,則用去掉”后的目錄名替換當前路徑段中的目錄名; 和/或,若存在加”的目錄,則在所述目標文件路徑加上“\\ \ ”的前綴。
7.如權(quán)利要求2所述的方法,其特征在于,所述按照預(yù)置規(guī)則矯正目標文件路徑的步驟還包括 若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。
8.如權(quán)利要求I所述的方法,其特征在于,還包括 依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體包括 獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑; 校驗所述調(diào)用者輸入?yún)?shù),若校驗通過,則依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程; 若查找到對應(yīng)的文件對象解析例程,則依據(jù)所述文件對象解析例程生成I/O請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/o請求包中包括從所述目標文件操作請求中提取的操作信息; 由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。
9.如權(quán)利要求8所述的方法,其特征在于,所述依據(jù)文件路徑在對象管理器中查找對應(yīng)的文件對象解析例程的步驟具體包括以下子步驟; 子步驟SI、判斷文件路徑是否已經(jīng)拆解完畢,若否,則執(zhí)行子步驟S2 ;若是,則執(zhí)行子步驟S4 ; 子步驟S2、按照路徑分隔符拆解出文件路徑中下一個待拆解的路徑段; 子步驟S3、采用當前拆解出的路徑段在對象管理器中搜索,判斷是否存在對應(yīng)的文件對象例程;若是,則返回子步驟SI ;若否,則執(zhí)行子步驟S5 ; 子步驟S4、獲得所述文件路徑對應(yīng)的文件對象解析例程。
子步驟S5、返回未找到對應(yīng)文件對象解析例程的信息。
10.如權(quán)利要求9所述的方法,其特征在于,所述目標文件操作請求包括目標文件打開請求,所述操作信息包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。
11.如權(quán)利要求10所述的方法,其特征在于,所述目標文件操作請求還包括目標文件刪除請求,所述操作信息還包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。
12.—種文件解鎖的裝置,其特征在于,包括 路徑獲取模塊,用于獲取目標文件的路徑; 路徑預(yù)處理模塊,用于在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。
13.如權(quán)利要求12所述的裝置,其特征在于,所述路徑預(yù)處理模塊包括 路徑段拆解子模塊,用于按照路徑分隔符依次拆解出目標文件路徑中的路徑段; 按規(guī)則矯正子模塊,用于判斷所述路徑段是否符合預(yù)置規(guī)則,若否,則按照預(yù)置規(guī)則矯正所述目標文件路徑。
14.如權(quán)利要求13所述的裝置,其特征在于,所述預(yù)置規(guī)則為操作系統(tǒng)定義的標準路徑描述方式。
15.如權(quán)利要求14所述的裝置,其特征在于,所述路徑段不符合操作系統(tǒng)定義的標準路徑描述方式包括,在路徑段中存在保留關(guān)鍵子和設(shè)備名,和/或,在路徑段中存在特殊符號。
16.如權(quán)利要求15所述的裝置,其特征在于,若所述路徑段中包括保留關(guān)鍵字和設(shè)備名,則按規(guī)則矯正子模塊包括 第一修正單元,用于在所述目標文件路徑加上“\\ \”的前綴。
17.如權(quán)利要求15或16所述的裝置,其特征在于,若所述路徑段中包括目錄名和特殊符號”,則按規(guī)則矯正子模塊包括 第二修正單元,用于在存在去掉”后的目錄且不存在加”的目錄時,用去掉”后的目錄名替換當前路徑段中的目錄名; 和/或, 第三修正單元,用于在存在加”的目錄,則在所述目標文件路徑加上“\\ \ ”的前
18.如權(quán)利要求13所述的裝置,其特征在于,所述按規(guī)則矯正子模塊還包括 第四修正單元,用于若既存在沒有”的目錄,也存在對應(yīng)的加”的目錄,則采用沒有”的目錄名。
19.如權(quán)利要求12所述的裝置,其特征在于,還包括 文件操作模塊,用于依據(jù)所述正確路徑對所述目標文件執(zhí)行操作,具體包括 請求獲取子模塊,用于獲取針對目標文件的操作請求,所述請求中包括調(diào)用者輸入?yún)?shù),所述輸入?yún)?shù)中包括所述正確路徑;參數(shù)檢驗子模塊,用于校驗所述調(diào)用者輸入?yún)?shù); 解析例程查找子模塊,用于在所述調(diào)用者輸入?yún)?shù)校驗通過時,依據(jù)所述正確路徑在對象管理器中查找對應(yīng)的文件對象解析例程; IRP包發(fā)送子模塊,用于在查找到對應(yīng)的文件對象解析例程時,依據(jù)所述文件對象解析例程生成I/O請求包,并發(fā)送至預(yù)置的文件系統(tǒng)下層設(shè)備的原始地址;其中,所述I/O請求包中包括從所述目標文件操作請求中提取的操作信息;并由所述文件系統(tǒng)下層設(shè)備依據(jù)所述操作信息對所述目標文件執(zhí)行對應(yīng)操作。
20.如權(quán)利要求19所述的裝置,其特征在于,所述目標文件操作請求包括目標文件打開請求,所述操作信息包括目標文件打開操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息執(zhí)行打開所述目標文件的操作。
21.如權(quán)利要求20所述的裝置,其特征在于,所述目標文件操作請求還包括目標文件刪除請求,所述操作信息還包括目標文件刪除操作,所述文件系統(tǒng)下層設(shè)備依據(jù)所述文件操作信息在打開所述目標文件后,執(zhí)行所述目標文件的刪除操作。
全文摘要
本發(fā)明提供了一種文件解鎖的方法和裝置,其中,所述方法包括獲取目標文件的路徑;在所述目標文件的路徑無法定位時,將所述目標文件路徑處理為正確的路徑。本發(fā)明所提供的文件解鎖、粉碎、粉碎機制不僅安全、可靠、成功率高,并且可以在復(fù)雜的客戶端環(huán)境中識別惡意程序的文件自保護行為并加以對抗,增強了和驅(qū)動級惡意程序攻防的對抗能力。
文檔編號G06F21/56GK102855434SQ20111017540
公開日2013年1月2日 申請日期2011年6月27日 優(yōu)先權(quán)日2011年6月27日
發(fā)明者潘劍鋒, 王宇 申請人:奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1