[转载]U盘免疫原理

作者在 2008-11-07 18:42:50 发布以下内容

众所周知,autorun.inf文件是U盘病毒传播的主要途径.因此我们了解它的构造及运行机制对我们来说还是比较有用的.下面主要讲autorun.inf文件的编写规则.相对于inf文件的编写,他还是想当的简单的.

一.理解autorun.inf文件

简单的说autorun.inf文件是一种具有特定结构的必须放在驱动器根目录下的文件.它控制着双击驱动器时的自动播放选项.

二.autorun.inf文件构造

所有的autorun.inf文件都具有[autorun]节,这是自动运行标识符.不同的机型具有不用的自动运行标识符.

[autorun]是针对PC机(机型为386或为更高)的自动运行标识符.

[autorun.mips]是针对MIPS公司的MIPS系列机型.

[autorun.alpha]是针对DEC公司的alpha系列机型.

[autorun.ppc]是针对apple公司的Power PC系列机型.

此外,还有[DeviceInstall]节,这个仅在XP系统下使用,可以用它来指定硬件向导进行递归搜索时的子目录.

三.autorun.inf文件的编写

1.自动播放.

若想在驱动器右键生成"自动播放"菜单项,点击时可以自动运行.可分为以下两种情况:

(1).shellexecute=*.*或[path\]*.*,此种方式可以在所有的驱动器上生成"自动播放"菜单项.双击时自动运行"="后的文件.此时"="后可以为任意扩展名的文件.

(2).open=*.exe,*.bat,*.com,此种方式仅可以在光盘驱动器上生成"自动播放"菜单项."="后的文件必须是exe bat com

2.自定义驱动器图标

格式: icon=[path\]*.ico,*.bmp或是[path\]*.exe[,0,1,2...]*.dll[,0,1,2...] 注意path路径必须是本驱动器的路径,即ico bmp exe dll 必是在本驱动器内.

3.自定义卷标

格式: label=字符串,这个简单.不赘述.

4.添加右键菜单

格式: shell\n=名称

shell\n\command=命令

两者合成:shell\名称\command=命令

[说明]"shell"指菜单,"n"可以为任意字符串,"名称"即你想要的右键菜单名称.命令即你在单击该菜单项时执行的命令.

下面讲讲防治的方法:

根据windows 同一目录下不能共存两个或两个以上文件(夹)的方法,我们可以在U盘目录下,手动创建一个名为autorun,inf的文件.

若是我们新建的是一个文件,即autorun,inf文件的话,病毒文件完全可以覆盖,我们就达不了病毒防治的目的.因而我们应该新建一个名为autorun.inf的文件夹.下面给出一个批处理代码,把它保存为bat文件,在U盘的根目录下运行即可:

md autorun.inf

cd autorun.inf

md prn\

md pig..\

cd\

attrib +s +h autorun.inf

上面即是.

可以建文件夹,命名:autorun.inf ,文件夹内可以什么都不放,也不需要设置成只读和存档

redice注:网上U盘免疫的工具有很多,知道原理了,稍后我也写个。

Public Sub MakeAutorun()
    Dim driverpath As String
    Dim fso As New FileSystemObject
    Dim driver As Drive
    Dim cmd As String
    For Each driver In fso.Drives
        If driver.IsReady Then
           If driver.DriveType = Fixed Or Removable Then
              driverpath = driver.Path
              If Right(driverpath, 1) <> "\" Then driverpath = driverpath & "\"
              cmd = "cmd.exe /c "
              cmd = cmd & "md " & driverpath & "autorun.inf & "
              cmd = cmd & "md " & driverpath & "autorun.inf\hello\ & "
              cmd = cmd & "md " & driverpath & "autorun.inf\redice..\ & "
              cmd = cmd & "attrib +r +s +h " & driverpath & "autorun.inf"
              Shell cmd, vbHide
              DoEvents
           End If
        End If
    Next
    Set fso = Nothing
    MsgBox "U盘免疫设置完成!", 0, "报告"
End Sub


默认分类 | 阅读 5844 次
文章评论,共0条
游客请输入验证码
浏览585100次