|
给cmd.exe的使用加上口令(使用的是perl脚本) 信息来源:情长在线[F.N.S.T]Www.Fineacer.Org 此文原始发布地址:http://www.fineacer.org/SHtml/Article/4263.shtml 此文讨论地址:http://bbs.fineacer.org/ShowPost.asp?id=3464 本文作者:火焰
最近 重新巩固 perl 翻出以前初学的代码 改了一下 配套 让win 的cmd 使用 linux 的方法 给cmd 的使用 加上 口令验证 呵呵 下面的这个是 设置在运行cmd.exe 的时候 自动执行 linux.bat 的 方法: 打开注册表编辑器, [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor] 将"AutoRun"="c:\linux.bat"
接着就是 linux.bat的内容了 @echo off @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 @cls @D:\perl\bin\perl D:\perl\hello1.pl rem 上面的 是 执行 我编辑的 perl的 代码的 命令行 个人的路径有所不同 请根据自己的情况而定 @D:\perl\1.vbs rem 这个是 一个 vbs 脚本 执行一个弹出窗口的 @echo 欢迎来到"火焰" 系统 然后就是 要安装的 一个工具 就是 上面 要运行的 perl 代码的工具 ActivePerl 这个程序 是用来 运行 perl 代码的 本来我想用 最新的 perl2exe 编译成 exe 文件 可惜 这个工具对 其中的加密的 代码 不能确认 导致编译失败 所以只好放弃 使用 perl2exe 用了这个工具直接执行 perl 代码来实现 : 好 现在来 写perl代码 首先编辑 hello1.pl 内容为: #!/user/bin/perl -w use Digest::MD5 qw( md5_base64 );#制定一个函数 $pass1=’4QrcOUm6Wau+VuBX8g+IPg’; #加密后的字符串 这里的是 123456 得出的 字符串 print ’请输入你的名字:’; $a=; #截取输入的内容 和shell下的 read类似 chomp $a; #赋值给a print "请输入pass(如果输入错误就会自动关闭cmd):"; $pass=; chomp $pass; $pass=md5_base64($pass); #用上面制定的函数对pass的值运算出加密代码 if ($pass eq $pass1){ print "口令正确\n"; sleep 0.5; #延时时间 可以自己决定 不延时的话就直接注释掉 exec ’cls’; #验证是否正确并且延时并且清除输入 } else { sleep 1.5; print "口令错误"; 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=; 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的窗口上方的标题栏 会显示 读取 的c:\linux.bat 的准确路径 就算是 禁用了注册表 别人只要删除了 c:\linux.bat 文件 这个对cmd.exe 使用的方法 就没用了 其实没什么技术的东西 只是自己给自己学习 找点乐趣 请大家不要 扔我砖头!! 扔水果的话 我倒是蛮欢迎的!!
关于本文版权:本文版权归[F.N.S.T]情长计算机网络安全在线与作者共同所有,您可以任意转载,但务必请保留文章的完整性及作者、版权说明信息,请珍惜别人的知识版权!
关于作者:紫色火焰/火焰,情长在线F.N.S.T 副站长,情长论坛管理员。一个为Linux近乎疯狂RedHat好手,有很好的Free精神,经常与别人共享自己的资料、学习心得;也乐于帮忙新手 QQ:373967167。您对本文有任何问题可以来信或者QQ在线与作者进行交流、或者到情长论坛http://bbs.fineacer.org 与作者面对面讨论。
|