![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 08:09 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 调用vbs,保护批处理 |
| 可打印版本 1,140 / 5 |
| 第1楼 twj1993 | 发表于 2010-05-03 14:45 |
| 新手上路 发帖 1 积分 1 | |
|
调用vbs,保护批处理 众所周知,批处理文件很脆弱,在非交互式批处理中,不仅有令人讨厌的黑框框,而且其进程极易被结束,就连批处理正在运行时,其脚本文件也能被轻易删除。
在这里,我综合了网上百家学说,用五种方法保护批处理。(详见附件) 1. 窗口隐藏 很老很经典的一招,调用mshta中vbs隐藏窗口。但我在此有所创新: start mshta vbscript:createobject("wscript.shell").run(""%0" h",0,false)(window.close) 这样更改后,mshta打开cmd.exe然后自己就退了,节约系统资源。并且将%~nx0改为%0,防止非本地调用而出现bug。 2. 代码加密 有两种方法,第一种很古老,使用ASCII字符Union化迷惑人,打开看到的都是乱码,这一个网上介绍的很多,我直接在附件中给出(乱码加密.bat 乱码解密.bat) 第二中也是我收集的,即字符串加密,经测试有效,有基础的朋友一看就明白了,详见(字符串加密.vbs) 3. 进程更名 接着说进程。懂一点批处理的朋友都知道,批处理的进程名为cmd.exe,很容易被关闭。如果我们把他的名字换成其他的,也就减少了被强行结束的风险了。 在附件中我给出了两个文件,一个带窗口隐藏,一个不带,看一看就明白了,很简单,但作用很大。 4. 文件保护 这里我借用网上的方法,使用"占坑法"阻止文件被强行删除。 我们知道,当一个exe文件正在运行事实无法删除的,这里我使用vbs"模仿"打开批处理文件,一次他也就不能被再次打开、删除、重命名,很强的一招,详见附件:文件保护.vbs 5. 进程保护 很简单,如果你在批处理进程外再创建一个vbs进程,并让其看守cmd,发现被关就立即打开,不就可以实现无法结束了吗?详见:保护.bat 但有人说,如果我先关vbs进程,再关cmd进程,不就行了吗?是个问题,但我们如果打开两个vbs,先让其互相监视,再让一个监视cmd.exe不就行了吗?这也是病毒惯用伎俩之一。 但说得容易做的难,我花了很长时间编的:双进程保护.bat,杂糅了以上五种技术,又加入了check.vbs防止反复加载(都是病毒用的),希望大家能学到些东西。 sorry,中国DOS联盟文件上传系统打不开,请到这里下载附件: http://www.rayfile.com/files/942bc75e-567c-11df-9f41-0015c55db73d/ |
|
| 第2楼 freeants001 | 发表于 2010-05-03 14:51 |
| 中级用户 发帖 244 积分 330 来自 湖北 | |
|
你想于什么;)
|
|
| 第3楼 HAT | 发表于 2010-05-03 16:40 |
| 版主 发帖 5,017 积分 9,023 | |
|
能否直接把代码贴出来?
|
|
| 第4楼 jarry0932 | 发表于 2010-05-03 17:08 |
| 初级用户 发帖 122 积分 128 | |
|
想下下来研究一下,可惜下不下来哟
|
|
| 第5楼 chardos | 发表于 2010-05-03 23:08 |
| 初级用户 发帖 16 积分 31 | |
|
YOXI
|
|
| 第6楼 yonghu111 | 发表于 2010-05-04 15:36 |
| 初级用户 发帖 57 积分 90 | |
|
学习了!!!
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |