中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-21 21:10
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 发个对付AutoRun的P 查看 820 回复 11
楼 主 发个对付AutoRun的P 发表于 2007-11-06 06:33 ·  中国 北京 石景山区 联通
新手上路
积分 16
发帖 6
注册 2007-11-06 05:50
18年会员
UID 101837
性别 男
来自 北京
状态 离线
attrib -h -s -r C:\AutoRun.inf
del /s/q c:\autorun.inf
mkdir C:\autorun.inf\
mkdir C:\autorun.inf\autorun..\\
attrib -h -s -r d:\AutoRun.inf
del /s/q d:\autorun.inf
mkdir d:\autorun.inf\
mkdir d:\autorun.inf\autorun..\\
attrib -h -s -r e:\AutoRun.inf
del /s/q e:\autorun.inf
mkdir e:\autorun.inf\
mkdir e:\autorun.inf\autorun..\\
attrib -h -s -r f:\AutoRun.inf
del /s/q f:\autorun.inf
mkdir f:\autorun.inf\
mkdir f:\autorun.inf\autorun..\\
attrib -h -s -r g:\AutoRun.inf
del /s/q g:\autorun.inf
mkdir g:\autorun.inf\
mkdir g:\autorun.inf\autorun..\\
attrib -h -s -r h:\AutoRun.inf
del /s/q h:\autorun.inf
mkdir h:\autorun.inf\
mkdir h:\autorun.inf\autorun..\\
attrib -h -s -r i:\AutoRun.inf
del /s/q i:\autorun.inf
mkdir i:\autorun.inf\
mkdir i:\autorun.inf\autorun..\\
attrib -h -s -r j:\AutoRun.inf
del /s/q j:\autorun.inf
mkdir j:\autorun.inf\
mkdir j:\autorun.inf\autorun..\\
attrib -h -s -r k:\AutoRun.inf
del /s/q k:\autorun.inf
mkdir k:\autorun.inf\
mkdir k:\autorun.inf\autorun..\\
attrib -h -s -r l:\AutoRun.inf
del /s/q l:\autorun.inf
mkdir l:\autorun.inf\
mkdir l:\autorun.inf\autorun..\\
attrib -h -s -r m:\AutoRun.inf
del /s/q m:\autorun.inf
mkdir m:\autorun.inf\
mkdir m:\autorun.inf\autorun..\\
attrib -h -s -r n:\AutoRun.inf
del /s/q n:\autorun.inf
mkdir n:\autorun.inf\
mkdir n:\autorun.inf\autorun..\\
attrib -h -s -r o:\AutoRun.inf
del /s/q o:\autorun.inf
mkdir o:\autorun.inf\
mkdir o:\autorun.inf\autorun..\\
attrib -h -s -r p:\AutoRun.inf
del /s/q p:\autorun.inf
mkdir p:\autorun.inf\
mkdir p:\autorun.inf\autorun..\\
attrib -h -s -r q:\AutoRun.inf
del /s/q q:\autorun.inf
mkdir q:\autorun.inf\
mkdir q:\autorun.inf\autorun..\\
attrib -h -s -r r:\AutoRun.inf
del /s/q r:\autorun.inf
mkdir r:\autorun.inf\
mkdir r:\autorun.inf\autorun..\\
attrib -h -s -r s:\AutoRun.inf
del /s/q s:\autorun.inf
mkdir s:\autorun.inf\
mkdir s:\autorun.inf\autorun..\\
attrib -h -s -r t:\AutoRun.inf
del /s/q t:\autorun.inf
mkdir t:\autorun.inf\
mkdir t:\autorun.inf\autorun..\\
attrib -h -s -r u:\AutoRun.inf
del /s/q u:\autorun.inf
mkdir u:\autorun.inf\
mkdir u:\autorun.inf\autorun..\\
attrib -h -s -r v:\AutoRun.inf
del /s/q v:\autorun.inf
mkdir v:\autorun.inf\
mkdir v:\autorun.inf\autorun..\\
attrib -h -s -r w:\AutoRun.inf
del /s/q w:\autorun.inf
mkdir w:\autorun.inf\
mkdir w:\autorun.inf\autorun..\\
attrib -h -s -r x:\AutoRun.inf
del /s/q x:\autorun.inf
mkdir x:\autorun.inf\
mkdir x:\autorun.inf\autorun..\\
attrib -h -s -r y:\AutoRun.inf
del /s/q y:\autorun.inf
mkdir y:\autorun.inf\
mkdir y:\autorun.inf\autorun..\\
attrib -h -s -r z:\AutoRun.inf
del /s/q z:\autorun.inf
mkdir z:\autorun.inf\
mkdir z:\autorun.inf\autorun..\\
2 补充说明 发表于 2007-11-06 06:42 ·  中国 北京 石景山区 联通
新手上路
积分 16
发帖 6
注册 2007-11-06 05:50
18年会员
UID 101837
性别 男
来自 北京
状态 离线
现在AutoRun.inf已经成为极为流行的病毒传播方式,原因之一在于AutoRun.inf本身不是病毒,而且是一种常见的自运行方式,所以不能随便“杀”。

上面代码虽然洋洋洒洒,其实只是指向了所有盘符,核心的东西就是
attrib -h -s -r C:\AutoRun.inf
del /s/q c:\autorun.inf
mkdir C:\autorun.inf\
mkdir C:\autorun.inf\autorun..\\

attrib -h -s -r C:\AutoRun.inf 是去除AutoRun.inf的隐藏和只读属性
del /s/q c:\autorun.inf 是删除该盘符下所有AutoRun.inf
mkdir C:\autorun.inf\ 是在根目录下建立一个与自运行配置文件同名的文件夹,这样autorun.inf难以替换掉它
mkdir C:\autorun.inf\autorun..\\ 在新建的autorun.inf\目录下以DOS方式建立一个文件夹,在WINDOWS下显示的文件夹名是C:\autorun.inf\autorun.
比实际的名字少个.
3 操作错误,写半截就发了,继续 发表于 2007-11-06 06:50 ·  中国 北京 石景山区 联通
新手上路
积分 16
发帖 6
注册 2007-11-06 05:50
18年会员
UID 101837
性别 男
来自 北京
状态 离线
mkdir C:\autorun.inf\autorun..\\ 在新建的autorun.inf\目录下以DOS方式建立一个文件夹,在WINDOWS下显示的文件夹名是C:\autorun.inf\autorun.
比实际的名字少个.
这样在WINDOWS下就不能访问、修改或者删除。

我自己用着感觉还不错,很管用,大家参详参详。

虽然没有清除相关的执行文件,但是至少不会在你双击盘符的时候运行病毒了。

在这之前,可以运行记事本,到每个盘符下打开AutoRun.inf看下,指向的执行文件是什么。比如是auto.exe,清除完AutoRun.inf之后,全盘搜索auto.exe并删除,搜索注册表,将所有auto.exe的键值删除。

这样一来,问题应该算解决了90%多了吧。
4 发表于 2007-11-06 09:55 ·  中国 江西 上饶 电信
新手上路
积分 4
发帖 2
注册 2007-10-28 13:05
18年会员
UID 101013
性别 男
状态 离线
想实现你上面的批处理的功能,可以下个防U盘病毒的软件,比如超级巡警的。
但是现在病毒有点可恶的地方,它删不掉autorun.inf文件夹,但是可以改名的,可以改成别的名字,如:autoru.inf等,这样,一切防护作用都没有了。
————————十恶的病毒人!!!
5 发表于 2007-11-06 10:19 ·  中国 广东 江门 开平市 电信
初级用户
★★
积分 117
发帖 57
注册 2007-10-23 20:57
18年会员
UID 100584
性别 男
状态 离线
最简单的就是禁止自动运行
在她弯下腰的瞬间 我彷佛看见 那神秘柔和的曲线 如云雾中岭壑的蜿蜒
6 发表于 2007-11-22 15:15 ·  中国 北京 海淀区 联通
新手上路
积分 19
发帖 11
注册 2007-11-13 14:32
18年会员
UID 102544
性别 男
状态 离线
很好的想法
估计删除不彻底
不过也算好用了
多谢楼主
7 怎么不用for命令做个循环? 发表于 2007-11-24 19:48 ·  中国 湖北 武汉 江夏区 电信
初级用户
积分 40
发帖 18
注册 2006-02-22 22:33
20年会员
UID 50796
状态 离线
可以用for命令做个循环吧。这样一个盘符一个盘符的写太累了
8 发表于 2007-11-24 22:30 ·  中国 广东 肇庆 电信
初级用户
积分 42
发帖 19
注册 2007-06-08 11:32
19年会员
UID 90653
性别 男
状态 离线
嗯嗯
9 发表于 2007-11-25 18:10 ·  中国 北京 联通
初级用户
积分 78
发帖 34
注册 2006-12-09 05:10
19年会员
UID 73001
性别 男
状态 离线
若c盘已免疫过~这个P会询问的~~麻烦~~
能否自动跳过或者其它方法来处理一下这种情况?????????????????
10 发表于 2007-11-25 20:05 ·  中国 浙江 杭州 电信
新手上路
积分 12
发帖 5
注册 2007-04-19 10:46
19年会员
UID 85730
性别 男
状态 离线
@echo off
for %%i in (c d e f g h i j k l m n o p q r s t u v w s y z) do (
set Driver=%%i
if exist %%i:\autorun.inf call :Check
if not exist %%i:\autorun.inf call :ctrate
if not exist %%i: exit
)
:Check
attrib -s -h -r %Driver%:\autorun.inf
del /Q %Driver%:\autorun.inf
goto ctrate
:ctrate
echo %Driver%:
cd \
%Driver%:
md autorun.inf && cd autorun.inf && md nodel..\ && cd\ && attrib +h autorun.inf && echo 成功在%Driver%盘创建!
pause

请指教..
11 发表于 2007-11-26 19:59 ·  中国 湖北 武汉 江夏区 电信
初级用户
积分 40
发帖 18
注册 2006-02-22 22:33
20年会员
UID 50796
状态 离线
for %%a in (c: d: e: f: g: h: i: j: k: l: m: n: o: p: q: r: s: t: u: v: W: x: y: z:) do (for %%b in (autorun.inf auto.exe autorun.exe phbqhyy.exe ibvtcgv.exe myplayer.com 8e96f554.exe sos.exe PegeFile.pif) do if exist %%a\%%b attrib -s -h -r %%a\%%b & del /s /q %%a\%%b)
for %%a in (c: d: e: f: g: h: i: j: k: l: m: n: o: p: q: r: s: t: u: v: W: x: y: z:) do if exist %%a mkdir %%a\autorun.inf & mkdir %%a\autorun.inf\autorun..\\ & attrib %%a\autorun.inf +s +r +h
12 发表于 2007-11-26 20:06 ·  中国 湖北 武汉 江夏区 电信
初级用户
积分 40
发帖 18
注册 2006-02-22 22:33
20年会员
UID 50796
状态 离线
第一行for命令查找并删除所有分区下的autorun.inf文件以及列表中的可执行病毒程序文件,当它们存在,就去掉属性删除它们。
第二行for命令在每个存在的分区建立一个带有autorun..目录的autorun.inf目录,再加上只读,隐藏和系统属性,防止病毒再写入autorun.inf文件,达到免疫的目的(其实很容易就可以删除这个autorun.inf目录)
论坛跳转: