本文主要是介绍一个U盘病毒,差点让我重装系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前两天把U盘借给别人打印,拿回来后忘了用右键打开了,一个双击之后立即后悔了:U盘在打印室的机器上染上了病毒。现象有:
1、任务管理器被禁用
2、文件夹选项被禁用
3、隐藏文件、系统文件、文件扩展名全部被隐藏
4、注册表启动项中添加system32/wininit.exe
昨晚折腾了半天,又是删除启动项,又是用兔子终止winsystem.exe进程,但是病毒文件都被隐藏了看不到,于是想到一个办法:我装过vmware,上面有Linux,而且已经用vmware的工具把windows下的每个盘符都挂载到Linux里了(在mnt/hgfs下),于是运行虚拟机的linux,在Linux下把病毒文件改名了(其实后来想起不用这么费事,在cmd下用dir、attrib等命令即可实现)。但是重启后问题依旧,发现病毒重新生成了文件,看来还是不够彻底。其实我知道,U盘病毒肯定会在每个盘符下建个AUTORUN之类的文件。
在这个过程中,下载了一个usbcleaner,还挺好用的,直接恢复了任务管理器,是HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/System下有个DisableTaskMgr键,把它的值设为0即可。也可以运行组策略管理器(gpedit.msc),设置“用户配置/管理模板/系统/Ctrl+Alt+Del 选项”,把删除“任务管理器” 属性中的“设置”选项卡中点选“已禁用”或“未配置”单选项。
后来在网上查到了第5条:
5、注册表项的windows NT/currentversion/winlogon中的userinit中添加了system32/winsystem.exe
于是以为userinit键不必要,就把它改名了,结果今天早上来后就登录不了系统了,输入密码登录后就自动注销出来,郁闷。曾一度以为得重装了。后来在别的机器上修好了。以下操作均在另外那台机器上执行:
1、运行计算机管理,操作-》连接到另一台计算机,然后输入我的机器的IP地址,连接成功
2、在“服务”里把remote registry 服务启动 (我平时是把它禁用了的)
3、运行regedit,打开注册表。文件-》连接网络注册表,输入我的机器的IP,连接成功
4、把windows NT/currentversion/winlogon中的userinit还原成正常值,即只带C:/WINDOWS/system32/userinit.exe。
然后回到我的机器上,登录成功。
这时我的文件夹选项还没恢复,在网上找了一下,也是用组策略改回来,如下:
用户配置→管理模板→Windows组件→Windows资源管理器”,把“从‘工具’菜单删除‘文件夹选项’菜单”设为“已禁用”。
再看一下,文件夹选项已经回来了,把扩展名、系统文件、隐藏文件全都显示出来,可以看到每个盘符下都有一个autorun.inf和kernaldrive.exe,就是病毒了。那个autorun.inf是1K大小,但是用记事本打开时,会看到是空白一片,差点被迷惑,好在看到右边有滚动条,原来故意空出一片来迷惑人的,内容在后面呢,为:
[autorun]
open=kerneldrive.exe
shellexecute=kerneldrive.exe
shell/Auto/command=kerneldrive.exe
shell=Auto
一一删除,搞定。
这篇关于一个U盘病毒,差点让我重装系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!