wubozh 2011-8-18 09:18
U盘病毒的手工删除和处理
昨天有个朋友说是移动硬盘双击打不开了,但能看到它的容量和可用空间等属性,应该是中了U盘上常见的这类自动运行的病毒(如果是文件系统损坏,就算不到容量和可用空间了)。这个病毒工作原理很简单,是可以手工处理的。几年前,U盘病毒刚开始流行的时候,那时杀毒软件都还没更新对付这类病毒的病毒库,我自己用批处理写了一个小程序来手工删除这种病毒,并解决杀毒软件杀了U盘类病毒后遗留下Autorun.inf文件,双击盘符打不开的问题。
一、自动运行病毒的工作原理
在windows中,有一个非常体贴的自动播放功能,就是当我们插入一张光盘或者U盘的时候,如果光盘或者U盘中有一个autorun.inf文件,就可以通过autorun.inf文件中的Icon命令行来显示个性图标,并通过open命令行或者shell命令行来调用光盘中的可执行文件完成自动运行功能,相当于原来dos下系统盘中的autoexec.bat自动执行批处理。其实,这个文件也可以放到硬盘上,来改变分区图标或者在打开分区后自动执行某个程序。在某些品牌机的驱动光盘里,广泛采用了这种技术,当我们在光驱里放入这些驱动光盘的时候,就会自动执行它们的驱动安装程序,而不是我们手工进入光盘的驱动目录来一项项安装。
Windows的这个自动播放功能,是可以在注册表或者组策略里关闭的。但默认情况下是打开的。这就给有些人利用它的这个功能传播病毒和木马制造了机会。由于open命令没有限制命令的范围,可以是windows自身的命令,或者是任何可执行文件,网站链接等,可以说,一旦被病毒利用,可以用来做格式化硬盘,删除文件,连接网站安装木马,后台控制电脑等可怕操作,从而造成非常严重后果。
二、中了自动运行类病毒的表现
1、双击打不开除系统盘外的其他盘符(由于Autorun.inf调用出错);有时系统盘也会双击打不开。
2、双击打开“我的电脑”上的“磁盘分区”后,电脑会先执行打开浏览器上网连接某个网站等操作。
3、在“我的电脑”的磁盘分区图标上点右键,会出现一个(auto)右键菜单(以前的病毒会出现,现在的病毒已经不出现这个菜单了)。
4、在“我的电脑”的文件夹选项的“查看”页里,没有办法打开“显示所有文件和文件夹”选项。这是有些自动运行类病毒修改了注册表来保护它们自身隐藏后不被发现。
5、也是最重要的一点,所有中了这个病毒的系统,在硬盘分区下一般都会存在一个具有隐藏,系统,只读属性的autorun.inf文件,以及它的open项所调用的可执行文件(有的病毒不感染C:盘)。
三、中了自动运行类病毒的对策
1、格式化系统盘,重装系统。重装后,千万不要打开除系统盘外的其他分区。
2、用光盘安装或者网上下载杀毒软件,升级到最新病毒库后,查杀后面的分区。
3、在命令行模式下,删除后面分区中的所有autorun.inf文件以及它们所调用的可执行文件。
由于autorun.inf本身并不是病毒,只是一个系统调用文件,所以杀毒软件一般不会删除这个文件,只是删除了它所调用的可执行病毒程序文件,这会导致杀毒后双击打开磁盘,windows会提示用哪个程序来打开文件。只有删除了这个autorun.inf文件,并注销或者重启电脑后,在“我的电脑”里打开后面的磁盘分区,操作才会正常。
四、自动运行类病毒的处理
1、autorun.inf文件的手工删除
一般中了这种病毒以后,会修改注册表并驻留内存。所以光删除病毒文件是没用的,马上又会重新写上去。只有一部分比较笨的病毒,完全只靠autorun.inf来传播和执行,才能在中毒系统上删除病毒文件后系统回复正常。所以一般只有在格式化系统盘重装系统后,在没有打开后面的磁盘分区的情况下,用命令行模式手工删除才有效。具体命令如下:
Cmd 进入命令行模式
D: 进入d:盘(c:盘刚格式化重装,只要没有打开后面磁盘分区重新感染,肯定是没有病毒的)
Attrib autorun.inf –s –h –r 去掉调用文件autorun.inf的系统,隐藏和只读属性,否则删不掉
Del autorun.inf 删除调用文件
2、我自己写的一个批处理程序自动删除Autorun.inf和它里面所调用的可执行程序(病毒程序)
代码如下:
@echo 这个批处理程序将搜索电脑硬盘上所有分区根目录下有关自动运行类病毒文件和相关调用文件,删除后再建立一个windows下不可删除的目录autorun.inf来保护分区不受自动运行病毒的攻击。这整个过程需要大约十秒钟的时间。继续请按任意键。否则请关闭此窗口
pause
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\autorun.inf for /f "skip=1 delims== tokens=2" %%c in ('find /i "open" %%a\autorun.inf') do attrib %%a\%%c -s -h -r & del /q %%a\%%c) & (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 /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
这个程序做了两件事,一是自动搜索各分区(包括移动分区)下的Autorun.inf文件和它里面所调用的可执行程序并删除。
二是在每个分区下建立一个隐藏并在windows下不可删除的autorun.inf文件夹来免疫U盘类病毒。
从代码里可以看出,程序是安全的。不管是win7还是xp下都行,放心用吧
[img]http://wubozh.ucoz.com/Up3.jpg[/img]
中了U盘病毒后,有些病毒会自动锁上系统里“文件夹选项”中的“显示隐藏的文件和文件夹”功能,这个时候可以从命令行窗口模式进去查看和操作。我这里演示的是用dir /a:h命令显示我的E:盘下所有的隐藏文件和文件夹。其中autorun.inf是这个小程序建立的,还有一个video是存放电影,大家懂的
[img]http://wubozh.ucoz.com/Up1.jpg[/img]
win7下的文件夹选项。其中有两个项目与这个病毒有关。一个是“隐藏受保护的操作系统文件”,一个是“显示隐藏的文件和文件夹”。
[img]http://wubozh.ucoz.com/Up2.jpg[/img]
打开了这两个选项后,就可以在Windows下看到隐藏的文件和文件夹了。我这里看到的是这个小程序所建立的带系统、隐藏和只读属性的autorun.inf文件夹
可能有的兄弟又说了:我的杀毒软件有这功能,你这小程序没用。呵。杀毒软件一般只杀病毒的可执行文件,不处理autorun.inf文件。另外,毕竟这个小程序随时可以用,用完就自动退出了,不象杀毒软件那样需要安装和驻留系统。当然了,它是代替不了杀毒软件的。作为补充,还是很方便的。
wubozh 2011-8-18 09:24
晕。没看到论坛把代码里两个地方转成了表情符。这两个地方是冒号和反括号 : )
把代码复制到记事本并保存为.bat文件执行就可以了
wangao199322 2011-8-18 09:40
也算是学到点东西了,教室里的电脑优盘病毒太恶心了,这下可以去处理了。
wubozh 2011-8-18 09:41
呵。原来是同行啊。对,我这个小程序本身写出来就是给学校机房用的。因为不方便装杀毒软件
wubozh 2011-8-18 09:44
还有一篇文章,阻止传奇木马,网络执法管等Arp欺骗类软件的小程序,其实也是写给机房用的。用来绑定网关用
wmmkkuu 2011-8-18 09:48
我要早知道就好了,我原来有一个优盘,就是中了毒结果变成了0字节。
wubozh 2011-8-18 09:56
兄弟,U盘容量变成0字节,那是整个文件系统都被破坏了,我这个小程序可搞不定。U盘容量变成0字节,要格式化或者重新量产才行的。不过里面的数据倒可以用diskgenius找回来。
wubozh 2011-8-18 12:44
回复 8楼 的帖子
兄弟,写了几年了,没地方发啊。那个时候所有的杀毒软件都不认U盘病毒呢,天天手工删,删得烦了,就写了这个。现在所有的杀毒软件都能杀U盘病毒了,只是有的不处理autorun.inf文件,所以才发出来给双击打不开的兄弟行个方便。
不好意思,没早发出来是我的错
[[i] 本帖最后由 wubozh 于 2011-8-18 12:45 编辑 [/i]]
wubozh 2011-8-18 12:45
我这手上还保留得有几个U盘病毒的样本呢。:loveliness:
wubozh 2011-8-18 12:59
auto.exe autorun.exe phbqhyy.exe ibvtcgv.exe myplayer.com 8e96f554.exe sos.exe PegeFile.pif 这是当时我已经发现的可执行的病毒程序的名字,有时候反复中了几种U盘病毒,从autorun.inf文件中找到的只是最后中的那个U盘病毒的可执行程序,先中的从Autorun.inf文件中找不出来的。这里就不管autorun.inf里有没有,都删得试试。所以说它不能代替杀毒软件,因为没有完整的病毒库。但因为它删掉了autorun.inf和它所调用的病毒程序,所以U盘里就算还有其他的隐藏的可执行病毒程序,肯定是不会自动加载病毒了。除非你拿鼠标硬要去双击隐藏的病毒程序(先要打开显示隐藏的选项,还得没事拿鼠标去双击好玩),:loveliness:
3596599 2011-8-18 13:07
哦 原来自动播放也容易感染病毒啊 学习知识了 谢谢
fangcattk 2011-8-18 18:46
不错啊,内容很实用的教程噢,内容也很详细!
shaigui 2011-8-18 18:51
看了楼主的解释我明白了许多,谢谢楼主的详细的讲解!
crazyjinzhu 2011-8-18 18:56
楼主实在是太厉害了,程序有些太多了。我这脑袋是够呛了。看图学习吧!
han1234567 2011-8-18 19:59
用组策略把学校机房的u盘给禁用了就可以了
947218 2011-8-18 20:02
又学到了知识,老是被优盘的病毒折磨的不行,这次应该没问题了,非常感谢分享
6526184 2011-8-18 20:03
U盘使用起来病毒非常多,楼主的帖子可以好好看看,对我们帮助还是蛮大的~尤其是没杀毒软件的情况下~