返回列表 发帖

锁定cmd的批处理编写

昨天晚上某群里有人发了个锁定cmd的批处理,说给cmd加个锁可以防止很多入侵问题。
于是我就看了看他是怎么防黑了。
首先是需要导入一个注册表文件code如下
---------------------------------
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor]
"AutoRun"="lock.bat"
-------------------------------------
哦 映像劫持……

lock.bat代码如下 (命名lock.bat 保存在C盘win下)
---------------------------分割线----------------------------
@echo off
title 解除锁定
SETLOCAL
set pass=0
set times=2
echo ~~~~~~~~~~~~~~~~~~
echo 为了安全起见,CMD.EXE已经被我给锁了。
echo 不知道密码就不要乱来啊!!你的IP已被我记录
echo ~~~~~~~~~~~~~~~~~~
ipconfig >>c:\jilu.txt
netstat -an>>c:\jilu.txt
echo 操作: 密码验证 时间:%time% 日期:%date% >>c:\log.txt
echo 状态: 等待输入密码 >> c:\log.txt
echo. >> c:log.txt
:start
set /p pass=密码:
if %pass%==cnwyc goto ok
echo 密码错误,重新输入(你小子知不知到啊!)~~~你还有%times%次机会
if %times%==0 goto end
echo 状态:用户输入密码 验证失败 联系我认识认识 时间:%time% >> c:\log.txt
set /A times=%times%-1
goto start
:end
echo 状态:用户3次输入密码错误 程序锁定 时间:%time% >> c:\log.txt
title 验证失败?
cls
echo 3次验证失败 你已经被锁定 无法继续操作 你可以关闭本窗口了
echo ~~~~~~~~~~~~~~~~~~
echo 你也可以通过留言来my
echo ~~~~~~~~~~~~~~~~~~
pause
echo *=====================================================================
echo 输入流言按回车提交
echo ~~~~~~~~~~~~~~~~~~
title 3次都失败 算了把
:m
set /p m=输入你的留言
echo 日期:%date% 时间:%time% >> c:\message.txt
echo 留言内容: >> c:\message.txt
echo %m% >> c:\message.txt
echo. >> c:\message.txt
echo 你的留言: %m% 已经记录,你可以关闭本窗口或继续留言
echo 操作:用户流言 时间:%time% >> c:\log.txt
goto m
:ok
echo 状态:密码正确 程序锁定解除 时间:%time% >> c:\log.txt
title cmd.exe
ENDLOCAL
cls
ver
提示的字符已经足以说明代码的意思了
……
set /p pass=密码:
if %pass%==cnwyc goto ok 《====密码在这里
……
===========================================================
呵呵挺有意思 也挺简单,
但是绕过它的验证更简单。
密码输入& 这个符号就OK 了。

======================================
呵呵作者又修改了一下
解决特殊字符跳过和cmd /d
去掉一个PAUSE
解决ctrl+c
但是只是加了一个引号来绕过符号有点简单
密码输时候 只要也加个引号就可以绕了 比如 "&"
网上字符过滤的代码很多 我这里就不发了
@echo off
title 解除锁定
SETLOCAL
set pass=0
set times=2
echo ~~~~~~~~~~~~~~~~~~
echo 为了安全起见,CMD.EXE已经被我给锁了。
echo 不知道密码就不要乱来啊!!你的IP已被我记录
echo ~~~~~~~~~~~~~~~~~~
echo ===================================================================== >>c:\jilu.txt
echo ===================================================================== >>c:\jilu.txt
echo 日期:%date% 时间:%time% >>c:\jilu.txt
ipconfig >>c:\jilu.txt
netstat -an>>c:\jilu.txt
echo ===================================================================== >>c:\log.txt
echo ===================================================================== >>c:\log.txt
echo 操作: 密码验证 时间:%time% 日期:%date% >>c:\log.txt
echo 状态: 等待输入密码 >> c:\log.txt
echo. >> c:log.txt
:start
set /p pass=密码:
if "%pass%"=="daanwb" goto ok
echo 密码错误,重新输入(你小子知不知到啊!)~~~你还有%times%次机会
if %times%==0 goto end
echo 状态:用户输入密码 验证失败 联系我认识认识 时间:%time% >> c:\log.txt
set /A times-=1
goto start
:end
echo 状态:用户3次输入密码错误 程序锁定 时间:%time% >> c:\log.txt
title 验证失败?
cls
echo 3次验证失败 你已经被锁定 无法继续操作 你可以关闭本窗口了
echo ~~~~~~~~~~~~~~~~~~
echo 你也可以通过留言来my
echo ~~~~~~~~~~~~~~~~~~
echo *=====================================================================
echo 输入流言按回车提交
echo ~~~~~~~~~~~~~~~~~~
title 3次都失败 算了把
:m
set /p m=输入你的留言
echo 日期:%date% 时间:%time% >> c:\message.txt
echo 留言内容: >> c:\message.txt
echo %m% >> c:\message.txt
echo............................................................................... >> c:\message.txt
echo. >> c:\message.txt
echo. >> c:\message.txt
echo 你的留言: %m% 已经记录,你可以关闭本窗口或继续留言
echo 操作:用户流言 时间:%time% >> c:\log.txt
goto m
:ok
echo 状态:密码正确 程序锁定解除 时间:%time% >> c:\log.txt
title cmd.exe
ENDLOCAL
cls
ver
正如allyesno提到那样
其实再解决一下过滤问题就可以了。

蚂蚁厉害啊、。
花前月下,不如花钱“日”下~~~

TOP

返回列表