首页
社区
课程
招聘
[原创]探秘Wininit.ini[高手勿进]
发表于: 2007-11-8 19:46 6199

[原创]探秘Wininit.ini[高手勿进]

2007-11-8 19:46
6199
这篇文章没什么技术性..只是偶尔我遇到点东西.跟不知道的人分享下``我估计大部分都知道这个秘密= =||

由于一直裸笨..前几天中了个病毒`.手工杀毒.到网上查这个病毒.发现这个病毒用到了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文件工作机
  众所周知,在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文件。顺便提一句,在安装Windows的最后阶段,就是利用Wininit.ini文件来清除和更名被安装程序SETUP自身使用的文件。

也就是说Wininit.ini是一种windows自带的一种功能.由于一般情况下都很少见到.因为在你的系统文件夹下这个文件是不会存在的.因为在windows启动完成后.这个文件已经被windows自动删除.如果你在你的系统中见到了这个文件夹.那你就要小心了.也许是病毒在搞鬼.

上面删除的用法已经说明的非常详细了.但是我还有点疑问.我继续百度后.发现了这些..

  [RENAME]
  DIRNUL=C:\SMENU
  上面的项目会在二次启动后删除C:\SMENU目录和它的下级目录与文件.但是这个项目是危险的,如果是DIRNUL=C:\或DIRNUL=D:\
  会怎样呢...

  [DIRNUL]
  C:\SMENU=1
  会在二次启动后删除C:\SMENU目录和它的下级目录与文件.

我比较胆小.没敢试试
  [DIRNUL]
  C:\=1

但是我试了其他的目录.都是不可以实现的.难道是XP下为了保证系统的安全,删除了这个删除文件夹功能的原因??我不得而知了.

但是删除文件是可以的.所以用这个东西写了这个东东^_^..



下载地址:http://www.jctl.com.cn/jessica/myproject/Jdeleter.rar

另外.大家不要对这个软件的名字做任何评论.谢谢合作

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 257
活跃值: (56)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
不错,支持一下!希望碰到真正的木马这个能用!
2007-11-10 17:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
嗯,不错,支持一下
2007-11-11 11:15
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
木马虽然能用,但是要重启才起作用吧?这个就比较讨厌了
2007-12-5 13:44
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
楼主软件界面是用怎么实现的?这么漂亮?
2007-12-28 15:13
0
游客
登录 | 注册 方可回帖
返回
//