專利名稱:一種清除惡意程序的方法和裝置的制作方法
技術(shù)領域:
本發(fā)明涉及信息安全技術(shù)領域,尤其涉及一種清除惡意程序方法和裝置。
背景技術(shù):
隨著計算機技術(shù)在社會生活中各個領域的廣泛運用,惡意程序(Malwar, malicious software)也如同其附屬品一樣接踵而來。由于這些惡意程序所具有的感染性、 復制性及破壞性,其已成為困擾計算機使用的一個重大問題。惡意程序是一個概括性的術(shù)語,指任何故意創(chuàng)建用來執(zhí)行未經(jīng)授權(quán)并通常是有害 行為的軟件程序。計算機病毒、后門程序、鍵盤記錄器、密碼盜取者、Word和Excel宏病毒、 引導區(qū)病毒、腳本病毒(batch,windows shell,java等)、木馬、犯罪軟件、間諜軟件和廣告 軟件等等,都是一些可以稱之為惡意程序的例子。為敘述方便,本發(fā)明將未被惡意程序感染或破壞或控制的文件或網(wǎng)頁等對象,統(tǒng) 稱為未染毒文件;將已經(jīng)被惡意程序感染或破壞或控制的文件或網(wǎng)頁等對象,統(tǒng)稱為染毒 文件。惡意程序一旦進入計算機并得以執(zhí)行,其表現(xiàn)是多種多樣的,下面主要以病毒作 為例子進行說明。例如,正常的計算機程序一般是不會將自身的代碼強行連接到其他程序 之上的,而病毒卻能使自身的代碼強行傳染到一切符合其傳染條件的未受到傳染的程序之 上。計算機病毒一旦進入計算機并得以執(zhí)行,它就會搜尋其他符合其傳染條件的程序 或存儲介質(zhì),確定目標后再將自身代碼插入其中,達到自我繁殖的目的。只要一臺計算機染 毒,如不及時處理,那么病毒就會在這臺計算機上迅速擴散,其中的大量文件(一般是可執(zhí) 行文件)會被感染。而被感染的文件又成了新的傳染源,再與其他機器進行數(shù)據(jù)交換或通 過網(wǎng)絡接觸,病毒會繼續(xù)進行傳染。正是由于計算機病毒通過修改磁盤扇區(qū)信息或文件內(nèi)容并把自身嵌入到其中的 方法達到傳播和擴散的目的,因此,現(xiàn)有的殺毒軟件執(zhí)行“清除病毒”的方法是從被感染病 毒的文件中分離出并去除病毒代碼,以還原出未經(jīng)損壞的原文件,例如在01117726. 8號中 國專利申請中介紹的技術(shù)方案。然而,現(xiàn)有的這種清除病毒的方法并不總是有效的,原因在于當去除被感染文件 中的某些代碼后,有可能會造成原程序無法運行,嚴重時還會造成某些系統(tǒng)文件無法執(zhí)行, 從而無法正常開啟和進入用戶的計算機系統(tǒng),因此,用戶有時并不敢輕易的執(zhí)行病毒清除 動作。因此,如何更好的清除惡意程序,還原文件,已經(jīng)成為一個困擾安全行業(yè)很久的問 題,亟待業(yè)界提出更好的解決方案。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種清除惡意程序的方法和裝置,以更加有效、安全的清除計算機病毒或木馬等惡意程序,還原文件。為解決上述技術(shù)問題,本發(fā)明提供一種清除惡意程序的方法,包括如下步驟構(gòu)建一數(shù)據(jù)庫,所述數(shù)據(jù)庫中存儲有未染毒的文件及其對應的文件信息;當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存儲于所述數(shù) 據(jù)庫中的未染毒文件信息進行匹配;如果匹配成功,則將所述數(shù)據(jù)庫中的未染毒文件信息對應的未染毒文件加載至所 述客戶端計算機中,替換所述染毒文件。其中,所述構(gòu)建一數(shù)據(jù)庫的步驟可以包括由客戶端計算機收集文件及其對應的文件信息,并傳送至服務器端;由服務器端對收集到的文件進行認證,通過認證的,將該文件及其對應的文件信 息存儲入數(shù)據(jù)庫中。其中,所述由客戶端計算機收集文件及其對應的文件信息步驟,可以進一步包 括在客戶端建立一收集文件列表,根據(jù)文件信息確認該文件已經(jīng)收集過的,則不再 重復收集。其中,所述由服務器端對收集到的文件進行認證的步驟,可以進一步包括在服務器端建立一認證文件列表,根據(jù)文件信息確認該文件已經(jīng)認證過的,則不 再重復認證。其中,所述將該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹 配的步驟,可以包括根據(jù)存儲于數(shù)據(jù)庫中的未染毒文件的信息類型,對應收集該染毒文件的信息;將收集到的該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行對 應匹配,根據(jù)事先制定的匹配規(guī)則確定是否匹配成功。其中,所述替換所述染毒文件的步驟,可以包括確定染毒文件在該客戶端計算機中的安裝路徑;刪除染毒文件,并根據(jù)所述安裝路徑安裝所述未染毒文件。其中,所述文件信息可以包括文件名,文件路徑,文件版本,操作系統(tǒng),操作系統(tǒng)版 本,及相關(guān)聯(lián)到的應用程序組件信息中的至少其中之一。其中,所述文件信息可以進一步包括文件指紋。其中,所述方法可以進一步包括步驟將未染毒文件的文件指紋信息列入白名單,并將染毒文件的文件指紋信息列入黑 名單,以輔助對未知程序的黑白判別。本發(fā)明進而還提供一種清除惡意程序的裝置,包括數(shù)據(jù)庫模塊,用于存儲有未感染病毒的文件及其對應的文件信息;匹配模塊,用于當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息 與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹配;替換模塊,用于當匹配成功時,將所述數(shù)據(jù)庫中的未染毒文件信息對應的未染毒 文件加載至所述客戶端計算機中,替換所述染毒文件。其中,所述裝置可以進一步包括
客戶端收集單元,用于通過客戶端計算機收集文件及其對應的文件信息,并傳送 至服務器端;服務器端認證單元,用于通過服務器端對收集到的文件進行認證,通過認證的,將 該文件及其對應的文件信息存儲入數(shù)據(jù)庫中。其中,所述客戶端收集單元,可進一步用于在客戶端建立一收集文件列表,根據(jù)文 件信息確認該文件已經(jīng)收集過的,則不再重復收集。其中,所述服務器端認證單元,可進一步包括在服務器端建立一認證文件列表,根 據(jù)文件信息確認該文件已經(jīng)認證過的,則不再重復認證。其中,所述匹配模塊,可根據(jù)存儲于數(shù)據(jù)庫中的未染毒文件的信息類型,對應收集 該染毒文件的信息,并將收集到的該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件 信息進行對應匹配,根據(jù)事先制定的匹配規(guī)則確定是否匹配成功。其中,所述替換模塊,可根據(jù)染毒文件在該客戶端計算機中的安裝路徑,將未染毒 文件加載至所述客戶端計算機中,替換所述染毒文件。其中,所述文件信息可以包括文件名,文件路徑,文件版本,操作系統(tǒng),操作系統(tǒng)版 本,及相關(guān)聯(lián)到的應用程序組件信息中的至少其中之一。其中,所述文件信息可進一步包括文件指紋。其中,所述數(shù)據(jù)庫進一步包括黑/白名單,所述未染毒文件的文件指紋信息列入 白名單,所述染毒文件的文件指紋信息列入黑名單,以輔助對未知程序的黑白判別。利用本發(fā)明,可有效避免在清除計算機病毒或木馬等惡意程序后導致文件受損, 或無法執(zhí)行的問題,方便了計算機用戶對染毒文件的處理,提供了更加安全有效的病毒清 除方案。
圖1為根據(jù)本發(fā)明實施例所述的清除惡意程序的方法流程圖。圖2為根據(jù)本發(fā)明實施例所述的構(gòu)建一數(shù)據(jù)庫的流程示意圖。圖3為根據(jù)本發(fā)明實施例所述的文件信息匹配流程示意圖。圖4為根據(jù)本發(fā)明實施例所述的替換文件流程示意圖。圖5為根據(jù)本發(fā)明實施例所述的清除受感染文件中的計算機病毒的裝置示意圖。圖6為根據(jù)本發(fā)明實施例所述的數(shù)據(jù)庫文件收集示意圖。
具體實施例方式下面參照附圖對本發(fā)明做進一步的說明。針對現(xiàn)有清除惡意程序的方法的弊端,本發(fā)明的核心思想就是不再使用去除病毒 代碼的方式,而是直接替換染毒文件,為此需要事先構(gòu)建一個文件數(shù)據(jù)庫,并注意收集好文 件的信息,當可以確定被感染文件及其信息時,可以通過文件信息在數(shù)據(jù)庫中查找事先存 儲的未被感染病毒的好文件,并將好文件下載至被感染病毒的客戶端計算機后,替換染毒 文件。請參考圖1,為根據(jù)本發(fā)明實施例的清除惡意程序的方法流程圖,首先構(gòu)建一數(shù)據(jù) 庫,所述數(shù)據(jù)庫中存儲有未感染病毒的文件及其對應的文件信息(步驟102);當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件 信息進行匹配(步驟104);如果匹配成功,則將所述數(shù)據(jù)庫中的未染毒文件信息對應的未 染毒文件加載至所述客戶端計算機中,替換所述染毒文件(步驟106)。本發(fā)明所述數(shù)據(jù)庫可以構(gòu)建在本地客戶端,也可以構(gòu)建在局域網(wǎng)內(nèi),優(yōu)選的,是構(gòu) 建在服務器端(或云端)的數(shù)據(jù)中心。所述數(shù)據(jù)庫中存儲的未染毒文件,可以是事先經(jīng)過人工挑選并驗證的文件,優(yōu)選 的,也可以是利用客戶端計算機本地自動收集后,由服務器端進行驗證后存儲在數(shù)據(jù)庫中, 如圖2所示,為根據(jù)本發(fā)明實施例所述的構(gòu)建一數(shù)據(jù)庫的流程示意圖,首先由客戶端計算 機收集文件及其對應的文件信息,并傳送至服務器端(步驟202);然后由服務器端對收 集到的文件進行認證,通過認證的,將該文件及其對應的文件信息存儲入數(shù)據(jù)庫中(步驟 204)。上述這種文件未染毒的認證,可以是通過白名單驗證,或文件指紋與文件名稱的 對應,或經(jīng)過虛擬機驗證等方式進行,本發(fā)明對此不做限制。進一步優(yōu)選的,上述步驟202中,還可以在客戶端計算機本地建立一收集文件列 表,根據(jù)文件信息確認該文件是否已經(jīng)被收集過,如果已經(jīng)收集過的,則不再重復收集。同理,上述步驟204中,還可以在服務器端建立一認證文件列表,根據(jù)文件信息確 認該文件已經(jīng)經(jīng)過認證,已經(jīng)認證過的,則不再重復認證。上述文件列表中可以記錄有文件的名稱及指紋信息,一旦經(jīng)過收集或認證后,即 可在列表中添加一條記錄,以供后續(xù)文件的比對判斷,本發(fā)明對該步驟的具體操作方式不 做限制。當利用查毒軟件確定客戶端計算機中的染毒文件后,即可利用本發(fā)明,將該染毒 文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹配,以便查找到與染毒文件對 應的未染毒文件。上述查毒軟件對染毒文件的確認,可以通過特征碼掃描,行為判斷,云查殺等多種 方式,本發(fā)明對此不做限制,而本發(fā)明的匹配步驟所需要的染毒文件信息,即可利用后臺殺 毒軟件對染毒文件的判斷時所獲取的文件信息作為匹配所需要的信息,從而提高效率。當上述對染毒文件的判斷所需要的信息不足以提供本發(fā)明的匹配步驟所需要的 信息時,可先執(zhí)行染毒文件信息收集動作后再進行匹配,請參考圖3,為根據(jù)本發(fā)明實施例 所述的文件信息匹配流程示意圖,首先根據(jù)存儲于數(shù)據(jù)庫中的未染毒文件的信息類型,對 應收集該染毒文件的信息(步驟302);然后將收集到的該染毒文件的信息與存儲于所述數(shù) 據(jù)庫中的未染毒文件信息進行對應匹配,根據(jù)事先制定的匹配規(guī)則確定是否匹配成功(步 驟 304)。本發(fā)明所述的文件信息可以包括文件名,文件路徑,文件版本,操作系統(tǒng),操作系 統(tǒng)版本,或相關(guān)聯(lián)到的應用程序組件等,也可以是前述信息的任何組合,至少包括其中之
ο如果在數(shù)據(jù)庫中存儲的未染毒文件信息包括了文件名、文件路徑及文件版本信 息,則對應收集染毒文件的文件名、文件路徑及文件版本信息進行匹配;而匹配規(guī)則可以根 據(jù)文件的重要程度而制定不同的匹配要求,例如,對于系統(tǒng)文件,可以要求文件信息全部一 致才認為匹配成功;而對于一般應用程序文件,在版本不一致時,如果存儲于數(shù)據(jù)庫中的是基本版本或標準版本,則可以認為匹配成功。上述文件信息類型及規(guī)則僅為例舉,本發(fā)明對 此不作任何限制。在匹配成功后,即可通過替換文件達到清除病毒的目的。如圖4所示,為根據(jù)本發(fā) 明實施例所述的替換文件流程示意圖,首先確定染毒文件在該客戶端計算機中的安裝路徑 (步驟402);然后刪除染毒文件,并根據(jù)所述安裝路徑安裝所述未染毒文件(步驟404)。如果上述收集的染毒文件信息中包含了文件路徑信息,則直接可以確定染毒文件 的安裝路徑,如果未包含文件路徑信息,則可以再次執(zhí)行收集動作。此外,所述收集的文件信息還可以包括文件指紋信息。文件指紋是使用例如MD5 文件信息摘要算法算出的一個32位的特征編碼,或使用SHAl或CRC等算法算出的特征編 碼,其相當于為每一個文件計算出一個文件指紋,用于標識文件的唯一性。這樣,可以將未染毒文件的文件指紋信息列入白名單,并將染毒文件的文件指紋 信息列入黑名單,以輔助對未知程序的黑白判別。參考圖5,為根據(jù)本發(fā)明實施例所述的清除受感染文件中的計算機病毒的裝置示 意圖,數(shù)據(jù)庫模塊502,匹配模塊504,及替換模塊506。其中,數(shù)據(jù)庫模塊502用于存儲未感染病毒的文件及其對應的文件信息;匹配模 塊504用于當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存儲于所述 數(shù)據(jù)庫中的未染毒文件信息進行匹配;替換模塊506用于當匹配成功時,將所述數(shù)據(jù)庫中 的未染毒文件信息對應的未染毒文件加載至所述客戶端計算機中,替換所述染毒文件。同樣,數(shù)據(jù)庫中的文件及信息可以經(jīng)由客戶端計算機自動收集,如圖6所示,為根 據(jù)本發(fā)明實施例所述的數(shù)據(jù)庫文件收集示意圖,包括數(shù)據(jù)庫502,客戶端收集單元602,服 務器認證單元604。其中,客戶端收集單元602用于通過客戶端計算機收集文件及其對應的文件信 息,并傳送至服務器端;服務器端認證單元604用于通過服務器端對收集到的文件進行認 證,通過認證的,將該文件及其對應的文件信息存儲入數(shù)據(jù)庫中。優(yōu)選的,所述客戶端收集單元602,進一步用于在客戶端建立一收集文件列表,根 據(jù)文件信息確認該文件已經(jīng)收集過的,則不再重復收集。優(yōu)選的,所述服務器端認證單元604,進一步包括在服務器端建立一認證文件列 表,根據(jù)文件信息確認該文件已經(jīng)認證過的,則不再重復認證。與上述在本發(fā)明的方法中描述的技術(shù)方案類似,本發(fā)明的所述匹配模塊,可以根 據(jù)存儲于數(shù)據(jù)庫中的未染毒文件的信息類型,對應收集該染毒文件的信息,并將收集到的 該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行對應匹配,根據(jù)事先制定 的匹配規(guī)則確定是否匹配成功。所述替換模塊,可以根據(jù)染毒文件在該客戶端計算機中的安裝路徑,將未染毒文 件加載至所述客戶端計算機中,替換所述染毒文件。此外,所述文件信息除可以包含文件名,文件路徑,文件版本,操作系統(tǒng),操作系統(tǒng) 版本,及相關(guān)聯(lián)到的應用程序組件等之任意組合外,還可以進一步文件指紋。相應的,所述數(shù)據(jù)庫中可進一步記錄有黑/白名單,并將所述未染毒文件的文件 指紋信息列入白名單,將所述染毒文件的文件指紋信息列入黑名單,以輔助對未知程序的 黑白判別。
上述對于本發(fā)明的方法所作出的有關(guān)實施例的細節(jié)說明,對于本發(fā)明的裝置同樣 適用,在此不再贅述。
9
權(quán)利要求
一種清除惡意程序的方法,其特征在于,包括如下步驟構(gòu)建一數(shù)據(jù)庫,所述數(shù)據(jù)庫中存儲有未染毒的文件及其對應的文件信息;當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹配;如果匹配成功,則將所述數(shù)據(jù)庫中的未染毒文件信息對應的未染毒文件加載至所述客戶端計算機中,替換所述染毒文件。
2.如權(quán)利要求1所述的方法,其特征在于,所述構(gòu)建一數(shù)據(jù)庫的步驟包括 由客戶端計算機收集文件及其對應的文件信息,并傳送至服務器端;由服務器端對收集到的文件進行認證,通過認證的,將該文件及其對應的文件信息存 儲入數(shù)據(jù)庫中。
3.如權(quán)利要求2所述的方法,其特征在于,所述由客戶端計算機收集文件及其對應的 文件信息步驟,進一步包括在客戶端建立一收集文件列表,根據(jù)文件信息確認該文件已經(jīng)收集過的,則不再重復 收集。
4.如權(quán)利要求2所述的方法,其特征在于,所述由服務器端對收集到的文件進行認證 的步驟,進一步包括在服務器端建立一認證文件列表,根據(jù)文件信息確認該文件已經(jīng)認證過的,則不再重 復認證。
5.如權(quán)利要求1所述的方法,其特征在于,所述將該染毒文件的信息與存儲于所述數(shù) 據(jù)庫中的未染毒文件信息進行匹配的步驟,包括根據(jù)存儲于數(shù)據(jù)庫中的未染毒文件的信息類型,對應收集該染毒文件的信息; 將收集到的該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行對應匹 配,根據(jù)事先制定的匹配規(guī)則確定是否匹配成功。
6.如權(quán)利要求1所述的方法,其特征在于,所述替換所述染毒文件的步驟,包括 確定染毒文件在該客戶端計算機中的安裝路徑;刪除染毒文件,并根據(jù)所述安裝路徑安裝所述未染毒文件。
7.如權(quán)利要求1所述的方法,其特征在于,所述文件信息包括文件名,文件路徑,文件 版本,操作系統(tǒng),操作系統(tǒng)版本,及相關(guān)聯(lián)到的應用程序組件信息中的至少其中之一。
8.如權(quán)利要求7所述的方法,其特征在于,所述文件信息進一步包括文件指紋。
9.如權(quán)利要求8所述的方法,其特征在于,進一步包括步驟將未染毒文件的文件指紋信息列入白名單,并將染毒文件的文件指紋信息列入黑名 單,以輔助對未知程序的黑白判別。
10.一種清除惡意程序的裝置,其特征在于,包括數(shù)據(jù)庫模塊,用于存儲有未感染病毒的文件及其對應的文件信息; 匹配模塊,用于當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存 儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹配;替換模塊,用于當匹配成功時,將所述數(shù)據(jù)庫中的未染毒文件信息對應的未染毒文件 加載至所述客戶端計算機中,替換所述染毒文件。
11.如權(quán)利要求10所述的裝置,其特征在于,進一步包括客戶端收集單元,用于通過客戶端計算機收集文件及其對應的文件信息,并傳送至服 務器端;服務器端認證單元,用于通過服務器端對收集到的文件進行認證,通過認證的,將該文 件及其對應的文件信息存儲入數(shù)據(jù)庫中。
12.如權(quán)利要求11所述的裝置,其特征在于,所述客戶端收集單元,進一步用于在客戶 端建立一收集文件列表,根據(jù)文件信息確認該文件已經(jīng)收集過的,則不再重復收集。
13.如權(quán)利要求11所述的裝置,其特征在于,所述服務器端認證單元,進一步包括在服 務器端建立一認證文件列表,根據(jù)文件信息確認該文件已經(jīng)認證過的,則不再重復認證。
14.如權(quán)利要求10所述的裝置,其特征在于,所述匹配模塊,根據(jù)存儲于數(shù)據(jù)庫中的未 染毒文件的信息類型,對應收集該染毒文件的信息,并將收集到的該染毒文件的信息與存 儲于所述數(shù)據(jù)庫中的未染毒文件信息進行對應匹配,根據(jù)事先制定的匹配規(guī)則確定是否匹 配成功。
15.如權(quán)利要求10所述的裝置,其特征在于,所述替換模塊,根據(jù)染毒文件在該客戶端 計算機中的安裝路徑,將未染毒文件加載至所述客戶端計算機中,替換所述染毒文件。
16.如權(quán)利要求10所述的裝置,其特征在于,所述文件信息包括文件名,文件路徑,文 件版本,操作系統(tǒng),操作系統(tǒng)版本,及相關(guān)聯(lián)到的應用程序組件信息中的至少其中之一。
17.如權(quán)利要求16所述的裝置,其特征在于,所述文件信息進一步包括文件指紋。
18.如權(quán)利要求17所述的裝置,其特征在于,所述數(shù)據(jù)庫進一步包括黑/白名單,所述 未染毒文件的文件指紋信息列入白名單,所述染毒文件的文件指紋信息列入黑名單,以輔 助對未知程序的黑白判別。
全文摘要
本發(fā)明提供一種清除惡意程序的方法和裝置,包括首先構(gòu)建一數(shù)據(jù)庫,所述數(shù)據(jù)庫中存儲有未染毒的文件及其對應的文件信息;當確認客戶端計算機中某個文件被染毒后,將該染毒文件的信息與存儲于所述數(shù)據(jù)庫中的未染毒文件信息進行匹配;如果匹配成功,則將所述數(shù)據(jù)庫中的未染毒文件信息對應的未染毒文件加載至所述客戶端計算機中,替換所述染毒文件。利用本發(fā)明,可有效避免在清除計算機病毒或木馬等惡意程序后導致文件受損,或無法執(zhí)行的問題,方便了計算機用戶對染毒文件的處理,提供了更加安全有效的病毒清除方案。
文檔編號G06F21/56GK101950336SQ201010256960
公開日2011年1月19日 申請日期2010年8月18日 優(yōu)先權(quán)日2010年8月18日
發(fā)明者周鴻祎, 徐貴斌 申請人:奇智軟件(北京)有限公司