複製鏈接
請複製以下鏈接發送給好友

Wininit.ini

鎖定
Windows的安裝程序常常調用wininit.ini程序來實現安裝程序後的刪除工作,如果有什麼病毒或木馬程序在它上面做手腳的話,可以説是非常隱蔽、非常完美的! 在系統盤的Windows目錄下,用記事本打開 (有時候是wininit.hak文件)可以看到相應的內容,我們可以在裏面添加相應的語句來達到修改系統時候程序或者是刪除程序的目的如果是文件關聯型的木馬,可以通過winint.ini來刪除被病毒感染的原始文件,也就實現了病毒可以真正隱藏自己!
外文名
Wininit.ini
用    途
安裝、卸載軟硬件程序

Wininit.ini文件描述

用過Windows 9x的人都見過如下的提示信息:
Please wait while Setup updates your configuration files.
This may take a few minutes……
這是安裝完某個軟件或者硬件的驅動程序,應安裝程序的要求重新啓動Windows後的正常現象,絕不會把它與病毒聯繫起來,本文將用事實告誡你,如果你的機器啓動時無緣無故地出現上述信息,就要趕緊去找最新的殺毒軟件了!
這時Windows在幹什麼呢?實際上它在執行Wininit.ini給出的指令,Wininit.ini是一個鮮為人知的文件,主要用於刪除、更名和更新在Windows運行時不能被施以這些操作的文件,它存在的時間很短,所以顯得有點神秘。

Wininit.iniWininit文件工作機制

一、Wininit 文件工作機制
在 Windows 中,一個可執行文件如果正在運行或某個庫文件(*. dll 、*.vxd、*.sys 等)正在被打開使用,則不能被改寫或刪除。例 如,你不可能在資源管理器中刪除 Windows 的 Explorer.exe。而在 Windows 的 GDI 界面下,有一些文件一直處於這種狀態下 ,除 Explorer.exe 外,還有顯示驅動程序庫文件、文件子系統庫文件等 。 如果我們要對這些文件進行升級,改動,就必須在 Windows 保護模 式下進行,於是 Windows 就提供了基於 Wininit.ini 文件的一個機制 來完成這個任務 ,這個機制是 ,要刪除或改寫這類文件的應用程序 , 按一定的格式把命令寫入 Wininit.ini 。Windows 在重啓時 ,將在 Windows 目錄下搜索 Wininit.ini 文件,如果找到,就遵照該文件指 令刪除、改名、更新文件,完成任務後 ,將刪除 Wininit.ini 文件本 身,繼續啓動。所以 Wininit.ini 文件中的指令只會被執行一次,列 目錄時也通常沒有它的蹤影 。

Wininit.ini文件的格式簡述

Windows 95 Resource Kit提到Wininit.ini文件有三個可能的段,但只敍述了“rename”段的用法,雖然名為“rename”,卻可實現刪除、改名、更新文件的功能。其格式為:
[rename]
……
filename1=filename2
……
行“filename1=filename2”相當於依次執行“copy filename2 filename1”及“del filename2”這兩個DOS命令。
啓動時,Windows將用filename2覆蓋filename1,再刪除filename2,這就實現了用filename2與更新filename1的目的,如果filename1不存在,實際結果是將filename2改名為filename1;如果要刪除文件,可令filename1為nul,例如:
[rename]
……
nul=filename2
……
將刪除filename2。
以上文件名都必須包含完整路徑,注意:由於Wininit.ini文件的處理是在Windows文件系統調入前,所以不支持長文件名

Wininit.ini應用

Wininit.ini的應用很多,除了經常在軟硬件的安裝程序中用到外,還有軟硬件的卸載程序中用到,比如:假設你要為自己的軟件編寫一個卸載程序,這個卸載程序本身是不可能被自己刪除的,因為它試圖刪除自身時,自身卻正在運行。為了清除卸載程序本身,你就得藉助於Wininit.ini文件。順便提一句,在安裝Windows的最後階段,就是利用Wininit.ini文件來清除和更名被安裝程序SETUP自身使用的文件。

Wininit.iniWininit.ini殺毒

在Windows平台下殺病毒,會碰到類似問題。如何清除正在運行或處於打開狀態的染毒文件中的病毒?瞭解了Wininit.ini文件的工作機制,我們可以這樣來設計殺毒軟件:在發現某個染毒文件因為正處於打開狀態或執行狀態而不能清除病毒時,可將其複製一份,並將複製品去毒。然後在Windows目錄下創建一個Wininit.ini文件(創建之前要先查查Wininiti.ini文件是否存在),建立[rename]段,加入一行:染毒文件名=複製品文件名;繼續清掃病毒,如果發現類似文件,可在[rename]下再添加一行即可,掃描完成後強烈建議用户重新啓動或乾脆強行重新啓動,以便執行Wininiti.ini完成整個清毒過程。