• / 16
  • 下載費用:30 金幣  

用于恢復修改的數據的系統和方法.pdf

摘要
申請專利號:

CN201610112970.X

申請日:

2016.02.29

公開號:

CN106257481A

公開日:

2016.12.28

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G06F 21/56申請日:20160229|||公開
IPC分類號: G06F21/56(2013.01)I 主分類號: G06F21/56
申請人: 卡巴斯基實驗室股份制公司
發明人: 尤里·G·帕爾辛; 亞歷山大·A·羅曼恩科; 尤里·G·斯洛博佳紐克
地址: 俄羅斯莫斯科
優先權: 2015.06.19 US 14/744,570
專利代理機構: 北京同達信恒知識產權代理有限公司 11291 代理人: 黃志華;何月華
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201610112970.X

授權公告號:

||||||

法律狀態公告日:

2019.03.05|||2017.01.25|||2016.12.28

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明涉及用于恢復修改的數據的系統和方法。示例性方法包括:通過活動跟蹤模塊攔截來自程序的用于修改數據的請求;通過分析模塊確定所攔截的請求的參數;通過分析模塊基于確定的所攔截的請求的參數中的至少一個參數生成用于生成數據的備份拷貝的請求;以及,通過備份模塊,生成數據的備份拷貝且將該數據的備份拷貝存儲在電子數據庫中。

權利要求書

1.一種用于恢復修改的數據的方法,所述方法包括:
通過硬件處理器攔截來自程序的用于修改數據的請求;
通過所述硬件處理器確定所攔截的請求的參數;
通過所述硬件處理器,基于所確定的所攔截的請求的參數中的至少一個參
數,生成用于生成所述數據的備份拷貝的請求;
通過所述硬件處理器生成所述數據的備份拷貝;和
通過所述硬件處理器將所述備份拷貝存儲在備份數據存儲器中。
2.根據權利要求1所述的方法,其中,所述所攔截的請求的參數包括所攔
截的請求的唯一數據標識符、操作所述數據的方法、對所述數據進行的操作中
的至少一種類型的操作、以及至少一個數據修改參數中的至少一者。
3.根據權利要求1所述的方法,還包括:
確定修改所述數據的所述程序的進程的參數;
分析所確定的進程參數;和
基于對所述進程參數的分析,阻斷所述程序的所述進程的進一步操作。
4.根據權利要求3所述的方法,還包括:
確定所述數據是否已經被惡意程序的進程修改;和
如果所述數據已經被所述惡意程序的進程修改,則在已經阻斷所述惡意程
序的進程的進一步操作之后使用所述數據的所述備份拷貝來恢復所述數據。
5.根據權利要求3所述的方法,其中,所述分析所確定的進程參數包括:
確定修改所述數據的所述程序的所述進程的參數的威脅等級和基于所述威脅等
級阻斷所述程序的所述進程的進一步操作。
6.根據權利要求3所述的方法,其中,所述阻斷所述程序的所述進程的進
一步操作包括從設備的存儲器中刪除所述進程、停止所述進程的執行、和隔離
運行所述進程的文件中的至少一者。
7.根據權利要求3所述的方法,還包括:
通過所述硬件處理器根據規則分析所述所攔截的請求的參數,所述規則包
括以下規則中的至少一者:
基于所述數據的類型備份所述數據的需求;
來自所述程序的請求是否將修改所述數據的用戶操作;
來自所述程序的請求是否將基于能夠用于所述數據的操作的類型而修
改所述數據;和
當所述數據被寫入文件時所述數據是否將被修改。
8.一種用于恢復修改的數據的系統,所述系統包括:
硬件處理器,所述硬件處理器被配置成:
攔截來自程序的用于修改數據的請求;
確定所攔截的請求的參數;
基于所確定的所攔截的請求的參數中的至少一個參數,生成用于生成
所述數據的備份拷貝的請求;
生成所述數據的備份拷貝;和
將所述備份拷貝存儲在備份數據存儲器中。
9.根據權利要求8所述的系統,其中,所述所攔截的請求的參數包括所攔
截的請求的唯一數據標識符、操作所述數據的方法、用于對所述數據進行的操
作中的至少一種類型的操作、以及至少一個數據修改參數中的至少一者。
10.根據權利要求8所述的系統,其中,所述硬件處理器還被配置成:
確定修改所述數據的所述程序的進程的參數;
分析所確定的進程參數;和
基于對所述進程參數的分析,阻斷所述程序的所述進程的進一步操作。
11.根據權利要求10所述的系統,其中,所述硬件處理器還被配置成:
確定所述數據是否已經被惡意程序的進程修改;和
如果所述數據已經被所述惡意程序的進程修改,則在已經阻斷所述惡意程
序的進程的進一步操作之后使用所述數據的所述備份拷貝來恢復所述數據。
12.根據權利要求10所述的系統,其中,所述硬件處理器還被配置成:
確定修改所述數據的所述程序的所述進程的進程參數的威脅等級;和
基于所述威脅等級阻斷所述程序的所述進程的進一步操作。
13.根據權利要求10所述的系統,其中,所述硬件處理器還被配置成:通
過從設備的存儲器中刪除所述進程、停止所述進程的執行、和隔離運行所述進
程的文件中的至少一者阻斷所述程序的所述進程的進一步操作。
14.根據權利要求10所述的系統,其中,根據規則分析所述所攔截的請求
的參數,所述規則包括以下規則中的至少一者:
基于所述數據的類型備份所述數據的需求;
來自所述程序的請求是否將修改所述數據的用戶操作;
來自所述程序的請求是否將基于能夠用于所述數據的操作的類型而修
改所述數據;和
當所述數據被寫入文件時所述數據是否將被修改。

說明書

用于恢復修改的數據的系統和方法

技術領域

本發明總體涉及抗病毒技術領域,更具體地,涉及恢復修改的數據的系統
和方法。

背景技術

近年來計算機技術的迅速發展和各種計算設備(例如,個人計算機、筆記
本電腦、平板電腦、智能手機等)的廣泛流行,對于在各種活動范圍中使用這
些設備以及對于將這些設備用于大量任務(例如,從個人相片的處理和存儲到
銀行轉賬和電子文件流轉)已經產生巨大的刺激。結合計算設備的數量以及在
這些設備上運行的軟件的數量的增長,惡意程序的數量也已經以明顯的速率增
長。

目前,存在大量的不同類型的惡意應用程序,其中絕大多數的惡意應用程
序被設計成有利于它們的設計者。一些惡意應用程序從用戶的設備中竊取個人
且機密的數據,包括例如登錄名和密碼、銀行信息、電子文件等。其他惡意程
序形成所謂的來自用戶設備的用于對其他計算機或計算機網絡進行攻擊(諸如
DDOS或強力攻擊)的“僵尸網絡”。還有其它的惡意程序向用戶提供通過侵入
廣告的付費內容、付費訂購、向收費服務號碼發送短消息服務等。

一個特別麻煩的惡意程序種類是敲詐或勒索軟件。一旦這些類型的程序被
安裝在用戶設備上,它們干擾設備的功能,例如通過阻斷數據輸入設備、損壞
數據、限制訪問接口元件等干擾設備的功能。然后,該程序要求付費以消除它
們運行的不利后果。最危險的勒索程序為加密器,其惡意活動包括損壞對于用
戶有價值的數據(例如,數據庫、Microsoft文件、相片、視頻剪輯等)。
通過對文件進行程序加密、重命名或隱藏而發生數據的損壞。

由于不僅數據的機密性、而且數據的完整性通常代表了重大價值,因此保
護數據是重要的任務。一種用于處理勒索威脅的方法是對用戶設備上的惡意應
用程序及其后來的停用進行及時檢測以及定期創建數據的備份副本,及時檢測
能夠保護數據免受未授權的修改,定期創建數據的備份副本使得能夠甚至在未
授權的數據修改的情況下恢復數據。

盡管上述方法非常適于跟蹤文件活動、用戶數據的備份存儲、以及阻斷惡
意軟件的工作的任務,但是這些方法不能夠保護有效的用戶數據免受惡意軟件
的修改,因為它們不能夠有效地對備份數據拷貝做出決定(即,在已經啟動數
據修改之前的足夠的時間內),或者在成功地備份拷貝能夠被修改的數據的情況
下,這些方法不能夠獲得來自修改進程的對于該數據的威脅等級。這進一步導
致對計算機資源的巨大負載,包括空閑的硬盤空間、處理器時間等。

發明內容

因此,在此描述的方法和系統提供了一種有效的且高效的恢復修改的數據
的方式。

根據一個方面,一種方法包括通過活動跟蹤模塊攔截來自程序的用于修改
數據的請求;通過分析模塊確定所攔截的請求的參數;通過所述分析模塊,基
于所確定的所攔截的請求的參數中的至少一個參數,生成用于生成所述數據的
備份拷貝的請求;和通過備份模塊生成所述數據的備份拷貝且將所述數據的備
份拷貝存儲在電子數據庫中。

根據另一方面,所攔截的請求的參數包括:所攔截的請求的唯一數據標識
符、操作所述數據的方法、用于對所述數據進行的操作中的至少一種類型的操
作、以及至少一個數據修改參數中的至少一者。

根據另一方面,所述方法包括:確定修改所述數據的程序的進程的進程參
數;分析所確定的進程參數;和基于對進程參數的分析,阻斷所述程序的進程
的進一步操作。

根據另一方面,所述方法還包括:確定所述數據是否已經被惡意程序的進
程修改;以及,如果所述數據已經被惡意程序的進程修改,則在已經阻斷所述
惡意程序的進程的進一步操作之后使用所述數據的備份拷貝來恢復所述數據。

根據另一方面,分析所確定的進程參數包括:確定用于修改所述數據的程
序的進程的進程參數的威脅等級,和基于所述威脅等級阻斷所述程序的進程的
進一步操作。

根據另一方面,阻斷所述程序的進程的進一步操作包括:從設備的存儲器
中刪除所述進程、停止執行所述進程、和隔離運行所述進程的文件中的至少一
者。

根據另一方面,所述方法還包括:通過分析模塊根據規則分析所攔截的請
求的參數,所述規則包括以下規則中的至少一者:基于所述數據的類型(來自
程序的請求用于修改這種類型的數據)備份所述數據的需求;來自所述程序的
請求是否將修改所述數據的用戶操作;來自所述程序的請求是否將基于能夠用
于所述數據的操作的類型而修改所述數據;和當所述數據被寫入文件時所述數
據是否將被修改。

根據一個方面,公開了用于恢復修改數據的系統。根據該方面,所述系統
包括活動跟蹤模塊,其被配置成攔截來自程序的用于修改數據的請求;分析模
塊,其被配置成確定所攔截的請求的參數并且基于所確定的所攔截的請求的參
數中的至少一個參數生成用于生成所述數據的備份拷貝的請求;和,備份模塊,
其被配置成生成所述數據的備份拷貝并且將所述數據的備份拷貝存儲在電子數
據庫中。

上述示例性方面的簡要概括用于對本發明提供基本的了解。該概括不是全
部的構想方面的廣泛概述,且既不意圖確定所有方面的關鍵或者重要的要素也
不意圖勾畫本發明的任何方面或全部方面的范圍。其唯一目的在于以簡化的形
成呈現出一個或多個方面,作為用于下面所進行的本發明的更為詳盡的描述的
前奏。為了完成上述內容,本發明的一個或多個方面包括在權利要求中所描述
的且示例性提出的特征。

附圖說明

合并到且構成本說明書的一部分的附圖,闡述了本發明的一個或多個示例
性方面,并且與詳細描述一起用于解釋這些方面的原理和實現方式。

圖1示出根據示例性方面的用于恢復修改的數據的示例性系統的框圖。

圖2示出根據示例性方面的恢復修改的數據的示例性方法的流程圖。

圖3示出能夠實施所公開的系統和方法的通用計算機系統、個人計算機或
服務器的示例。

具體實施方式

在本文中,在用于恢復修改的數據的系統、方法和計算機程序產品的上下
文中,描述了示例性方面。本領域的普通技術人員將意識到下面的描述僅僅是
說明性的且不意圖以任何方式進行限制。對于受益于本發明的本領域技術人員
將易于想象到其它方面。現在,將詳細地提及如在附圖中所示的示例性方面的
實現。盡可能在整個附圖和下面的描述中,相同的附圖標記將用于指相同的類
似的項目。

圖1示出根據示例性方面的用于恢復修改的數據的示例性系統的框圖。如
圖所示,用于恢復修改數據的系統包括數據存儲模塊110、活動跟蹤模塊120、
分析模塊130、備份模塊140、備份數據庫150和檢測模塊160。

在一個示例性方面,數據存儲模塊110被配置成從進程接收數據、存儲所
述數據、且根據進程的需求提供數據。例如,數據存儲模塊110可為用于操作
文件系統的文件管理器和/或用于操作主存儲器的內存管理器。由數據存儲模塊
110提供的數據可為文件和/或存儲區。

在一個示例性方面,活動跟蹤模塊120被配置成攔截來自進程的對數據存
儲模塊110的、可修改在數據存儲模塊110中存儲的數據的請求,確定所述進
程的參數,和將這些參數發送給檢測模塊160。活動跟蹤模塊還可確定所攔截的
請求的參數且將這些參數發送給分析模塊130。

在一個示例性方面,攔截來自進程的對數據存儲模塊110的請求,可通過
更換目前函數的地址、直接改變函數(例如,通過拼接(splice),內核模式攔截
對函數主體的修改)、或者通過直接更換應用程序/系統的整個部件,經由對應用
程序接口(“API”)函數調用的攔截而發生。

在一個示例性方面,進程對數據存儲模塊110的請求可包括,例如操作系
統的API函數(諸如用于Microsoft的WinAPI函數)和/或操作系統內
核的函數。所攔截的請求的參數可為,例如(i)唯一數據標識符(例如,文件
描述符或者到達文件的路徑、被修改的存儲器的地址等);(ii)操作數據的方法
(例如,數據的讀取、覆蓋、刪除等);(iii)操作數據的類型(例如將緩沖區寫
入到數據占據的存儲區內、讀取文件標題等);和(iv)數據修改參數(例如被
寫入到存儲區內的緩沖區的大小和內容、對于被修改的文件的新的訪問權利
等)。而且,進程參數可為例如到達運行該進程的應用程序的途徑;進程描述符;
和/或被該進程執行的操作的日志。

在一個示例性方面,分析模塊130被配置成:例如基于根據某些規則對這
些請求的參數進行分析的結果,創建用于將可被所述進程修改的數據備份拷貝
到備份數據庫150的請求且將該請求發送給備份模塊140。在一個示例性方面,
用于分析所攔截的請求的參數的規則可為:

●根據所述請求打算操作的數據的類型確定進一步備份拷貝數據的需求的
規則,(例如,如果數據完整性對于操作系統的工作是重要的(如在可執行文件
*.exe、*.dll等的情況下)或者對于用戶是重要的(如在數據庫、Microsoft
文檔、電子郵件文件、圖像等的情況下));

●根據操作數據的方法確定所述操作是否可導致數據修改的規則(例如打
開具有寫權限的文件);

●根據針對數據的操作類型確定操作是否可導致數據修改的規則(例如將
數據緩沖區寫到文件中);和

●對于被寫入的數據確定數據的修改是否將被實施或者數據是否將不受到
影響的規則(例如,附加到視頻流文件)。

在一個示例性方面,備份模塊140被配置成:響應于所述分析模塊130的
請求,執行將來自數據存儲模塊110的數據備份拷貝到備份數據庫150。備份模
塊140還被配置成針對檢測模塊160的請求,將來自備份數據庫150的數據恢
復到數據存儲模塊110。備份數據庫150還被設計成保存通過所述備份模塊140
傳送的數據且將該數據提供給備份模塊140。

在一個示例性方面,檢測模塊160被配置成分析從活動跟蹤模塊120接收
的進程參數,以借助規則確定該進程對于被該進程修改的數據的完整性的威脅
等級。檢測模塊160被配置成:基于所執行的分析的結果,形成用于將被進程
修改的數據從備份數據庫150恢復到數據存儲模塊110的請求,并且將該請求
發送給備份模塊140,以及基于所執行的分析的結果阻斷所述進程的工作。

在一個示例性方面,用于確定所述進程對被修改的數據的完整性的威脅等
級的規則可以是不可恢復地損失被進程修改的數據的可能性,且更具體地,不
能夠進行解密的數據的加密(例如,由于不能夠獲得必需的解密密鑰);數據覆
蓋(即,對于舊數據寫入新的數據,而不能夠恢復舊數據)、數據的刪除等。該
進程能夠通過從存儲器刪除所述進程、停止進程的執行、使運行該進程的文件
隔離等而被阻斷。

為了進一步描述示例性系統和方法,提供下面的示例以描述在Microsoft
文檔(例如,“*.docx”、“*.xlsx”等)已經通過加密器程序被加密后,恢
復用于Microsoft文檔的被修改的數據的系統的操作。如上文所述,加密
器程序是加密用戶的文件(諸如數據庫、Microsoft文檔、相片、視頻等)
且向用戶提供報價以使用付費的解密器程序解密它們的惡意軟件。

在一個示例性方面,加密器程序針對Microsoft文件搜索受感染的計
算機的硬盤,之后對Microsoft文件進行加密且重命名它們(例如,該程
序將擴展名*.docx修改為*.docx_crypted(加密的),以此后找到并解密僅僅先前
加密的文件)。當加密器程序利用獲得訪問Microsoft文檔文件以進行改
變的請求而訪問數據存儲模塊110(數據存儲模塊110可為操作系統的文件管理
器)時,加密器程序執行WinAPI函數“::創建文件”、“::寫入文件”和“::移動
文件”的調用。在示例性方面,活動跟蹤模塊120攔截這些請求且確定它們的
參數,即被訪問的文件的唯一標識符、它正準備對文件執行的操作等。活動跟
蹤模塊120將所接收到的信息發送給分析模塊130。活動跟蹤模塊120也攔截加
密器程序的進程的參數,諸如進程標識符、被所述進程執行的操作的日志等,
且將所攔截的參數發送給所述檢測模塊160。

在一個示例性方面,分析模塊130基于所攔截的請求的參數計算下面的準
則,例如該請求希望操作的“*.docx”文件的類型(Microsoft文檔的文件
之一);操作文件的方法(例如,用于通過發送標簽“OPEN_EXISTING(打開_
現有的)”而打開現有的文件的請求);操作文件的類型(例如,用于通過發送
標簽“GENERIC_WRITE(通用的_寫入)”而寫入文件的請求);文件修改參數
(例如,用新的數據覆蓋整個文件);和新的文件名(即,與舊的文件名不同)。

在一個示例性方面,基于一個或多個以下的準則,分析模塊130接下來基
于確定用于執行數據的備份拷貝的需求的規則而執行所計算的準則的分析:(1)
根據所請求的文件的類型,分析模塊130確定用于其進一步處理的需求且確定
文件的完整性對于操作系統的工作是否重要(例如,可執行文件“*.exe”、“*.dll”
等)或者確定文件的完整性對于用戶是否重要(數據庫、Microsoft Office文檔、
電子郵件文件、相片等);(2)根據操作文件的方法,分析模塊130確定操作文
件是否能夠引起文件修改(例如,打開現有的文件,但是創建新的文件);(3)
根據針對文件進行操作的類型,分析模塊130確定操作文件是否將導致文件修
改(例如,打開用于寫入的文件,但是打開只讀文件);和(4)根據被寫入的
數據,分析模塊130確定這是否將引起數據修改或者數據是否不會受到影響(例
如,通過將數據添加到流式視頻文件)。

根據一個方面,如果所述規則中的至少一個規則已經被所計算的準則所觸
發(例如,根據文件類型或者對于該文件的操作類型,即,在目前示例中這意
味著加密器程序將寫入到Microsoft文檔),則分析模塊130形成用于將
Microsoft文檔備份拷貝到備份數據庫150的請求且將該請求發送給備份
模塊140。

反過來,已經從分析模塊130接收到該請求的備份模塊140,執行將通過加
密器程序修改的Microsoft文檔從數據存儲模塊110備份拷貝到備份數據
庫150。

在又一方面,加密器程序的進程的文件活動的跟蹤不在此時結束。而是當
加密器程序訪問新的Microsoft文檔以改變它時,活動跟蹤模塊120將加
密器程序的進程的請求的新參數發送給分析模塊130并且所述分析模塊130將
形成用于備份拷貝被修改的Microsoft文檔的請求且將該請求發送給備份
模塊140。加密器程序的進程的文件活動的跟蹤可持續直到加密器程序的進程被
檢測模塊160所阻斷。

在這方面,基于從活動跟蹤模塊120所接收的、修改Microsoft文檔
的加密器程序的進程參數(例如,到達用于運行所述進程的應用程序的路徑、
進程描述符、被所述進程執行的操作的日志),檢測模塊160確定該進程對于文
檔的完整性的威脅等級。在一個示例性方面,通過分析被修改的文檔的內容的
不可恢復的損失的可能性來計算威脅等級。例如,文件可被不可恢復地刪除或
重命名,文件的屬性和權限可被修改,文件的內容可被加密,且由于缺乏對應
的密鑰在用戶的計算機上不存在解密的可能性等。由于從檢測模塊160的角度
來看不受信任的進程(例如,被受信任的數字簽名所簽名的系統文件等),正在
執行寫入文件和重命名文件的操作,故這些動作被檢測模塊160當作是表示對
于文檔數據的威脅。另外,在一個示例性方面,接收到的被所述進程執行的操
作的日志的分析結果(例如,用于寫入和重命名不同文件夾、包括臨時文件夾
中的文檔的許多請求)表明運行被分析的進程的加密器程序是惡意的且對用戶
的文件造成了潛在的損失。

在檢測模塊160已經對所分析的被進程修改的Microsoft文檔的內容
的不可恢復的損失的可能性做出裁定后,檢測模塊160阻斷該進程的操作(例
如,它可從存儲器中刪除該進程、停止進程的執行、隔離所述進程等),形成用
于將被所阻斷的進程修改的文檔從備份數據庫150恢復到數據存儲模塊110的
請求,且將該請求發送給備份模塊140。在這方面,接收來自檢測模塊160的請
求的備份模塊140,將被加密器程序修改的文檔從備份數據庫150恢復到數據存
儲模塊110。結果,在一個示例性方面,被加密器程序修改的文檔都沒有被損壞。

恢復修改的數據的系統和方法的另一示例為在Internet(因特網
)進程已經被注入器程序修改后恢復Internet進程。注入器程序
是惡意軟件,其將它的數據(例如,用于替換原始資源的執行代碼或者資源,
諸如圖像)插入到在系統中工作的進程的存儲區中。

在該示例中,注入器程序搜索Internet進程,之后注入器程序將其
數據以廣告橫幅圖像的形式注入到所發現的進程的存儲器內,并用這些數據替
代Internet瀏覽器中顯示的原始圖像(例如,包含在被顯示的頁面中的
諸如圖標或圖像的圖形界面元素)。當注入器程序訪問作為操作系統的內存管理
器的數據存儲模塊110時,通過用于訪問Internet的存儲區以進行改變
的請求,它執行WinAPI函數“::VirtualAllocEx”和“::WriteProcessMemory”的
調用。活動跟蹤模塊120攔截這些請求且確定它們的參數,即,哪個存儲區正
在被訪問、它準備在存儲器上執行哪些操作等。所確定的參數通過活動跟蹤模
塊120被發送給分析模塊130。活動跟蹤模塊120還攔截注入器程序的進程參數,
諸如進程標識符、被進程執行的操作的日志等,且將這些進程參數發送給檢測
模塊160。

在一個示例性方面,基于所攔截的從活動跟蹤模塊120接收的進程對數據
存儲模塊110的請求的參數,分析模塊130計算下面的準則,例如:

●被請求的存儲區屬于哪個應用程序(例如,在本示例中,Internet
);

●操作存儲器的方法(例如,用于通過發送標簽“MEM_COMMIT”、
“MEM_RESERVE”、“PAGE_EXECUTE_READWRITE”而寫入到存儲器的請
求);和

●存儲器修改參數(例如,將發生寫入的存儲器地址、從其將進行寫入的存
儲器地址、將被寫入的數據大小等)。

在一個示例性方面,分析模塊130然后可基于確定用于執行備份數據拷貝
的需求的規則而執行所計算的準則的分析:

●根據請求訪問其存儲器的進程的類型,分析模塊130確定用于其進一步處
理的需求以及文件的完整性對于操作系統的工作是否重要(例如,操作系統的
應用程序等);

●根據操作存儲器的方法,分析模塊130確定所述操作是否可導致數據的修
改;

●根據操作存儲器的類型,分析模塊130確定操作存儲器是否將導致其修改;

●根據正在被寫入的數據,分析模塊130確定這是否將導致該進程的存儲器
中的數據的修改,或者數據是否將不受影響。

如果至少一個規則已經被所計算的準則觸發(例如,根據進程的類型或者
針對該進程的操作類型,即在本示例中這意味著注入器程序將寫入到Internet
進程的存儲器),則分析模塊130形成用于將Internet Explorer進程的所
選定的存儲區備份拷貝到備份數據庫150的請求且將該請求發送給備份模塊
140。已經接收到來自分析模塊130的請求的備份模塊140,執行將被注入器程
序修改的Internet進程的存儲區從數據存儲模塊110備份拷貝到備份數
據庫150。

在一個示例性方面,基于從活動跟蹤模塊120接收到的、修改Internet
的存儲區的注入器程序的進程參數(例如到達用于運行進程的應用程
序的路徑、進程描述符、被進程執行的操作的日志等),檢測模塊160確定進程
對于存在于被該進程修改的存儲區內的數據的完整性的威脅等級。威脅等級通
過分析被進程修改的存儲區的內容的不可恢復的損失的可能性來計算。由于所
述進程執行對另一進程的存儲區進行寫入的操作,故此類動作被檢測模塊160
識別成構成對于Internet Explorer進程的數據的威脅。另外,所接收到的被進程
(許多用于寫入外來進程的請求)執行的操作的日志的分析結果表明,運行所
分析的進程的注入器程序是惡意的且對用戶數據帶來潛在損壞。

在檢測模塊160已經對所分析的被進程修改的區域中存在的數據的不可恢
復的損失的可能性做出裁定后,檢測模塊160阻斷該進程的操作(例如,它從
存儲器中刪除進程、停止進程的執行、隔離進程等),形成用于將被阻斷的進程
修改的進程的數據從備份數據庫150恢復到數據存儲模塊110的請求且將該請
求發送至備份模塊140。

在這方面,接收來自檢測模塊160的請求的備份模塊140,將被注入器程序
修改的數據從備份數據庫150恢復到數據存儲模塊110。結果,被注入器程序修
改的Internet進程文檔沒有被損壞。

圖2示出了根據示例性方面的恢復修改數據的示例性方法的流程圖。如總
體所示,所述方法包括攔截修改數據的請求(步驟210)、確定所攔截的請求的
參數(步驟220)、執行數據的備份拷貝(步驟230)、確定進程參數(步驟240)、
分析進程參數(步驟250)、阻斷進程的操作(步驟260)、和恢復被修改的數據
(步驟270)。

更具體地,根據示例性方面,在步驟210,活動跟蹤模塊120攔截至少一個
來自進程的數據修改的請求。如上所述,例如,其修改請求已經被攔截的數據
可是文件和/或存儲器地址。另外,進程的數據修改請求可為:例如操作系統的
API函數、尤其是用于Microsoft的WinAPI函數和/或操作系統內核函
數。

在步驟220,分析模塊130確定所攔截的請求的參數。根據示例性方面,所
攔截的請求的參數可例如為唯一數據標識符、操作數據的方法、對數據進行操
作的類型和數據修改的參數。

接下來,在步驟230,作為對于所攔截的請求確定的參數的分析的結果,備
份模塊140將數據備份拷貝到備份數據庫150。所攔截的請求的參數的分析通過
確定數據修改的可能性來進行(例如,打開具有寫入權限的文件、調用刪除文
件的函數等)。

在步驟240,分析模塊130確定發送用于修改數據的請求的進程的參數。該
進程參數可為例如到達運行該進程的應用程序的路徑、進程描述符、通過該進
程執行的操作的日志。

接下來,在步驟250,使用規則分析進程的參數,以確定進程對于被該進程
修改的數據的完整性的威脅等級。在一個方面,步驟210到步驟250可被重復,
至少直到進程的操作在步驟260被阻斷。

在一個示例性方面,用于確定進程對于被修改的數據的完整性的威脅等級
的規則可測試被所述進程修改的數據的不可恢復的損失的可能性,即,例如在
數據不能夠被解密的情況下的數據加密(例如,由于不能夠獲得所需的解密密
鑰)、數據覆蓋(即,寫入新的數據替代舊的數據,而不能夠恢復舊的數據)、
以及刪除數據。

在步驟260,基于在步驟250中執行的分析的結果,可阻斷進程的操作。在
一個示例性方面,進程的操作可例如通過從存儲器中刪除進程、停止進程的執
行、以及隔離運行進程的文件來阻斷。最后,在步驟270,被進程修改的數據從
備份數據庫150中恢復。

接下來,提供了一種用于基于上文概括的原理來恢復修改數據的方法,例
如在圖像文件(例如,“*.jpeg”、“*.GIFf”等)的名稱已經被重命名且對文件的訪
問權限已經被勒索程序改變后,使用這些圖像文件的恢復來恢復修改數據。如
上所述,勒索程序是惡意軟件,其通過重命名文件、改變在文件系統中的位置、
改變訪問權限等來限制訪問文件,諸如圖像、視頻以及其他,并且惡意軟件通
過向特定的程序付費而向用戶提供用于恢復被更改的文件的機會。

根據示例,勒索程序在感染的計算機的硬盤上搜索圖像文件,在搜索后,
其改變圖像文件在文件系統中的位置、還改變訪問權限,從而使得不具有管理
者權限的用戶不能夠訪問文件。在步驟210,當勒索程序發送用于修改被處理的
圖像文件的請求時,包括調用WinAPI函數“::MoveFile”和
“::SetNamedSecurityInfo”,所述請求被攔截。在該請求已經被攔截后,在步驟220,
確定請求的參數。在該示例中,請求參數為文件的舊路徑和新路徑、文件類型
(結構“SE_OBJECT_TYPE”)、安全性信息(結構“SECURITY_INFORMATION”)
等。由于請求目的在于改變文件的參數,因此在步驟230,將被改變的參數備份
拷貝到備份數據庫150。接下來,在步驟240,確定被勒索程序運行的進程的參
數,諸如進程標識符、被進程執行的操作的日志等。在步驟250,分析被勒索程
序運行的進程的參數。由于從檢測模塊160的角度來看不受信任的進程執行步
驟250(例如,被受信任的數字簽名所簽名的系統文件等),所接收到的被進程
執行的操作的日志的分析結果,諸如許多用于改變在不同的文件夾中的圖像文
件(包括臨時圖像文件)的請求,表明運行被分析的進程的勒索程序是惡意的
且對用戶的文件造成潛在的損失(即,上文所述的動作的特征在于惡意程序且
不是受信任的應用程序)。在勒索程序已經被識別為惡意的之后,在步驟260,
阻斷勒索程序的操作。為此,進程被停止且從存儲器中刪除,此后,勒索程序
的文件被隔離以避免隨后的惡意程序的反復調用。在這之后,在步驟270,恢復
被勒索程序改變的文件屬性和訪問權限。作為進程的結果,被勒索程序更改的
圖像文件都沒有被損壞。

圖3示出了可在其上實現所公開的系統和方法的通用計算機系統(其可以
是個人計算機或服務器)的示例。該計算機系統20包括中央處理單元21、系統
存儲器22和連接各種系統組件的系統總線23,各種系統組件包括與中央處理單
元21關聯的存儲器。系統總線23像從現有技術已知的任何總線結構一樣來實
現,依次包括總線存儲器或總線存儲器控制器、外圍總線和本地總線,系統總
線23能夠與任何其它的總線架構交互。系統存儲器包括只讀存儲器(ROM)24
和隨機存取存儲器(random-access memory,RAM)25。基本輸入/輸出系統(basic
input/output system,BIOS)26包括確保在個人計算機20的元件之間的信息傳
輸的基本過程,例如在使用ROM 24加載操作系統時的那些基本過程。

個人計算機20依次包括用于數據的讀取和寫入的硬盤27、用于在可移動磁
盤29上讀取和寫入的磁盤驅動器28和用于在可移動光盤31(例如CD-ROM、
DVD-ROM和其它的光學信息介質)上讀取和寫入的光盤驅動器30。硬盤27、
磁盤驅動器28和光盤驅動器30分別通過硬盤接口32、磁盤接口33和光盤驅動
器接口34而連接到系統總線23。驅動器和對應的計算機信息介質為用于存儲個
人計算機20的計算機指令、數據結構、程序模塊和其它數據的電源獨立的模塊。

本發明提供了使用硬盤27、可移動磁盤29和可移動光盤31的系統的實現
方式,但是應當理解的是,可以采用能夠存儲計算機可讀形式的數據的其它類
型的計算機信息介質56(固態驅動器、閃存卡、數字盤、RAM等等),計算機
信息介質56經由控制器55連接到系統總線23。

計算機20具有文件系統36,其中存儲所記錄的操作系統35,并且還具有
額外的程序應用37、其它程序模塊38和程序數據39。用戶能夠通過使用輸入
設備(鍵盤40、鼠標42)將命令和信息輸入到個人計算機20中。可以使用其
它的輸入設備(未示出):麥克風、操縱桿、游戲控制器、掃描器等等。這種輸
入設備通常通過串行端口46插入到計算機系統20中,串行端口46則連接到系
統總線,但是它們可以以其它的方式連接,例如借助并行端口、游戲端口或通
用串行總線(universal serial bus,USB)進行連接。監控器47或其它類型的顯
示設備也可以通過接口(例如視頻適配器48)連接到系統總線23。除了監控器
47,個人計算機可以還裝備有其它的外圍輸出設備(未示出),例如揚聲器、打
印機等等。

個人計算機20能夠使用與一個或多個遠程計算機49的網絡連接在網絡環
境中操作。一個或多個遠程計算機49也是個人計算機或服務器,其具有在描述
個人計算機20的性質時(如圖3所示)大多數或全部上述元件。其它的設備也
可以存在于計算機網絡中,例如路由器、網站、對等設備或其它的網絡節點。

網絡連接可以形成局域計算機網絡(local-area computer network,LAN)50
(諸如有線網絡和/或無線網絡)和廣域計算機網絡(wide-area computer network,
WAN)。這種網絡用在企業計算機網絡和公司內部網絡中,并且它們通常有權訪
問因特網。在LAN或WAN網絡中,個人計算機20通過網絡適配器或網絡接口
51連接到局域網50。當使用網絡時,個人計算機20可以采用調制解調器54或
其它的用于提供與廣域計算機網絡(例如因特網)的通信的模塊。調制解調器
54是內部設備或外部設備,通過串行端口46連接到系統總線23。應當注意的
是,網絡連接僅僅是示例并且不需要描述網絡的準確配置,即實際上具有通過
技術通信模塊(諸如藍牙)建立一個計算機到另一個計算機的連接的其它方式。

在各個方面中,本文所描述的系統和方法可以在硬件、軟件、固件或它們
的任何組合中實施。如果在軟件中實施,則上述方法可以被存儲為在非易失性
計算機可讀介質上的一個或多個指令或代碼。計算機可讀介質包括數據存儲器。
以示例性而非限制性的方式,這種計算機可讀介質可以包括RAM、ROM、
EEPROM、CD-ROM、閃存或其它類型的電存儲介質、磁存儲介質或光存儲介
質、或任何其它介質,所述任何其它介質可用來攜帶或存儲所期望的指令或數
據結構形式的程序代碼并可以被通用計算機的處理器訪問。

在各個方面中,本發明中所描述的系統和方法可以按照模塊來處理。本文
所使用的術語“模塊”指的是現實世界的設備、組件、或使用硬件(例如通過
專用集成電路(ASIC)或現場可編程門陣列(field-programmable gate array,
FPGA))實施的組件的布置、或硬件和軟件的組合,例如通過微處理器系統和
實現模塊功能的指令組,該指令組在被執行時將微處理器系統轉換成專用設備。
一個模塊還可以被實施為兩個模塊的組合,其中單獨地通過硬件促進某些功能,
通過硬件和軟件的組合促進其它功能。在某些實現方式中,模塊的至少一部分
可以在通用計算機(例如上文在圖3中更詳細描述的通用計算機)的處理器上
執行,以及在某些情況下,模塊的全部可以在通用計算機的處理器上執行。因
此,每一個模塊可以以各種適合的配置來實現,而不應受限于本文所列舉的任
何特定的實現方式。

為了清楚起見,本文沒有公開各個方面的所有常用特征。應當領會的是,
在本發明的任何實際的實現方式的開發中,必須做出許多特定實現方式的決定,
以便實現開發者的特定目標,并且這些特定目標將對于不同的實現方式和不同
的開發者不同。應當理解的是,這種開發努力可能是復雜且費時的,但對于了
解本發明的優點的本領域的普通技術人員來說仍然是工程的例行任務。

此外,應當理解的是,本文所使用的措辭或術語出于描述而非限制的目的,
從而本說明書的術語或措辭應當由本領域技術人員根據本文所提出的教導和指
導結合相關領域的技術人員的知識來解釋。此外,不旨在將本說明書或權利要
求中的任何術語歸于不常見的或特定的含義,除非明確如此闡述。

本文所公開的各個方面包括本文以說明性方式所引用的已知模塊的現在和
未來已知的等同物。此外,盡管已經示出并描述了各個方面和應用,但是對于
了解本發明的優點的本領域技術人員將顯而易見的是,許多比上面所提及的更
多的修改是可行的,而不脫離本文所公開的發明構思。

關 鍵 詞:
用于 恢復 修改 數據 系統 方法
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:用于恢復修改的數據的系統和方法.pdf
鏈接地址:http://www.rgyfuv.icu/p-6100761.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
山东11选5中奖结果走势图