[安全技术] 给cmd.exe使用加上口令(使用的是perl脚本)

cmd, perl, 口令, 脚本, exe
最近 重新巩固 perl 翻出以前初学的代码 改了一下   配套 让win 的cmd 使用 linux 的方法 给cmd 的使用 加上 口令验证 呵呵 
下面的这个是   设置在运行cmd.exe 的时候 自动执行 linux.bat 的 方法: 
打开注册表编辑器, 
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Command Processor] 
将"AutoRun"="linux.bat" 

接着就是 linux.bat的内容了 
@echo off
@titel 需要口令的cmd.exe
@color c 
@prompt [fire@火焰linux $p] 
@doskey pwd=cd $* 
@doskey mkdir=md $* 
@doskey rmdir=rd $* 
@doskey mv=move $* 
@doskey clear=cls 
@doskey uname=ver 
@doskey cp=copy 
@D:/perl/bin/perl D:/perl/hello1.pl   
rem 上面的 是 执行 我编辑的 perl的 代码的 命令行 个人的路径有所不同 请根据自己的情况而定 
@D:/perl/1.vbs 
rem 这个是 一个 vbs 脚本 执行一个弹出窗口的 

@cls 
@echo                   欢迎来到"火焰" 系统 
然后就是 要安装的 一个工具 就是 上面 要运行的 perl 代码的工具 ActivePerl 
这个程序 是用来 运行 perl 代码的 

  
好 现在来 写perl代码 
首先编辑 hello1.pl 
内容为: 
#!/user/bin/perl -w 
use Term::ReadKey; 
use Digest::MD5 qw( md5_base64 );#制定一个函数 
$pass1=’AV8oud8b3TZCfdl2+3OynQ’;#加密的代码 
#print ’请输入你的名字:’; 
#$a=<STDIN>;#截取输入的内容 和shell下的 read类似 
#chomp $a;#赋值给a 
ReadMode( ’noecho’ );# 关闭回显 
print "请输入pass(如果输入错误就会自动关闭cmd): "; 
$password = ReadLine(0); 
chomp $password; 
print "/n"; 
print "你的 password 长度为: [" . length( $password ) . "]/n"; 
ReadMode( ’restore’ ); 
$pass=md5_base64($password);#用上面制定的函数对pass的值运算出加密代码 
if ($pass eq $pass1){ 
print "口令正确/n"; 

#print "***************************************"; 
sleep 1;#延时时间 可以自己决定 不延时的话就直接注释掉 
#验证是否正确并且延时并且清除输入 
} else { 
print "口令错误"; 
sleep 0; 
exec ’taskkill’,’/F’,’/IM’,’cmd.exe’;#,’/IM’,’WScript.exe’;#如果错误就调用系统的 命令杀掉cmd.exe进程 

exit; 

然后编辑 一个 得到 上面加密密码字符串的 工具 
pass.pl 运行这个脚本 只要进入perl 执行工具的目录中 (也可以在环境变量中加上目录 那就不需要加目录运行了) 
perl pass.pl 就会让你输入口令 然后产生字符串 把字符串 粘贴 替换掉 #加密后的字符串 的那一行""中的内容就行了 

pass.pl 内容如下: 
#!/usr/bin/perl -w 
use Digest::MD5 qw( md5_base64 ); 
print " 请输入需要加密的字符串:"; 
$pass=<STDIN>; 
chomp $pass; 
$pass1=md5_base64($pass); 
print "加密后的字符串为:$pass1 /n"; 
剩下的 一个是 1.vbs 的内容了 这个可要可不要 我只是为了好看罢了!! 
内容如下 : 
DIM WSH 
SET WSH=WSCRIPT.CreateObject("WSCRIPT.SHELL") 
WSH.POPUP("欢迎来到 ☆火焰☆ 系统") 
这个会跳出一个窗口 显示上面的文字内容 
呵呵 !!! 
一个简单的 加密 cmd.exe 的使用的 方法就成了 
当然 这种方法需要 对 用户权限进行设置 所以只有 ntfs 格式的才行 
因为 在运行过程中 cmd的窗口上方的标题栏 会显示 读取 的linux.bat 的准确路径 
就算是 禁用了注册表 别人只要删除了 linux.bat 文件 这个对cmd.exe 使用的方法 就没用了
所以 加了 title 命令 隐藏窗口 输出路径
大家只要把 linux.bat 放到 path命令显示的 任何一个路径下 就行了!
其实没什么技术的东西 只是自己给自己学习 找点乐趣 请大家不要 扔我砖头!! 扔水果的话 
我倒是蛮欢迎的!!
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值