Board logo

标题: [原创]关于autorun.inf的小问题(不知道让不让问)。 [打印本页]

作者: CharismA     时间: 2006-12-6 07:03    标题: [原创]关于autorun.inf的小问题(不知道让不让问)。

我今天心血来潮想试试autorun的功能,只写了极简单的两句话,可是都木有成功,望各位能指正一下。谢谢先!
我的autorun的内容是:
  [autorun]
  open=e:\1.bat
1.bat的内容是:
  @echo off
  pause

我把autorun和1.bat都放在了e:\下,可是双击后根本就不起作用,问题出在哪里呢?
作者: ccwan     时间: 2006-12-6 07:08
要看你的硬盘是否允许自动运行。
事实上,大多数的硬盘根目录下并不需要AutoRun.inf文件来运行程序,可以将硬盘的AutoRun功能关闭,这样即使在硬盘根目录下有AutoRun.inf这个文件,Windows也不会去运行其中指定的程序,从而可以达到防止黑客利用AutoRun.inf文件入侵的目的。


详细的请看这里http://www.linuxmine.com/18977.html

[ Last edited by ccwan on 2006-12-6 at 07:15 AM ]
作者: electronixtar     时间: 2006-12-6 07:17
还以为原创的什么东西呢,原来原创的是一个问题
作者: CharismA     时间: 2006-12-6 07:20
huhu~ 被骗的同志们不好意思了~
网上的方法我都基本上试过了,注册表的键值也改了(现在是247,也就是f7),可是还是不行,挠头啊!
作者: voiL     时间: 2006-12-6 11:44
autorun.inf好像不可以运行bat的吧.

转成exe就可以.
作者: ccwan     时间: 2006-12-6 21:08
楼上错了。
autorun.inf不仅可以运行bat,vbs也没有问题。这些我都做过试验。

re CharismA:

要实现硬盘的自动运行,请看下面关于关闭硬盘的自动运行的文章,反过来就能实现。(考虑到给出链接没人看,直接粘贴过来)
关闭硬盘的自动运行



  在“开始”菜单的“运行”中输入Regedit, 打开注册表编辑器,展开到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Exploer主键下,在右侧窗格中找到“NoDriveTypeAutoRun”,就是这个键决定了是否执行CDROM或硬盘的AutoRun功能。



双击“NoDriveTypeAutoRun”,默认状态下(即你没有禁止过AutoRun功能),在弹出窗 口中可以看到“NoDriveTypeAutoRun”默认键值为95,00,00,00。其中第一个值“95”是16进制值,它是所有被禁止自动运行设备的和。将“95”转为二进制就是1001 01 01,其中每位代表一个设备,Windows中不同设备会用如下数值表示:



  
  在上面所列的表中值为“0”表示设备运行,值为“1”表示该设备不运行(默认情况下,Windows禁止80h、10h、4h、01h这些设备自动运行,这些数值累加正好是16进制的95h,所以NoDriveTypeAutoRun”默认键值为95,00,00,0 0)。

  由上面的分析不难看出,在默认情况下,会自动运行的设备是DRIVE_NO_ROOT_DIR、DRIVE_FIXED、DRIVE_CDROM:、DRIVE_RAMDISK这4个保留设备,所以要禁止硬盘自动运行AutoRun.inf文件,就必须将DRIVE_FIXED的值设为1,这是因为DRIVE_FIXED代表固定的驱动器,即硬盘。这样一来,原来的1 00101 01(在表中“值”列中由下向上看)就变成了二进制的10011101,转为16进制为9D。现在,将“No Drive Type AutoRun”的键值改为9D,00,00,00,关闭注册表编辑器,重启电脑就会关闭硬盘的AutoRun功能。



怎样禁止光盘AutoRun功能?其实就是将DRIVE_CDROM设为1,这样“No Drive TypeAutoRun”键值中的第一个值就变成了10110101,也就是16进制的B5。将第一个值改为B5后关闭注册表编辑器,重启电脑后就会关闭CDROM的Autorun功能。



如果仅想禁止软件光盘的AutoRun功能,但又保留对CD音频碟的自动播放能力,这时只需将“No Drive Type AutoRun”的键值改为:BD,00,00,00即可。



如果想要恢复硬盘或光驱的AutoRun功能,进行反:方向操作即可。

事实上,大多数的硬盘根H录下并不需要AutoRun.inf文件来运行程序,因此,我们完全可以将硬盘的AutoRun功能关闭,这样即使在硬盘根目录下有AutoRun.inf这个文件,Windows也不会去运行其中指定的程序,从而可以达到防止黑客利用AutoRun.inf文件入侵的目的。
设备名称

表示设备名称含义

DKIVE_UNKNOWN
0101h
不能识别的设备类型

DRIVE_NO_ROOT_DIR
1002h
没有根目录的驱动器(Drive without root directory)

DRIVE_REMOVABLE
2104h
可移动驱动器(Removable drive)

DRIVE_FIXED
3008h
固定的驱动器(Fixed drive)

DRIVE_REMOTE
4110h
网络驱动器(Network drive)

DRIVE_CDROM
5020h
光驱(CD-ROM)

DRIVE_RAMDISK
6040h
RAM磁盘(RAM Disk)

作者: CharismA     时间: 2006-12-6 22:41
谢谢ccwan,我照上面的方法试过了,现在我那个键值的值是0x00000095,可是还是不可以啊!我同时把"NoDriveAutoRun"这个键值也修改成0x00000095了,不知道是不是这里出了问题呢?
作者: ccwan     时间: 2006-12-6 22:50
改键值后要重启机器
作者: CharismA     时间: 2006-12-6 22:56
嗯~ 我重启了~ 是不是我autorun的写法不对呢?
作者: electronixtar     时间: 2006-12-6 23:24
让AutoRun生效,很简单,改个盘符,再改回来就行了
作者: ccwan     时间: 2006-12-6 23:38
给你个例子,下载附件,放到d:下,重启后双击打开d盘,可以看到什么结果告诉我。

[ Last edited by ccwan on 2006-12-6 at 11:47 PM ]
附件 1: auto.rar (2006-12-6 23:47, 202 bytes, 下载附件所需积分 1点 ,下载次数: 119)

作者: CharismA     时间: 2006-12-7 00:09
我看到啦~ 谢谢~ 看来是我autorun内容写的不对~ 请教一下,我那种写法有什么问题呢?
作者: ccwan     时间: 2006-12-7 00:22
open=***应该是没错的,否则光盘上的自动运行是怎么实现的?因为我并不是专业研究这些,所以我也不太清楚。
不过,既然用不了,就试试其它方法嘛。
作者: CharismA     时间: 2006-12-7 00:28
嗯~ 谢谢啦~
作者: lxmxn     时间: 2006-12-7 01:23

  Re ccwan :
         
   其实你在二楼中的网址里面说的比较清楚,相对6楼的清楚些。6楼帖子里面并没有明确说明那个NoDriveAutoRun键值的十六进制形式里面每一位所对应的设备。呵呵。

作者: ccwan     时间: 2006-12-7 01:40
re lxmxn:

     我实在没有时间研究太多的东西,所以请兄能否详细说明一下?非常感谢!
作者: lxmxn     时间: 2006-12-7 01:50

  Re ccwan :

  呵呵,我也是没有时间来深究这个啊,只是昨晚把你在2楼的连接看了一下,有点启发而已。如果有时间的话,我一定写个详细点的出来,主要是如何设置那个数据。

作者: ccwan     时间: 2006-12-7 01:55
re lxmxn:

   期待兄的大作。
作者: 0401     时间: 2006-12-7 04:32
其实呢,open参数只对光盘有效,如果是在硬盘及U盘上使用,可以用shellexecute。
[autorun]
shellexecute=explorer c:
autorun.inf的内容,文件放在D盘后,杀掉explorer.exe进程,重启explorer进程后再看看双击D盘有没有效果。
作者: CharismA     时间: 2006-12-13 23:39
各位高银,现在自动运行的问题解决了,可是当我把autorun从根本目录下删除后,硬盘还是不能以双击的方式打开,请问这又是为什么呢?
作者: hxuan999     时间: 2006-12-13 23:46
再重启explorer进程.
作者: CharismA     时间: 2006-12-13 23:48
问题解决了~~  谢谢谢谢~~
作者: yjhyxing     时间: 2007-3-13 01:49
硬盘根目录下的AutoRun.inf文件里放置启动文件,但怎么也不能运行程序。可是我没有关闭自动播放呀,不知怎么回事?
作者: yjhyxing     时间: 2007-3-13 02:04


  Quote:
Originally posted by ccwan at 2006-12-6 10:38 AM:
给你个例子,下载附件,放到d:下,重启后双击打开d盘,可以看到什么结果告诉我。

[ Last edited by ccwan on 2006-12-6 at 11:47 PM ]

可我的组策略的停用自动播放设置为:未被设置
我试过,怎么没反应,不会自动运行那个批文件:2.bat
不知是怎么回事?
作者: caelm     时间: 2007-10-27 16:46
不错正在寻找中....
作者: zhjyes1     时间: 2007-10-29 13:54
把2文件放入E盘后,重起后.试试
作者: bad     时间: 2009-4-12 01:49
支持一下。。。。