标题: 如何禁用CMD
[打印本页]
作者: mfdcxnf
时间: 2008-9-11 18:13
标题: 如何禁用CMD
通过修改注册表,可以禁止用户使用命令解释器(CMD.exe)和运行批处理文件(BAT文件)。
进入到注册表项
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System\中,
新建一个双字节值项DisableCMD,修改其值为2。
则命令解释器和批处理文件都不能够被运行。
如果只是禁止命令解释器的运行,而运行批处理文件的运行,则修改DisableCMD的值为1。
1,2都是禁止,那么0是什么呢?当然是没有限制啦
看到一个可以通过修改注册表实现禁用注册表的方法,用起来不错,可是我想用批处理实现,我又不会修改,请各位大师帮一下忙,我也好借此机会学习一下如何用批处理修改注册表,越详细越好,谢谢!
作者: huahua0919
时间: 2008-9-11 18:31
修改为1后两者都不能用,修改为2后无效 winXP-SP2@cmd
作者: mfdcxnf
时间: 2008-9-11 18:37
谢谢2楼的指正,不过如何实现呀!
作者: tireless
时间: 2008-9-11 18:44
命令行工具 reg.exe 就是操作注册表的。键入 reg /? 查看帮助。
=======================
用“映像劫持”可以同时禁用cmd.exe和批处理的运行。
禁用
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.EXE" /v debugger /t reg_sz /d debugfile.exe /f
恢复
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.exe" /f
[
Last edited by tireless on 2008-9-10 at 10:47 PM ]
作者: huahua0919
时间: 2008-9-11 18:49
你写的是HKLM了,所以你找不到
作者: mfdcxnf
时间: 2008-9-11 18:52
谢谢4楼的朋友,你帮我解决了问题,但是你恢复发上来没有用吧,因为你都禁止了运行,难道你的恢复批处理还能运行吗,不过非常感谢!
作者: HAT
时间: 2008-9-11 20:42
标题: Re 6楼
恢复可以用这个方法:生成出一个.reg文件,然后导入注册表即可。
作者: tireless
时间: 2008-9-11 22:56
Quote: |
Originally posted by mfdcxnf at 2008-9-10 10:52 PM:
谢谢4楼的朋友,你帮我解决了问题,但是你恢复发上来没有用吧,因为你都禁止了运行,难道你的恢复批处理还能运行吗,不过非常感谢! |
|
直接在“运行”对话框里运行。
作者: qwertl
时间: 2008-9-11 23:06
禁用windows脚本要怎样设置呢?
作者: mfdcxnf
时间: 2008-9-12 20:16
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t reg_dword /d 00000000 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000001 /f
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowSuperHidden /t reg_dword /d 00000000 /f
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v Disableregistrytools /t REG_DWORD /d 1
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\cmd.EXE" /v debugger /t reg_sz /d debugfile.exe /f
这样就无法用REG恢复了,那位有好的招式,请分享一下,谢谢!我想要我需要用的时候就可以用,不需要的时候就禁止!
不知道脚本可不可以实现解除禁止。批处理和注册表肯定是不行了。
[
Last edited by mfdcxnf on 2008-9-12 at 08:18 PM ]
作者: HAT
时间: 2008-9-12 21:59
标题: Re 10楼
xxx.inf可以吗?
[Version]
Signature="$CHICAG0$"
[DefaultInstall]
AddReg=My.Add.Reg:
[My,Add.Reg]
HKCU,"SOFTWARE\Microsoft\windows\currentversion\policies\system","disableregistrytools",0x00010001,"0"
xxx.vbs呢?
Dim WSHShell
Set WSHShell =CreateObject("WScript.Shell")
WSHShell.RegWrite "HKCU\SOFTWARE\Microsoft\windows\currentversion\policies\system\disableregistrytools",0, "REG_DWORD"
[
Last edited by HAT on 2008-9-15 at 04:37 PM ]
作者: mfdcxnf
时间: 2008-9-13 07:19
我对楼上的代码进行过测试,结果还是无法运行
作者: HAT
时间: 2008-9-13 09:49
11楼的代码无法解锁注册表?报错信息是什么?
作者: moniuming
时间: 2008-9-13 11:00
在我的机子上也无法运行,报错信息如下图:

作者: qinbuer
时间: 2008-9-13 13:04
会不会你的电脑将解释VBS运行的几个宿主文件删除掉了?我记得有些网吧好像就这样干
作者: moniuming
时间: 2008-9-13 13:33
Quote: |
Originally posted by qinbuer at 2008-9-13 13:04:
会不会你的电脑将解释VBS运行的几个宿主文件删除掉了?我记得有些网吧好像就这样干 |
|
但是其它的vbs脚本可以运行啊
作者: mbllokmb
时间: 2008-9-13 14:15
给予cmd改名!
作者: mfdcxnf
时间: 2008-9-13 17:20
回复13楼,提示类型不匹配,代码800A000D,MICROSOFT vbscript运行错误!
作者: moniuming
时间: 2008-9-14 14:01
哈哈,经过认真的检查,我发现11楼代码的问题所在了,可能是HAT老大故意弄的吧,试试下面的看看?
Dim WSHShell
Set WSHShell =CreateObject("WScript.Shell")
WSHShell.RegWrite
"HKCU\SOFTWARE\Microsoft\windows\currentversion\policies\system\disableregistrytools"
,0, "REG_DWORD"
他把CreateObject的"O"(字母)改成了"0"(数字),唉,也有这样玩人的...
作者: 23112656
时间: 2008-9-15 16:32
恢复不了的话试试gpedit.msc
作者: mfdcxnf
时间: 2008-9-15 22:52
我试过了用组策略,太麻烦了一点,是可以实现!假若可以运行注册表文件,又应该如何制作恢复CMD的注册表文件呢?