问题:昨天电脑中木马以后,用安全卫士云查杀了下。本以为万事大吉,结果在关机回家再打开电脑后,MyEclipse无法debug了,每次在tomcat的debug模式下启动都会报
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510).......的错误。网上有很多解决此问题的方法都试了,有的说先ping 127.0.0.1如果ping不到就改system32\etc\下的配置文件。有的说是防火墙禁止了javaw.exe访问网络。还有人说要重启电脑,重装jdk等。除了重装意外,我几乎都试了,还是没解决问题。
解决:在一个论坛上看到有高手说MyEclipse在debug的时候要调用cmd和net的。我于是试了下cmd,发现打不开了。
继续按照cmd打不开进行搜索,发现打开cmd的方法:
转自:http://www.deepin.org/thread-2012790-1-1.html
中的“apollo_re2”的回帖 :
1.[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System\DisableCMD]
背景:“命令提示符已被系统管理员停用”遇到过吧? 很多病毒就是这样禁用 CMD 的。
用法:这是一个类型为 REG_DWORD 的键值
当没有这个值时,CMD 能用
当数据为 1 或 2 时,打开 CMD 就会提示“命令提示符已被系统管理员停用”
其数据为其他数字时,CMD 也可用
解决:在注册表编辑器(regedit.exe)找到这个项,把它删掉即可
命令行:reg delete "HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System" /v "DisableCMD" /f(当然啦,你的 CMD 既然被影像劫持,又怎样打开 CMD 呢?在“运行”输入此命令即可)
2.[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun]
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun]
背景:这是 CMD 的自启动项,打开 CMD 和批处理脚本时,CMD 会先检查这两个键值的数据,如果其中一个或两个都存在,这两个键值的数据会先被执行。 有的病毒就是把这个值设为自己的路径,使得用户打开 CMD 前,就现运行病毒体。
用法:这是一个类型为 REG_SZ 的键值,只要数据为一个或多个有效命令就可以了
CMD 会先检查 HKLM,然后是 HKCU
解决:每次运行 CMD 时不要直接双击,也不要在命令行上直接打上 cmd,而是加上一个 /d 的参数,CMD 则不会检查这两个键值在注册表编辑器(regedit.exe)找到这两个键值,把它的值设为空,也可以把它删掉
命令行:reg delete "HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor" /v "AutoRun" /f
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v "AutoRun" /f
3.[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.exe\debugger]
背景:影像劫持技术,相信大家都已经听过... 那是 AV 终结者的时代,它让用户打开杀软时,却打开了病毒体, 既然杀软也可以劫持,一个小小的 CMD 又有何难度?
用法:这是一个类型为 REG_SZ 的键值,只要数据为任意一行字符串(不是空字符就可以了),就可以让别人打不开 CMD,而是弹出找不到 CMD.EXE 之类的提示, PS:如果数据为一个有效的文件路径,则打开 CMD 时就会打开这个文件
解决:在注册表编辑器(regedit.exe)找到这个项,把它删掉即可
背景:“命令提示符已被系统管理员停用”遇到过吧? 很多病毒就是这样禁用 CMD 的。
用法:这是一个类型为 REG_DWORD 的键值
当没有这个值时,CMD 能用
当数据为 1 或 2 时,打开 CMD 就会提示“命令提示符已被系统管理员停用”
其数据为其他数字时,CMD 也可用
解决:在注册表编辑器(regedit.exe)找到这个项,把它删掉即可
命令行:reg delete "HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System" /v "DisableCMD" /f(当然啦,你的 CMD 既然被影像劫持,又怎样打开 CMD 呢?在“运行”输入此命令即可)
2.[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun]
[HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun]
背景:这是 CMD 的自启动项,打开 CMD 和批处理脚本时,CMD 会先检查这两个键值的数据,如果其中一个或两个都存在,这两个键值的数据会先被执行。 有的病毒就是把这个值设为自己的路径,使得用户打开 CMD 前,就现运行病毒体。
用法:这是一个类型为 REG_SZ 的键值,只要数据为一个或多个有效命令就可以了
CMD 会先检查 HKLM,然后是 HKCU
解决:每次运行 CMD 时不要直接双击,也不要在命令行上直接打上 cmd,而是加上一个 /d 的参数,CMD 则不会检查这两个键值在注册表编辑器(regedit.exe)找到这两个键值,把它的值设为空,也可以把它删掉
命令行:reg delete "HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor" /v "AutoRun" /f
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v "AutoRun" /f
3.[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.exe\debugger]
背景:影像劫持技术,相信大家都已经听过... 那是 AV 终结者的时代,它让用户打开杀软时,却打开了病毒体, 既然杀软也可以劫持,一个小小的 CMD 又有何难度?
用法:这是一个类型为 REG_SZ 的键值,只要数据为任意一行字符串(不是空字符就可以了),就可以让别人打不开 CMD,而是弹出找不到 CMD.EXE 之类的提示, PS:如果数据为一个有效的文件路径,则打开 CMD 时就会打开这个文件
解决:在注册表编辑器(regedit.exe)找到这个项,把它删掉即可
命令行:reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.exe" /f
我是把2中描述的 “HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun”删掉以后解决问题的。
当cmd能打开以后,debug也可以了。