Excel文档中StartUp、Auto_Open宏病毒的清除方法

又见这个问题,很不幸,你可能中了宏病毒。上次帮一个家伙解决这个问题,我还以为是他自己写的宏呢,结果搞得我所有excel文件都被感染了。后来一查,这个病毒叫K4.xls宏病毒,最近两个月才爆发的。光在百度知道里我就遇到过好几次类似的提问了。

如果具备以下几个特征基本就可以确认是病毒了:
1.excel文件里没有自己录制的或者写的宏。
2.电脑里所有的excel文件打开时都会提示二义性的名称:auto_open。
3.按alt+F11打开VBA,左边的工程里有一个project名叫K4.xls。

如果是中毒了千万不要再把你的文件转发他人了,因为一旦EXCEL文件被点击打开病毒就会自动运行感染所有文件。

解决方法:网上好像有一个专杀工具你搜搜看,我当时是恢复了一下系统,并且删除了所有感染的文件(好在我的excel文件不重要也不多)。

---------------------
PS:网上查了一下病毒的行为,供后人参考。
病毒行为如下:
1.如果禁用宏,感染的文件打开的时候会弹出对话框,或者打开失败。
2.感染的文件,会在ThisWorkbook下添加脚本。
3.在Excel的启动目录释放k4.xls文件,用于感染其他Excel文件。
4.在Excel文件中添加模块,模块中包含恶意代码。
5.修改如下注册表,这些注册表会将Excel宏安全属性设置为低,并启用信任对所有“Visual Basic项目”的访问。
6.为每张工作表添加Auto_Activate事件。
7.如果时间在11:00-12:00 或者14:00-15:00之间打开被感染的Excel,将会创建一个VB脚本进程,收集Outlook的邮箱地址,并存放到一个文件中。
8.如果时间在11:00之前,则将Excel作为附件发送给之前收集到的收件人。

宏病毒清除方法

第一步:清除C:\Documents and Settings\administrator\Application Data\Microsoft\Excel\XLSTART下的StartUp.xls和K4.xls;

第二步:清除C:\Documents and Settings\administrator\Application Data\Microsoft\Excel\的Excel11.exe或Excel11.xlb,Excel程序会自建该文件。

第三步:清除C:\Program Files\Microsoft Office\OFFICE11\XLSTART下的StartUp.xls

然后进行以下步骤:以下方法属本博亲自研究得出并成功解决问题,无需重装系统,如转载,请注明出处,谢谢!

首先,退出excel,搜索硬盘上的“norma1.*”文件,删掉。Normal.dot是word的空白模板,位于X:\Documents and Settings\aa\Application Data\Microsoft\Templates(X是你的系统盘,一般是C盘,但不一定)。其实你只要输入文件名字,用搜索功能很容易找到的。

1、按住Shift键,打开需要清除的xls文件(如出现宏的使用选择提示,应选择“禁用宏”)

2、工具菜单==>宏==>安全性,选“中”。

3、按Alt+F11,打开Visual Basic 编辑器

4、按Ctrl+R,打开工程资源管理器,在工程对话框中,展开“模块”分支,在“Module??”等项目上右键单击,选择“移除Module??”,出现“在移除Module??之前是否要将其导出?”,回答时选择“否”。

5、保存文件

6、“格式”菜单==>工作表==>取消隐藏==>确定

7、将刚刚执行“取消隐藏”操作后出现的工作表(名称如“m1_m2_m3”之流)删除

8、“插入”菜单==>名称==>定义

9、选择“Auto_Open”以及“Counter”等名称,删除

10、保存文件,完成

对其他受感染文件,按同样的步骤进行处理。
恢复excel的宏安全性为非常高:
修改注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Excel\Security
新建一个DWORD值,命名为Level,的Level值改为4。
重启机器。
最后,重启系统,嗯,世界清净了。


EXCEL表格打开时多出一个macrol表格。切换表格老提示找不到#REF!$A$2,请问该怎么做啊。我要抓狂了。
这个macro应该是“宏表”,是EXCEL4.0宏专用的工作表,你先删除它试试。出现这个情况,如果不是自己有意添加的,通常是中了宏病毒,建议先从网上找杀毒软件扫描一下电脑。国内的360杀毒软件有宏病毒查杀、免疫功能。

这是因为 有些工作表和名称已经被隐藏了。
首先,使用宏命令将二者显示出来:

Sub test()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Sheets
sh.Visible = xlSheetVisible
Next
Dim nm As Name
For Each nm In ThisWorkbook.Names
nm.Visible = True
Next
End Sub

第二,然后将多余的Marco的sheet删除。
第三,按 ctrl+F3 显示名称管理器,将其中的所有名称删除。 搞定!!!

1、金山毒霸宏病毒专杀工具koffice:点击下载金山毒霸宏病毒专杀工具koffice

2、更改宏安全性Level注册表文件:点击下载更改宏安全性Level注册表文件



欢迎转载,如转载请注明:转载自思睿博客 Sirui Blog [http://www.itbkb.cn/]
本文引用地址一:http://www.itbkb.cn/article/341.html
本文引用地址二:http://www.itbkb.cn/article/341.htm
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭