專利名稱::一種程序處理方法和系統的制作方法
技術領域:
:本發明涉及網絡安全
技術領域:
,具體涉及一種程序處理方法和系統。
背景技術:
:惡意程序是一個概括性的術語,指任何故意創建用來執行未經授權并通常是有害行為的軟件程序。計算機病毒、后門程序、鍵盤記錄器、密碼盜取者、Word和Excel宏病毒、引導區病毒、腳本病毒(batch,windowsshell,java等)、木馬、犯罪軟件、間謀軟件和廣告軟件等等,都是一些可以稱之為惡意程序的例子。現今全球惡意程序數量呈幾何級增長,為了適應惡意程序的更新速度,以快速地識別和查殺惡意程序,目前普遍利用主動防御技術查殺惡意程序。主動防御技術是基于程序的行為進行自主分析判斷的實時防護技術,其從最原始的定義出發,直接將程序的行為作為判斷惡意程序的依據,進而衍生出通過在本地使用特征庫、在本地設置行為閾值以及在本地啟發式殺毒等方式來判別、攔截惡意程序的行為,從而在一定程度上達到保護客戶端設備的目的。但是,為了盡可能減小對程序性能的影響,主動防御技術只對程序的exe文件進行檢測,而不檢查程序加載的動態鏈接庫(DynamicLinkLibrary,DLL)文件。因此,一些惡意程序就利用這一點,通過DLL劫持技術將該惡意程序的DLL文件與可信任的白名單中的程序(例如操作系統自帶的程序)打包在一起,當用戶選擇執行該白名單中的程序時,其中的惡意程序的DLL文件就會被加載,從而使主動防御技術不能成功攔截該惡意程序。
發明內容鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的程序處理系統和相應的程序處理方法。依據本發明的一個方面,提供了一種程序處理方法,包括當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;將所述待執行程序的特征信息上傳至服務器,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。本發明實施例中,程序處理方法還包括若存在,則通過服務器對所述被劫持的DLL文件進行查殺;依據服務器查殺結果對所述待執行程序執行相應的操作。本發明實施例中,匹配結果為所述待執行程序需要檢查的DLL文件信息,所述依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件,包括判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執行程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。本發明實施例中,云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。本發明實施例中,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果,包括通過服務器將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;通過服務器獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。本發明實施例中,特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。本發明實施例中,在通過服務器對所述被劫持的DLL文件進行查殺之前,還包括獲取所述待執行程序對應的EXE文件;將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述通過服務器對所述被劫持的DLL文件進行查殺,包括通過服務器獲取所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。本發明實施例中,被劫持的DLL文件為一個或多個,依據服務器查殺結果對所述待執行程序執行相應的操作,包括當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。本發明實施例中,可疑操作為以下任意一種文件操作、注冊表操作、進程操作和網絡操作。本發明實施例中,待執行程序為白名單中的程序。本發明實施例中,云端鑒別條件存儲在服務器中。本發明實施例中,程序處理方法還包括服務器定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則服務器獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。依據本發明的另一方面,提供了一種程序處理系統,包括客戶端和服務器,其中,客戶端包括特征信息獲取模塊,適于當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;特征信息上傳模塊,適于將所述待執行程序的特征信息上傳至服務器;所述服務器包括匹配模塊,適于將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;所述客戶端還包括確定模塊,適于接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。本發明實施例中,服務器還包括查殺模塊,適于當客戶端的確定模塊的檢查結果為存在時,對所述被劫持的DLL文件進行查殺;客戶端還包括處理模塊,適于依據服務器查殺結果對所述待執行程序執行相應的操作。本發明實施例中,匹配結果為所述待執行程序需要檢查的DLL文件信息,確定模塊包括判斷子模塊,適于判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執打程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。本發明實施例中,云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。本發明實施例中,匹配模塊包括匹配子模塊,適于將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;特定DLL文件信息獲取子模塊,適于獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;確定子模塊,適于將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。本發明實施例中,特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。本發明實施例中,客戶端還包括文件獲取模塊,適于在服務器的查殺模塊對所述被劫持的DLL文件進行查殺之前,獲取所述待執行程序對應的EXE文件;文件信息上傳模塊,適于將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;查殺模塊包括等級查詢子模塊,適于查詢所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;·查殺子模塊,適于依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。本發明實施例中,被劫持的DLL文件為一個或多個,處理模塊包括程序攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;執行子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;可疑操作攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。本發明實施例中,可疑操作為以下任意一種文件操作、注冊表操作、進程操作和網絡操作。本發明實施例中,待執行程序為白名單中的程序。本發明實施例中,云端鑒別條件存儲在服務器中。本發明實施例中,服務器還包括升級模塊,適于定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。根據本發明的程序處理方法和系統可以在檢測到待執行程序創建進程時,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件,如果待執行程序存在被劫持的DLL文件,則通過服務器對所述被劫持的DLL文件進行查殺,然后依據服務器查殺結果對所述待執行程序執行相應的操作。由此解決了惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,取得了更加有效地攔截惡意程序的有益效果。其次,本發明的云端鑒別條件保存在服務器中,當滿足升級條件時,可以立刻全網升級,升級速度較快,不需要客戶端升級文件即可生效,對于突發的惡意程序有很好的攔截效果,從而避免用戶的損失。上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中圖1示出了根據本發明一個實施例的程序處理方法的流程圖2示出了根據本發明一個實施例的程序處理方法的流程圖3示出了根據本發明一個實施例的程序處理方法的流程圖4示出了根據本發明實施例所述的云端鑒別條件的示意圖5示出了根據本發明一個實施例的程序處理系統的結構框圖;以及圖6示出了根據本發明一個實施例的程序處理系統的結構框圖。具體實施方式下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。本發明可以應用于計算機系統/服務器,其可與眾多其它通用或專用計算系統環境或配置一起操作。適于與計算機系統/服務器一起使用的眾所周知的計算系統、環境和/或配置的例子包括但不限于個人計算機系統、服務器計算機系統、瘦客戶機、厚客戶機、手持或膝上設備、基于微處理器的系統、機頂盒、可編程消費電子產品、網絡個人電腦、小型計算機系統大型計算機系統和包括上述任何系統的分布式云計算技術環境,等等。計算機系統/服務器可以在由計算機系統執行的計算機系統可執行指令(諸如程序模塊)的一般語境下描述。通常,程序模塊可以包括例程、程序、目標程序、組件、邏輯、數據結構等等,它們執行特定的任務或者實現特定的抽象數據類型。計算機系統/服務器可以在分布式云計算環境中實施,分布式云計算環境中,任務是由通過通信網絡鏈接的遠程處理設備執行的。在分布式云計算環境中,程序模塊可以位于包括存儲設備的本地或遠程計算系統存儲介質上。實施例一參照圖1,示出了根據本發明一個實施例的程序處理方法的流程圖,該方法具體可以包括步驟S101,當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息。步驟S102,將所述待執行程序的特征信息上傳至服務器,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果。步驟S103,接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。對于本實施例提出的程序處理方法的具體過程,將在下面的實施例中詳細介紹。通過上述步驟SlOl-步驟S103可以利用服務器中的云端鑒別條件檢測待執行程序是否存在被劫持的DLL文件,后續可以通過檢測結果對待執行程序進行處理。如果檢測到待執行程序存在被劫持的DLL文件,則后續可以通過服務器對被劫持的DLL文件進行查殺,然后依據服務器查殺結果對所述待執行程序執行相應的操作。由此解決了惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,能夠更加有效地攔截惡意程序。實施例二參照圖2,示出了根據本發明一個實施例的程序處理方法的流程圖。為了適應惡意程序的更新速度,以快速地識別和查殺惡意程序,目前普遍利用主動防御技術查殺惡意程序。主動防御技術是基于程序的行為進行自主分析判斷的實時防護技術,通過在系統的關鍵位置設置攔截點對系統的關鍵位置進行保護。當有程序執行修改這些關鍵位置的行為(例如寫入注冊表、創建計劃任務、修改瀏覽器首頁、修改默認瀏覽器和注冊瀏覽器插件等行為)時,就會對該程序進行攔截,攔截后需要判斷此次修改行為是否為惡意的,通常對行為的判斷是通過判斷執行此次修改行為的程序是否安全來實現的,如果程序是惡意的,則說明該修改行為是惡意的,因此需要攔截該程序的執行。一般來說,主動防御技術通過對程序的文件進行檢查,以檢測程序的安全性。但是在檢查程序文件時,需要計算文件的哈希值,還需要訪問網絡,這些都是比較耗費時間的操作,并且一般的程序會加載幾十個甚至上百個DLL文件,即使使用緩存技術進行優化,還是會明顯延長程序的啟動時間。因此,為了盡可能減小對程序性能的影響,主動防御技術只對程序的EXE文件進行檢測,而不檢查程序加載的DLL文件。因此,一些惡意程序就利用這一點,通過DLL劫持技術將該惡意程序的DLL文件與可信任的白名單中的程序(例如操作系統自帶的程序)打包在一起,當用戶選擇執行該白名單中的程序時,其中的惡意程序的DLL文件就會被加載,從而使主動防御技術不能成功攔截該惡意程序。為了防止惡意程序利用可信任的白名單中的程序突破主動防御而成功執行,本發明實施例提出了一種程序處理方法,具體的,該程序處理方法包括以下步驟步驟S201,當檢測到待執行程序創建進程時,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件。需要說明的是,該步驟S201為檢查所述待執行程序是否存在被劫持的DLL文件的過程,相對于上述實施例一來說,該步驟S201可以包括上述實施例一中的步驟SlOl-步驟S103。步驟S202,若存在,則通過服務器對所述被劫持的DLL文件進行查殺。步驟S203,依據服務器查殺結果對所述待執行程序執行相應的操作。通過上述步驟S201-步驟S203可以在待執行程序存在被劫持的DLL文件時,進一步通過服務器對這些被劫持的DLL文件進行查殺,然后依據服務器查殺結果對所述待執行程序執行相應的操作。對于具體的處理過程,將在下面的實施例中詳細介紹。本發明實施例提出的程序處理方法通過對待執行程序中被劫持的DLL文件進行檢查,能夠解決惡意程序利用可信任的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,取得了更加有效地攔截惡意程序的有益效果。實施例三下面,對于具體的程序處理方法進行詳細描述。參照圖3,示出了根據本發明一個實施例的程序處理方法的流程圖,所述方法包括步驟S301,當檢測到待執行程序創建進程時,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件。本發明實施例主要是在待執行程序創建進程時,增加對DLL文件的查詢過程,需要檢查待執行程序是否存在被劫持的DLL文件,如果存在,則說明該待執行程序有可能被惡意程序利用,因此要進一步檢查這些被劫持的DLL文件是否安全。在本實施例中,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件。云端鑒別條件存儲在服務器中,在云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息,本實施例就是要將待執行程序的一些特征信息與云端鑒別條件進行匹配,然后再依據匹配結果進行判斷。對于具體的匹配過程,是在服務器中執行的。具體的,該步驟S301可以包括以下子步驟子步驟al,獲取所述待執行程序的特征信息。其中,待執行程序的特征信息可以包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。當然,所述待執行程序的特征信息還可以包括其他信息,本實施例對此并不加以限制。子步驟a2,將所述待執行程序的特征信息上傳至服務器。由于本實施例需要通過預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件,云端鑒別條件存儲在服務器中,因此在獲取到待執行程序的特征信息之后,首先需要將這些特征信息上傳至服務器,由服務器將待執行程序的特征信息與云端鑒別條件進行匹配。子步驟a3,通過服務器將所述待執行程序的特征信息與所述云端鑒別條件進行匹配,獲得所述待執行程序需要檢查的DLL文件信息,將所述需要檢查的DLL文件信息作為匹配結果;下面,具體介紹一下與云端鑒別條件進行匹配的過程。由上述描述可知,在云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息,在本發明實施例中,可以將待執行程序的特征信息與特定程序匹配條件進行匹配,從而獲得需要檢查的DLL文件信息。由于特定程序匹配條件需要與待執行程序的特征信息進行匹配,因此,在所述特定程序匹配條件中也可以包括一些與程序的特征信息相對應的信息,通過這些信息即可找到與待執行程序的特征信息相匹配的特定程序匹配條件。在本實施例中,所述特定程序匹配條件可以包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息。當然,所述特定程序匹配條件還可以包括其他信息,本實施例對此并不加以限制。具體的,通過服務器針對特定程序匹配條件的處理過程可以包括(i)將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;(ii)獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;(iii)將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。具體的,可以通過以下實例進行說明。如圖4所示,是本發明實施例所述的云端鑒別條件的示意圖。從圖中可以看出,在該云端鑒別條件中包括條件和返回值兩個部分,其中條件一列中包含了多個表達式,這些表達式即為本發明實施例所述的特定程序匹配條件,返回值一列包含了多個字符串,這些字符串中指定了滿足對應的特定程序匹配條件后需要檢查的特定DLL文件信息。在條件一列的表達式中可以包括產品名稱信息(h1.GEN)、文件大小信息(h1.DSI)、內部名稱信息(h1.1TN)、原始文件名信息(111.(幻、進程路徑信息(111.051')、父進程路徑信息(h1.SRC)、進程命令行信息(h1.CLE)等信息(圖3是云端鑒別條件的部分截圖,其中有些信息在圖3中沒有顯示),這些信息適于與待執行程序的特征信息進行匹配。在返回值一列的字符串中“DLL:”后指定了滿足對應的特定程序匹配條件后需要檢查的特定DLL文件信息,在本實施例中,所述DLL文件信息可以為DLL文件的名稱。另外,在返回值一列的字符串中,可以指定多個需要檢查的特定DLL文件信息,每個DLL文件信息之間以逗號相隔。例如,獲取到當前待執行程序的特征信息為產品名稱信息“金山重裝高手”,然后將該產品名稱信息與云端鑒別條件進行匹配,經過判斷,特定程序匹配條件中的“(h1.GEN:like,金山重裝高手)”是與產品名稱信息“金山重裝高手”相匹配的條件,因此,可以從該條件對應的返回值“(return_extinfo:〈hips>DLL:kdump.dll,irrlicht.dll〈/hips>)”中獲取需要檢查的DLL文件名稱為“kdump.dll”和“irrlicht.dll”。需要說明的是,本實施例所述的云端鑒別條件還可以包括其他的信息,例如是否生效、條件序號、應用比例等,本領域技術人員根據實際情況進行相應處理即可,本實施例對此并不加以限制。子步驟a4,接收服務器下發的所述待執行程序需要檢查的DLL文件信息。服務器依據云端鑒別條件獲取到所述待執行程序需要檢查的DLL文件信息之后,需要將所述需要檢查的DLL文件信息下發至客戶端,然后客戶端進一步對這些需要檢查的DLL文件信息進行判斷,以確定出所述待執行程序被劫持的DLL文件。子步驟a5,判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執行程序存在被劫持的DLL文件。一般來說,DLL文件會存儲在系統目錄中,如果在程序執行時需要調用某些DLL文件,則將這些DLL文件存儲在指定目錄下,因此存儲在指定目錄下的DLL文件即為該程序所調用的DLL文件。在本實施例中,所述指定目錄可以為當前目錄或者指定的相對目錄。所以,客戶端在接收到服務器下發的待執行程序需要檢查的DLL文件信息之后,還需要進一步判斷指定目錄下是否存在所述需要檢查的DLL文件信息。如果指定目錄下存在所述需要檢查的DLL文件信息,說明所述待執行程序存在被劫持的DLL文件,并且所述被劫持的DLL文件即為指定目錄下存在的DLL文件,需要對這些被劫持的DLL文件進行查殺;如果指定目錄下不存在所述需要檢查的DLL文件信息,說明這些DLL文件不會被待執行程序加載,因此不需要對其進行查殺。例如,仍然以上述舉例進行說明,如果服務器下發給客戶端的待執行程序需要檢查的DLL文件信息為DLL文件名稱“kdump.dll”和“irrlicht.dll”,則判斷指定目錄下是否存在這些DLL文件名稱。例如,判斷出指定目錄下存在其中的一個DLL文件名稱為“kdump.dll",則將DLL文件“kdump.dll”作為待執行程序被劫持的DLL文件。需要說明的是,對應于上述實施例一,本實施例中的子步驟al為上述實施例一中的步驟SlOl的具體過程,子步驟a2-子步驟a3為上述實施例一中的步驟S102的具體過程,子步驟a4_子步驟a5為上述實施例一中的步驟S103的具體過程,本實施例在此不再詳細論述。步驟S302,獲取所述待執行程序對應的EXE文件。步驟S303,若指定目錄下存在所述需要檢查的DLL文件信息,則將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器。其中,上傳的文件的信息可以包括文件的哈希值、文件路徑等信息,本發明實施例對此并不加以限制。由于現有的主動防御只對程序的EXE文件進行檢查,而不檢查程序的DLL文件,如果惡意程序利用可信的白名單中的程序加載惡意DLL文件,則惡意程序就能繞過主動防御的攔截而成功執行。因此,本發明實施例提出不僅對程序的EXE文件進行檢查,對程序的DLL文件也進行檢查,但是并不是對所有的DLL文件進行檢查,而是通過與云端鑒別條件匹配,確定出程序中被劫持的DLL文件,然后對這些被劫持的DLL文件進行查殺。具體的,對文件進行查殺的過程由服務器執行,因此,如果在步驟S201中判斷出待執行程序中存在被劫持的DLL文件,并且確定出了被劫持的DLL文件,則將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息均上傳至服務器,通過服務器對這些文件進行查殺;如果判斷出待執行程序中不存在被劫持的DLL文件,則說明該待執行程序沒有被惡意程序利用,此時只需要將待執行程序對應的EXE文件的信息上傳至服務器即可。例如,在步驟S301中判斷出待執行程序被劫持的DLL文件為“kdump.dll”,則將DLL文件“kdump.dll”的信息和產品名稱信息為“金山重裝高手”的待執行程序對應的EXE文件的信息上傳至服務器。步驟S304,通過服務器對所述被劫持的DLL文件進行查殺。服務器在接收到客戶端上傳的待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息之后,即依據所述文件信息對相應的文件進行查殺。該步驟S304具體可以包括子步驟bI,通過服務器獲取所述EXE文件的等級和所述被劫持的DLL文件的等級。在本實施例中,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級。對于等級的設置,可以設置等級為10-29時為安全等級(該等級的文件為白文件),等級為30-49時為未知等級(該等級的文件為灰文件),等級為50-69時為可疑/高度可疑等級(該等級的文件為可疑文件),等級大于或等于70時為惡意等級(該等級的文件為惡意文件)。當然,還可以設置所述等級為其他形式,本發明對此并不加以限制。子步驟b2,依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。具體的,可以通過用于查殺可移植執行體(PortableExecute,PE)類型文件的云查殺引擎,或者人工智能引擎(QihooVirtualMachine,QVM)對所述EXE文件和被劫持的DLL文件進行查殺。其中,PE類型文件通常指Windows操作系統上的程序文件,常見的PE類型文件包括EXE、DLL、OCX、SYS、COM等類型文件。殺毒引擎可以根據對文件等級的識別結果,按照殺毒引擎中保存的黑名單,和/或白名單對相應文件進行查殺。對于具體的查殺過程,本領域技術人員根據實際經驗進行相應處理即可,本實施例在此不再詳細論述。步驟S305,依據服務器查殺結果對所述待執行程序執行相應的操作。服務器在獲取到EXE文件和被劫持的DLL文件的等級之后,將獲取到的等級下發給客戶端,客戶端依據服務器查殺結果對所述待執行程序執行相應的操作。具體的,該步驟S305可以包括以下子步驟子步驟Cl,當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行。在本實施例中,所述被劫持的DLL文件為一個或多個,如果獲取到的EXE文件的等級和被劫持的DLL文件的等級中存在惡意等級,則說明該待執行程序是有風險的,此時需要攔截所述待執行程序的執行。子步驟c2,當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行。子步驟c3,當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。如果EXE文件的等級和被劫持的DLL文件的等級不滿足上述子步驟cl和子步驟c2中的兩種情況,則將EXE文件的等級修改為所述最高的等級,并且可以允許所述待執行程序的執行,此時由于待執行程序的EXE文件可能也存在風險,因此當待執行程序執行后發起可疑操作時,可以對這些可疑的操作進行攔截。例如,在步驟S301中確定出待執行程序被劫持的DLL文件為“kdump.dll”,通過服務器獲取到待執行程序的EXE文件的等級為安全等級,“kdump.dll”的等級為可疑/高度可疑等級,其中最高的文件等級為可疑/高度可疑等級,此時,即將所述EXE文件的等級修改為可疑/高度可疑等級。并且,由于EXE文件的等級被修改了,因此后續當該待執行程序執行某些可疑的操作時,即可通過EXE文件的等級判斷該程序是否安全,如果EXE文件是可疑的,則可以對這些可疑操作進行攔截。其中,可疑的操作可以為以下任意一種文件操作、注冊表操作、進程操作和網絡操作。例如,對于文件操作可以為對windows操作系統相關的文件,或者一些裝載量比較大的應用軟件(如qq、阿里旺旺等),或者桌面的快捷方式等的操作;對于注冊表的操作可以是程序寫入注冊表自動加載,以及破壞注冊表等;對于進程操作可以是進程之間相互注入(一個進程在另一個進程中插入并執行一些代碼)、進程遠線程操作、結束進程(例如有些惡意程序結束掉QQ進程,重新登錄會截取到密碼,或者進程后續的一些操作)等;對于網絡操作可以是安裝驅動或服務、全局鉤子注入,記錄鍵盤操作、修改瀏覽器中網頁內容等。當然,還可以包括其他一些操作,本發明實施例對此并不加以限制。需要說明的是,本實施例主要是針對惡意程序利用可信任的白名單中的程序加載惡意DLL文件的情況進行處理,因此,EXE文件的等級應為安全等級,如果有DLL文件的等級高于該EXE文件的等級,則修改EXE文件的等級。步驟S306,服務器定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則服務器獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新。本實施例中的云端鑒別條件是需要定期升級更新的。具體的,可以在服務器中配置升級條件,服務器定期檢測所述云端鑒別條件是否滿足升級條件,當滿足時,服務器直接獲取新的云端鑒別條件,并用新的云端鑒別條件替換原有的云端鑒別條件,從而對原有的云端鑒別條件進行升級更新。其中,升級條件可以根據本地鑒別條件的文件版本來判斷,比如有更新的版本時則升級,也可以指定當本地版本滿足某個條件時升級為一個指定版本,本發明實施例對此并不加以限制。例如,如果發現了新的被利用的程序(QQ游戲),但是云端鑒別條件中不存在該程序,則可以在云端鑒別條件中增加一個特定程序匹配條件,其中包括該程序的特征信息(“QQ游戲”)以及滿足該特定程序匹配條件后需要檢查的DLL文件信息。當然,還可以采用其他的方式對云端鑒別條件進行升級更新,本實施例對此并不加以限制。由于云端鑒別條件保存在服務器中,因此當滿足升級條件時,不需要客戶端升級文件即可生效,因此可以立刻全網升級,升級速度較快,對于突發的惡意程序有很好的攔截效果,從而避免用戶的損失。最后,需要說明的是,本發明實施例主要是針對惡意程序利用可信任的白名單中的程序加載惡意DLL文件的情況進行處理。如果待執行程序是可信任的白名單中的程序,此時主動防御技術只檢查程序的EXE文件,將會判斷該程序是安全的,從而允許其執行,但是如果惡意程序利用該白名單中的程序加載惡意DLL文件,則該惡意程序也會成功執行。因此,對于這種情況,本發明實施例通過在檢測到待執行程序創建進程時,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件,如果待執行程序存在被劫持的DLL文件,則通過服務器對所述被劫持的DLL文件進行查殺,然后依據服務器查殺結果對所述待執行程序執行相應的操作。由此解決了惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,取得了更加有效地攔截惡意程序的有益效果。需要說明的是,對于前述的方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請并不受所描述的動作順序的限制,因為依據本申請,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作并不一定是本申請所必需的。實施例四參照圖5,示出了根據本發明一個實施例的程序處理系統的結構框圖,所述系統包括客戶端501和服務器502。其中,客戶端包括特征信息獲取模塊5011、特征信息上傳模塊5012和確定模塊5013,所述服務器包括匹配模塊5021。特征信息獲取模塊5011,適于當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;特征信息上傳模塊5012,適于將所述待執行程序的特征信息上傳至服務器;匹配模塊5021,適于將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;確定模塊5013,適于接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。通過上述各個模塊可以利用服務器中的云端鑒別條件檢測待執行程序是否存在被劫持的DLL文件,如果檢測到待執行程序存在被劫持的DLL文件,則后續可以通過服務器對被劫持的DLL文件進行查殺,然后依據服務器查殺結果對所述待執行程序執行相應的操作。從而能夠解決惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,更加有效地攔截惡意程序。實施例五參照圖6,示出了根據本發明一個實施例的程序處理系統的結構框圖,所述系統包括客戶端601和服務器602。其中,客戶端601包括檢查模塊6011、EXE文件獲取模塊6012、上傳模塊6013和處理模塊6014;服務器602包括DLL文件信息獲取模塊6021、查殺模塊6022和升級模塊6023。檢查模塊6011,適于當檢測到待執行程序創建進程時,通過服務器預先設置的云端鑒別條件檢查所述待執行程序是否存在被劫持的DLL文件;需要說明的是,上述檢查模塊主要是適于檢查所述待執行程序是否存在被劫持的DLL文件,相對于上述實施例四來說,該檢查模塊的功能可以對應于上述實施例四中的特征信息獲取模塊5011、特征信息上傳模塊5012、匹配模塊5021和確定模塊5013幾個模塊實現的功能。其中,所述待執行程序為白名單中的程序,所述云端鑒別條件存儲服務器中。所述檢查模塊6011包括特征信息獲取子模塊,適于獲取所述待執行程序的特征信息;其中,所述待執行程序的特征信息可以包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。特征信息上傳子模塊,適于將所述待執行程序的特征信息上傳至服務器。所述服務器602包括DLL文件信息獲取模塊6021,適于通過將所述待執行程序的特征信息與所述云端鑒別條件進行匹配,獲得所述待執行程序需要檢查的DLL文件信息,將所述需要檢查的DLL文件信息作為匹配結果;其中,所述云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。所述DLL文件信息獲取模塊包括匹配子模塊,適于將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;所述特定程序匹配條件可以包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息。特定DLL文件信息獲取子模塊,適于獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;確定子模塊,適于將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。所述檢查模塊6011還包括接收子模塊,適于接收服務器下發的所述待執行程序需要檢查的DLL文件信息;判斷子模塊,適于判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執打程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。需要說明的是,對應于上述實施例四,本實施例中的特征信息獲取子模塊可以為上述實施例四中的特征信息獲取模塊中包括的子模塊,特征信息上傳子模塊可以為上述實施例四中的特征信息上傳模塊中包括的子模塊,DLL文件信息獲取子模塊可以為上述實施例四中的匹配模塊中包括的子模塊,接收子模塊和判斷子模塊可以為上述實施例四中的確定模塊中包括的子模塊,本實施例在此不再詳細論述。所述客戶端601還包括文件獲取模塊6012,適于在服務器的查殺模塊對所述被劫持的DLL文件進行查殺之前,獲取所述待執行程序對應的EXE文件;文件信息上傳模塊6013,適于將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述服務器602還包括查殺模塊6022,適于當客戶端的確定模塊的檢查結果為存在時,對所述被劫持的DLL文件進行查殺;所述查殺模塊6022包括等級查詢子模塊,適于查詢所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;查殺子模塊,適于依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。所述客戶端還包括處理模塊6014,適于依據服務器查殺結果對所述待執行程序執行相應的操作;其中,所述被劫持的DLL文件為一個或多個,所述處理模塊6014包括程序攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;執行子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;可疑操作攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。其中,所述可疑操作可以為以下任意一種文件操作、注冊表操作、進程操作和網絡操作,當然,所述可疑操作還可以為其他的一些操作,本發明實施例對此并不加以限制。所述服務器602還包括升級模塊6023,適于定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。本發明實施例的程序處理系統可以依據云端鑒別條件檢查待執行程序是否存在被劫持的DLL文件,并且對待執行程序被劫持的DLL文件進行查殺,然后依據服務器查殺結果對待執行程序執行相應的操作。由此解決了惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題,取得了更加有效地攔截惡意程序的有益效果。其次,本發明實施例的云端鑒別條件保存在服務器中,當滿足升級條件時,不需要客戶端升級文件即可生效,因此可以立刻全網升級,升級速度較快,對于突發的惡意程序有很好的攔截效果,從而避免用戶的損失。對于上述程序處理系統實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關之處參見圖1、圖2和圖3所示方法實施例的部分說明即可。本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。本領域技術人員易于想到的是上述各個實施例的任意組合應用都是可行的,故上述各個實施例之間的任意組合都是本申請的實施方案,但是由于篇幅限制,本說明書在此就不一一詳述了。在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權利要求書由此明確地并入該具體實施方式,其中每個權利要求本身都作為本發明的單獨實施例。本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的程序處理系統中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。本文公開了Al、一種程序處理方法,包括當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;將所述待執行程序的特征信息上傳至服務器,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。A2、根據Al所述的方法,還包括若存在,則通過服務器對所述被劫持的DLL文件進行查殺;依據服務器查殺結果對所述待執行程序執行相應的操作。A3、根據Al所述的方法,所述匹配結果為所述待執行程序需要檢查的DLL文件信息,所述依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件,包括判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執行程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。A4、根據A3所述的方法,所述云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。A5、根據A4所述的方法,所述由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果,包括通過服務器將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;通過服務器獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。A6、根據A5所述的方法,所述特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;所述待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。A7、根據A2所述的方法,在通過服務器對所述被劫持的DLL文件進行查殺之前,還包括獲取所述待執行程序對應的EXE文件;將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述通過服務器對所述被劫持的DLL文件進行查殺,包括通過服務器獲取所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。A8、根據A7所述的方法,所述被劫持的DLL文件為一個或多個,所述依據服務器查殺結果對所述待執行程序執行相應的操作,包括當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級聞于所述EXE文件的等級時,獲取其中最聞的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。A9、根據AS所述的方法,所述可疑操作為以下任意一種文件操作、注冊表操作、進程操作和網絡操作。A10、根據Al所述的方法,所述待執行程序為白名單中的程序。AU、根據Al所述的方法,所述云端鑒別條件存儲在服務器中。A12、根據Al所述的方法,還包括服務器定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則服務器獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。本文公開了B13、一種程序處理系統,包括客戶端和服務器,其中,客戶端包括特征信息獲取模塊,適于當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;特征信息上傳模塊,適于將所述待執行程序的特征信息上傳至服務器;所述服務器包括匹配模塊,適于將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;所述客戶端還包括確定模塊,適于接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。B14、根據B13所述的系統,所述服務器還包括查殺模塊,適于當客戶端的確定模塊的檢查結果為存在時,對所述被劫持的DLL文件進行查殺;所述客戶端還包括處理模塊,適于依據服務器查殺結果對所述待執行程序執行相應的操作。B15、根據B13所述的系統,所述匹配結果為所述待執行程序需要檢查的DLL文件信息,所述確定模塊包括判斷子模塊,適于判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執行程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。B16、根據B15所述的系統,所述云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。B17、根據B16所述的系統,所述匹配模塊包括匹配子模塊,適于將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;特定DLL文件信息獲取子模塊,適于獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;確定子模塊,適于將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。B18、根據B17所述的系統,所述特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;所述待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。B19、根據B14所述的系統,所述客戶端還包括文件獲取模塊,適于在服務器的查殺模塊對所述被劫持的DLL文件進·行查殺之前,獲取所述待執行程序對應的EXE文件;文件信息上傳模塊,適于將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述查殺模塊包括等級查詢子模塊,適于查詢所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;查殺子模塊,適于依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。B20、根據B19所述的系統,所述被劫持的DLL文件為一個或多個,所述處理模塊包括程序攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;執行子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;可疑操作攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。B21、根據B20所述的系統,所述可疑操作為以下任意一種文件操作、注冊表操作、進程操作和網絡操作。B22、根據B13所述的系統,所述待執行程序為白名單中的程序。B23、根據B13所述的系統,所述云端鑒別條件存儲在服務器中。B24、根據B13所述的系統,所述服務器還包括升級模塊,適于定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。權利要求1.一種程序處理方法,包括當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;將所述待執行程序的特征信息上傳至服務器,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。2.根據權利要求1所述的方法,還包括若存在,則通過服務器對所述被劫持的DLL文件進行查殺;依據服務器查殺結果對所述待執行程序執行相應的操作。3.根據權利要求1所述的方法,所述匹配結果為所述待執行程序需要檢查的DLL文件信息,所述依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件,包括判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執行程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。4.根據權利要求3所述的方法,所述云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。5根據權利要求4所述的方法,所述由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果,包括通過服務器將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;通過服務器獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。6.根據權利要求5所述的方法,所述特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;所述待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。7.根據權利要求2所述的方法,在通過服務器對所述被劫持的DLL文件進行查殺之前,還包括獲取所述待執行程序對應的EXE文件;將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述通過服務器對所述被劫持的DLL文件進行查殺,包括通過服務器獲取所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。8.根據權利要求7所述的方法,所述被劫持的DLL文件為一個或多個,所述依據服務器查殺結果對所述待執行程序執行相應的操作,包括當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。9.根據權利要求1所述的方法,所述待執行程序為白名單中的程序。10.根據權利要求1所述的方法,還包括服務器定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則服務器獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。11.一種程序處理系統,包括客戶端和服務器,其中,客戶端包括特征信息獲取模塊,適于當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;特征信息上傳模塊,適于將所述待執行程序的特征信息上傳至服務器;所述服務器包括匹配模塊,適于將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;所述客戶端還包括確定模塊,適于接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。12.根據權利要求11所述的系統,所述服務器還包括查殺模塊,適于當客戶端的確定模塊的檢查結果為存在時,對所述被劫持的DLL文件進行查殺;所述客戶端還包括處理模塊,適于依據服務器查殺結果對所述待執行程序執行相應的操作。13.根據權利要求11所述的系統,所述匹配結果為所述待執行程序需要檢查的DLL文件信息,所述確定模塊包括判斷子模塊,適于判斷指定目錄下是否存在所述需要檢查的DLL文件信息,若存在,則確定所述待執打程序存在被劫持的DLL文件;其中,所述被劫持的DLL文件為指定目錄下存在的DLL文件,所述指定目錄為當前目錄或者指定的相對目錄。14.根據權利要求13所述的系統,所述云端鑒別條件中包括多個特定程序匹配條件和滿足該特定程序匹配條件后需要檢查的特定DLL文件信息。15.根據權利要求14所述的系統,所述匹配模塊包括匹配子模塊,適于將所述待執行程序的特征信息與所述特定程序匹配條件進行匹配;特定DLL文件信息獲取子模塊,適于獲取滿足相匹配的特定程序匹配條件后需要檢查的特定DLL文件信息;確定子模塊,適于將所述特定DLL文件信息作為所述待執行程序需要檢查的DLL文件信息。16.根據權利要求15所述的系統,所述特定程序匹配條件包括以下信息中的至少一種文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及進程的命令行信息、進程路徑信息和父進程路徑信息;所述待執行程序的特征信息包括以下信息中的至少一種待執行程序的文件名稱信息、文件大小信息、文件特征值信息、文件圖標信息、產品名稱信息、內部名稱信息、原始文件名信息,以及待執行程序創建的進程的命令行信息、進程路徑信息和父進程路徑信息。17.根據權利要求12所述的系統,所述客戶端還包括文件獲取模塊,適于在服務器的查殺模塊對所述被劫持的DLL文件進行查殺之前,獲取所述待執行程序對應的EXE文件;文件信息上傳模塊,適于將所述待執行程序對應的EXE文件的信息和所述被劫持的DLL文件的信息上傳至服務器;所述查殺模塊包括等級查詢子模塊,適于查詢所述EXE文件的等級和所述被劫持的DLL文件的等級,所述等級包括安全等級、未知等級、可疑/高度可疑等級、以及惡意等級;查殺子模塊,適于依據所述EXE文件的等級和所述被劫持的DLL文件的等級對所述被劫持的DLL文件進行查殺。18.根據權利要求17所述的系統,所述被劫持的DLL文件為一個或多個,所述處理模塊包括程序攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中至少一個為惡意等級時,攔截所述待執行程序的執行;執行子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級均為安全等級時,允許所述待執行程序的執行;可疑操作攔截子模塊,適于當所述EXE文件的等級和所述被劫持的DLL文件的等級中沒有惡意等級,并且至少一個被劫持的DLL文件的等級高于所述EXE文件的等級時,獲取其中最高的等級,將所述EXE文件的等級修改為所述最高的等級,允許所述待執行程序的執行,并攔截待執行程序執行后發起的可疑操作。19.根據權利要求11所述的系統,所述待執行程序為白名單中的程序。20.根據權利要求11所述的系統,所述服務器還包括升級模塊,適于定期檢測所述云端鑒別條件是否滿足升級條件,若滿足,則獲取新的鑒別條件,并通過重新加載所述新的鑒別條件完成所述云端鑒別條件的升級更新;其中,所述升級條件在服務器中進行配置。全文摘要本發明實施例公開了一種程序處理方法和系統,以解決惡意程序利用可信的白名單中的程序加載惡意DLL文件而導致主動防御無法正常攔截惡意程序的問題。其中,方法包括當檢測到待執行程序創建進程時,獲取所述待執行程序的特征信息;將所述待執行程序的特征信息上傳至服務器,由服務器將所述待執行程序的特征信息與預先設置的云端鑒別條件進行匹配,得到匹配結果;接收所述服務器返回的匹配結果,并依據所述匹配結果確定所述待執行程序是否存在被劫持的DLL文件。本發明實施例能夠更加有效地攔截惡意程序。文檔編號G06F9/445GK103001947SQ20121044851公開日2013年3月27日申請日期2012年11月9日優先權日2012年11月9日發明者張曉霖,鄭文彬申請人:北京奇虎科技有限公司,奇智軟件(北京)有限公司