基本介紹
Windows的註冊表實質上是一個龐大的資料庫,它存儲這下面這些內容:軟、硬體的有關配置和狀態信息,應用程式和
資源管理器外殼的初始條件、首選項和卸載數據;計算機的整個系統的設定和各種許可,
檔案擴展名與應用程式的關聯,硬體的描述、狀態和屬性;計算機性能紀錄和底層的系統狀態信息,以及各類其他數據。
設定信息
系統設定和預設用戶配置數據一般存放在系統\
系統資料夾\SYSTEM32\CONFIG資料夾下的6個檔案(屬性均為隱藏,且無擴展名),“DEFAULT”、“SAM”、“SECURITY”、“SOFTWARE”、“USERDIFF”和“SYSTEM”中,而用戶的配置信息存放在系統所在磁碟的\Documents and Setting\資料夾,包括ntuser.dat、ntuser.ini、ntuser.dat.log。
Regedit.exe在windows作業系統的安裝過程中自動安裝並且與Windows存儲在同一個資料夾中。
分支作用
修改註冊表使XP避免“黑屏”
運行輸入“regedit”回車,打開註冊表,定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windowsNT\CurrentVersion\winl-ogon\Notify\wgaLogon分支,將一個名為“wgaLogon”刪除,重新啟動電腦。再把C:\windows\system32中的“
wgatray.exe”刪除,在
系統盤搜尋查找,在別的資料夾中如還有,刪除即可。
HKEY_CURRENT_USER包含當前登錄用戶的配置信息的根目錄。用戶資料夾、螢幕顏色和“控制臺”設定存儲在此處。該信息被稱為
用戶配置檔案。
HKEY_USERS包含計算機上所有用戶的配置檔案的根目錄。HKEY_CURRENT_USER是HKEY_USERS的子項。
HKEY_LOCAL_MACHINE包含針對該計算機(對於任何用戶)的配置信息。
HKEY_CLASSES_ROOT是HKEY_LOCAL_MACHINE\Software的子項。此處存儲的信息可以確保當使用Windows
資源管理器打開檔案時,將打開正確的程式。
HKEY_CURRENT_CONFIG包含本地計算機在系統啟動時所用的
硬體配置檔案信息。
註冊表中定義和使用的數據類型有:
REG_BINARY未處理的二進制數據。多數硬體組件信息都以二進制數據存儲,而以十六進制格式顯示在
註冊表編輯器中。
REG_DWORD數據由4位元組長的數表示。許多設備
驅動程式和服務的參數是這種類型並在註冊表編輯器中以二進制、十六進制或十進制的格式顯示。
REG_EXPAND_SZ長度可變的數據串。該數據類型包含在程式或服務使用該數據時確定的變數。
REG_MULTI_SZ多重字元串。其中包含格式可被用戶讀取的列表或多值的值通常為該類型。項用空格、逗號或其他標記分開。
REG_SZ固定長度的文本串。
REG_FULL_RESOURCE_DESCRIPTOR設計用來存儲硬體元件或
驅動程式的資源列表的一列嵌套數組。
要打開“
註冊表編輯器”,依次單擊“開始”、“運行”,鍵入regedit,然後單擊“確定”即可
1:編輯註冊表不當可能會嚴重損壞系統。在更改註冊表之前,應備份計算機上任何有價值的數據
2:在更改註冊表之前,建立備份副本。可以使用程式(如“備份”)來備份註冊表。更改註冊表之後,請創建“自動系統恢復” (ASR) 磁碟。
3:不要使用其他版本的Windows或Windows NT作業系統的註冊表來替換Windows註冊表。
4:使用工具和程式而不是註冊表編輯器來編輯註冊表。編輯註冊表不當可能會嚴重損壞您的系統。應該使用可提供更安全的編輯註冊表方法的工具和程式。
5:請不要讓註冊表編輯器在無人值守的狀態下運行。打開32位版本的註冊表編輯器,可以單擊“開始”,單擊“運行”,鍵入“%systemroot%\syswow32\regedit”,然後單擊“確定”。
防毒
regedit和資源管理器很類似,也提供了類似目錄和檔案方式的界面。其中系統把每一種清單保存在不同的目錄下面,而具體清單的信息就是那些“檔案”了。那么系統每次啟動時載入的程式清單在哪裡呢?其中一個清單你可以根據下面的這個路徑找到:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run你可能會看到這樣的畫面:其中最左邊一欄是程式的名字,當然他們作用不大,而最右邊的就是程式的路徑了。系統啟動後就會按照這張清單一次載入檔案。不過很不巧的時,其實病毒已經隱藏在了上面這個清單中了。或許你已經有所發現。你也可以看看自己註冊表中的那些條目。就上面這張圖中,下面這些路徑下的檔案都可能是病毒:AutoUpdate c:\windows\winsys.exe Explorer c:\windows\system32\
explorer.exe(默認)c:\commond. com首先,這裡只能說是可能是病毒,並不能馬上確定,但是為什麼說這些檔案的嫌疑最大呢?下面給出一些規則,在載入清單中大部分程式都是系統中安裝的應用程式,而很少是系統自身的組件。由第一條得出,系統組件幾乎不會出現在清單中有第一條得出,清單中的程式並不是系統所必須的,也就是說即使不去載入他們,你的windows還是照樣可以運行。正常情況下,(默認)這個條目應該是空白的病毒喜歡隱藏:多藏於windows目錄之下或者是很簡單的路徑格式:如C:\virus.com。這樣有利於其傳播為了偽裝自己,大多是病毒喜歡將自己的名字偽造成系統中的一些組件名所以對於第一次嘗試
手工防毒的人來說,如果很難確定哪些是病毒的話不妨刪除所有的清單條目(注意,那個叫做“默認”的條目是無法清除的,但你可以把它的內容刪除)那么為什麼那些檔案可能為病毒呢?首先我們看“AutoUpdate ”這個檔案。第一從他的名字上,很多人會以為他是windows的自動更新程式。而且它的途徑:windows系統目錄下,又叫做winsys.exe(暗示你它是windows system的一部分),似乎他是個正常的程式?如果你這么想就是中了圈套。按照上面給出的第2條規則,如果真的是“自動更新程式”,他不太可能出現在這個清單中(真正的自動更新程式是一個系統服務,具體會在今後的文章中論述)。那么這個傢伙就非常可疑了其次是explorer。或許你也會覺得這很正常,造成這種想法的原因可能是他正好是windows資源管理器的名字。而且細心的你可能發現每次系統開機的確會有個叫做
explorer.exe的檔案在運行(其實它是在其他地方載入的,今後的文章中你會知道,explorer.exe叫做系統外殼:shell,除了資源管理器的功能外,你的桌面也是他“變”成的)。但是真正的資源管理器是位於windows\目錄下而非windows\system32\下。並且根據第二條規則,自然也就有很大嫌疑了那么這個叫做(默認)項目為什麼也會是病毒呢?其實註冊表的每個目錄下都會有一個(默認)的項目。它是註冊表自動產生的。而根據規則第四條,這裡的“默認”條目一般是留空的,所以馬上就能確定c:\commond. com有很大嫌疑了。並且很搞笑的是,這個程式的作者似乎想和以前DOS系統的命令行提示程式command. com取同樣名字來欺騙我們。但是,他拼錯了……事實上,上面提到的的確就是病毒,不過這裡只是我為了演示所以加進去的,但現實中如果你真看到了這樣的項目,那么別猶豫,他們99%就是病毒或惡意程式!接下來要做的就是先找到那些檔案的位置,然後將他們清除即可,最後再刪除註冊表中的那些項目。不過為了預防萬一,往往刪除前我們還需要一個確認的過程。而且很糟糕的時,windows一項混亂的作風使得啟動程式的清單並不是只有這一個,並且還有一類叫做系統服務的程式,他們也會自我啟動。所以在下回中,我將告訴你所有的啟動清單的地方,同時介紹系統服務的一些事情。不過60%-70%的病毒都是在上述的清單中加入自己的作案痕跡的,所以今後如果懷疑自己系統中毒那么先看看這裡吧:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 。