国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      Windows系統(tǒng)注冊表保護(hù)方法

      文檔序號:6425841閱讀:599來源:國知局
      專利名稱:Windows系統(tǒng)注冊表保護(hù)方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,特別涉及一種Windows系統(tǒng)注冊表保護(hù)方法。
      背景技術(shù)
      注冊表是Windows系統(tǒng)中的一個重要的數(shù)據(jù)庫,用于存儲系統(tǒng)和應(yīng)用程序的設(shè)置信息。注冊表中存儲的信息與系統(tǒng)和應(yīng)用程序的設(shè)置有著密切的關(guān)系,一旦注冊表被篡改或破壞,很可能會造成系統(tǒng)和程序的異常,甚至導(dǎo)致系統(tǒng)崩潰難以修復(fù)。由于以上原因,我們需要采取一些手段來保護(hù)某些注冊表鍵值不被惡意程序篡改或破壞。現(xiàn)有的注冊表保護(hù)方式一般是對注冊表進(jìn)行備份,一旦出現(xiàn)問題再行恢復(fù)。或者編寫一些應(yīng)用程序,不停的查詢某些鍵值的狀態(tài),一旦與原值不符,則將其修正。采用類似以上的手段來保護(hù)注冊表有如下幾個問題1、采用定期備份方式,備份的時機(jī)不好掌握。通常用戶不知道什么時候注冊表會發(fā)生變化,應(yīng)該備份。如果沒有及時備份,則可能有部分更新會被丟失;2、恢復(fù)注冊表存在風(fēng)險。在恢復(fù)注冊表的時候,此時系統(tǒng)或應(yīng)用程序可能已經(jīng)發(fā)生變化,如果進(jìn)行整體恢復(fù)可能會造成程序或系統(tǒng)異常;3、有些問題可能導(dǎo)致無法恢復(fù)。 一些注冊表鍵值可能會關(guān)系到系統(tǒng)的正常運(yùn)行,一旦被篡改或破壞,可能造成系統(tǒng)不可用, 對普通用戶來說難以恢復(fù);4、若采用定時查詢的方式也必須保留一份正常數(shù)據(jù)的備份,某些問題和定期備份方式類似;5、定時查詢方式如果間隔比較長,則無法做到短時間內(nèi)恢復(fù)相應(yīng)鍵值,此時有可能已經(jīng)造成了一定程度的破壞;如果時間間隔較短,則可能耗費(fèi)較多的系統(tǒng)資源;6、無論是備份恢復(fù)方式還是定時查詢方式都不夠靈活,如果用戶自己想修改注冊表,或某些操作確認(rèn)是合法的,則需要關(guān)閉定時程序,或另作備份。

      發(fā)明內(nèi)容
      (一 )要解決的技術(shù)問題本發(fā)明要解決的技術(shù)問題是如何提供一種Windows系統(tǒng)注冊表保護(hù)方法,以便在注冊表被篡改或者破壞之前對相應(yīng)的注冊表操作進(jìn)行阻止。( 二 )技術(shù)方案為解決上述技術(shù)問題,本發(fā)明提供一種Windows系統(tǒng)注冊表保護(hù)方法,包括步驟S100 將注冊表操作函數(shù)的地址作為原始地址保存,使用Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址;S200 當(dāng)任一程序進(jìn)行注冊表操作時,所述Hook函數(shù)獲取相應(yīng)的操作信息,并將所述操作信息發(fā)送給應(yīng)用層進(jìn)行判斷,如果判斷結(jié)果顯示所述注冊表操作被允許,根據(jù)所述原始地址調(diào)用所述注冊表操作函數(shù)完成所述注冊表操作,否則,禁止所述注冊表操作。優(yōu)選地,所述步驟SlOO包括步驟SlOl 找到 SSDT (System Services Descriptor Table,系統(tǒng)服務(wù)描述符表)表基址,通過偏移量找到所述注冊表操作函數(shù)的地址,將所述地址作為所述原始地址保存;S102 在所述SSDT表中,使用所述Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址。優(yōu)選地,所述注冊表操作函數(shù)包括函數(shù)ZwQueryValueKey、ZwSetValueKey和 ZwDeleteValueKey0優(yōu)選地,所述注冊表操作包括對注冊表進(jìn)行查詢、修改或者刪除操作。優(yōu)選地,所述操作信息包括所述注冊表操作的注冊表值路徑、進(jìn)程路徑和操作類型。優(yōu)選地,在所述步驟S200之后,還包括步驟S300 在SSDT表中,將所述注冊表操作函數(shù)的地址恢復(fù)為所述原始地址。優(yōu)選地,在所述步驟S200中,將所述操作信息發(fā)送給應(yīng)用層后,應(yīng)用層根據(jù)操作策略表中包括的注冊表中各鍵值對不同程序的開放權(quán)限或者根據(jù)用戶指令,判斷所述注冊表操作是否被允許。(三)有益效果本發(fā)明的Windows系統(tǒng)注冊表保護(hù)方法,通過設(shè)置Hook函數(shù)對所有的注冊表操作進(jìn)行過濾,對可能會破壞注冊表的惡意程序提前禁止。相比傳統(tǒng)的先破壞后修復(fù)的處理方法,本發(fā)明方法執(zhí)行效率高,節(jié)省系統(tǒng)資源。


      圖1是本發(fā)明的實施例所述Windows系統(tǒng)注冊表保護(hù)方法的流程圖。
      具體實施例方式下面結(jié)合附圖和實施例,對本發(fā)明的具體實施方式
      作進(jìn)一步詳細(xì)描述。以下實施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。圖1是本發(fā)明的實施例所述Windows系統(tǒng)注冊表保護(hù)方法的流程圖。如圖1所示, 該方法包括步驟SlOl 找到SSDT表基址,通過偏移量找到注冊表操作函數(shù)的地址,將所述地址作為原始地址保存。所述注冊表操作函數(shù)包括函數(shù)ZwQueryValueKey、ZwktValueKey和 ZwDeleteValueKey0所述地址為所述注冊表操作函數(shù)在內(nèi)存中的地址。S102 在所述SSDT表中,使用Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址。S200 當(dāng)任一程序進(jìn)行注冊表操作時,所述Hook函數(shù)通過參數(shù)獲取相應(yīng)的操作信息,將所述操作信息發(fā)送給應(yīng)用層,應(yīng)用層根據(jù)操作策略表或者用戶指令,判斷所述注冊表操作是否應(yīng)該被允許,如果判斷結(jié)果顯示所述注冊表操作被允許,則根據(jù)所述原始地址調(diào)用所述注冊表操作函數(shù)完成所述注冊表操作,否則,禁止所述注冊表操作。所述注冊表操作包括對注冊表進(jìn)行查詢、修改或者刪除操作,所述操作信息包括所述注冊表操作的注冊表值路徑、進(jìn)程路徑和操作類型。所述操作策略表包括注冊表中各鍵值對不同程序的開放權(quán)限,其結(jié)構(gòu)大致如下 鍵值一允許操作的程序(路徑、哈希值等)-一此程序的操作權(quán)限(查詢、修改、刪除)。 該結(jié)構(gòu)中所述的三者之間的關(guān)系是一個鍵值對應(yīng)多個程序,每個程序?qū)?yīng)多種權(quán)限。所述操作信息是通過參數(shù)傳遞進(jìn)來的,不需要額外的流程進(jìn)行獲取。這和Hook 函數(shù)的特點有關(guān),Hook函數(shù)實際上就是一個自定義的和原始函數(shù)(如注冊表操作函數(shù)ZwQueryValueKey)接口相同的函數(shù),實際上原始函數(shù)在執(zhí)行相應(yīng)功能的同時也一樣需要這些參數(shù),所以Hook函數(shù)也一樣能獲取同樣的輸入?yún)?shù),即此處所說的操作信息。所述Hook 函數(shù)與所述應(yīng)用層間通過共享緩沖區(qū)或者事件通信方式進(jìn)行消息通信。當(dāng)根據(jù)用戶指令判斷所述注冊表操作是否應(yīng)該被允許時,可以彈出提示對話框,由用戶自己確定所述注冊表操作是否應(yīng)該被允許。S300 在SSDT表中,將所述注冊表操作函數(shù)的地址恢復(fù)為所述原始地址。本發(fā)明的Windows系統(tǒng)注冊表保護(hù)方法,通過設(shè)置Hook函數(shù)對所有的注冊表操作進(jìn)行過濾,對可能會破壞注冊表的惡意程序提前禁止。相比傳統(tǒng)的先破壞后修復(fù)的處理方法,本發(fā)明方法執(zhí)行效率高,節(jié)省系統(tǒng)資源。該方法還可用于控制注冊表的查詢權(quán)限,保護(hù)隱私數(shù)據(jù)。以上實施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護(hù)范圍應(yīng)由權(quán)利要求限定。
      權(quán)利要求
      1.一種Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,包括步驟5100將注冊表操作函數(shù)的地址作為原始地址保存,使用Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址;S200 當(dāng)任一程序進(jìn)行注冊表操作時,所述Hook函數(shù)獲取相應(yīng)的操作信息,并將所述操作信息發(fā)送給應(yīng)用層進(jìn)行判斷,如果判斷結(jié)果顯示所述注冊表操作被允許,根據(jù)所述原始地址調(diào)用所述注冊表操作函數(shù)完成所述注冊表操作,否則,禁止所述注冊表操作。
      2.如權(quán)利要求1所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,所述步驟SlOO包括步驟5101找到SSDT表基址,通過偏移量找到所述注冊表操作函數(shù)的地址,將所述地址作為所述原始地址保存;5102在所述SSDT表中,使用所述Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址。
      3.如權(quán)利要求2所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,所述注冊表操作函數(shù)包括函數(shù) ZwQueryValueKey、ZwSetValueKey 禾口 ZwDeleteValueKey0
      4.如權(quán)利要求1所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,所述注冊表操作包括對注冊表進(jìn)行查詢、修改或者刪除操作。
      5.如權(quán)利要求1所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,所述操作信息包括所述注冊表操作的注冊表值路徑、進(jìn)程路徑和操作類型。
      6.如權(quán)利要求1所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,在所述步驟S200 之后,還包括步驟S300 在SSDT表中,將所述注冊表操作函數(shù)的地址恢復(fù)為所述原始地址。
      7.如權(quán)利要求1所述的Windows系統(tǒng)注冊表保護(hù)方法,其特征在于,在所述步驟S200 中,將所述操作信息發(fā)送給應(yīng)用層后,應(yīng)用層根據(jù)操作策略表中包括的注冊表中各鍵值對不同程序的開放權(quán)限或者根據(jù)用戶指令,判斷所述注冊表操作是否被允許。
      全文摘要
      本發(fā)明公開了一種Windows系統(tǒng)注冊表保護(hù)方法,涉及數(shù)據(jù)庫技術(shù)領(lǐng)域。該方法包括步驟將注冊表操作函數(shù)的地址作為原始地址保存,使用Hook函數(shù)的地址替換所述注冊表操作函數(shù)的地址;當(dāng)任一程序進(jìn)行注冊表操作時,所述Hook函數(shù)獲取相應(yīng)的操作信息,并將所述操作信息發(fā)送給應(yīng)用層進(jìn)行判斷,如果判斷結(jié)果顯示所述注冊表操作被允許,根據(jù)所述原始地址調(diào)用所述注冊表操作函數(shù)完成所述注冊表操作,否則,禁止所述注冊表操作。本發(fā)明的Windows系統(tǒng)注冊表保護(hù)方法,通過設(shè)置Hook函數(shù)對所有的注冊表操作進(jìn)行過濾,對可能會破壞注冊表的惡意程序提前禁止。
      文檔編號G06F21/22GK102214287SQ20111015364
      公開日2011年10月12日 申請日期2011年6月9日 優(yōu)先權(quán)日2011年6月9日
      發(fā)明者萬雪松, 于曉軍, 趙辰清 申請人:北京思創(chuàng)銀聯(lián)科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1