中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 14:00
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [原创] VBS随机加密程序 查看 948 回复 4
楼 主 [原创] VBS随机加密程序 发表于 2009-03-06 03:30 ·  中国 北京 联通
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线

首先说明下编写的目的在于保护VBS脚本文件不轻易被抄袭(当然我是没加密的...),然而由于我编码方式低级且效率低下,杀毒软件都不屑一顾,我试了一些被我搞过的病毒脚本被杀毒软件放过了,这是我唯一值得骄傲的地方!

但是可能不适合处理很大的文件,几十KB估计最合适,因为加密后的文件大小大概是原文件的三倍加上 1 KB。

原理就是把原文件的每个字符弄成十进制的ASCII码,中间加上分隔符就成了密文,但是我使用的分隔符是ABCDEF中随机的一个,因此整块密文看起来是一段十六进制码(^_^),然后用一个 Fuck 函数 -_-··· 来解密运行就好啦。

我还把 Fuck 的结果做了点处理,再别人看到 EXECUTE Fuck 时想输出 Fuck 内容的时候会发现没有预期的结果。

解密函数本身被加密了,采用的算法是真的十六进制编码转换。

使用方法:双击程序自己看。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
HAT +4 2009-03-06 09:25
附件
rndEncode.rar (1.18 KiB, 下载次数: 104)
2 发表于 2009-03-06 04:12 ·  中国 台湾 中华电信(HiNet)数据中心
初级用户
积分 26
发帖 25
注册 2008-11-07 16:06
17年会员
UID 130293
性别 男
状态 离线
呵呵,有趣,不过不会还原…= =||
3 发表于 2009-03-06 07:58 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
还是徒劳
S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
4 发表于 2009-03-06 09:21 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
解密函数本身被加密了,采用的算法是真的十六进制编码转换。

致命弱点就是这里啦,把解密函数破解之后就会发现:
l=CHR(79)
FOR J=65 TO 70
ll=CHR(J)
O=SPLIT(lO,ll,-1,1)
lO=NULL
FOR I=0 TO (UBOUND(O)-1)
lO=lO&O(I)&l
NEXT
lO=lO&O(UBOUND(O))
NEXT
O=SPLIT(lO,l,-1,1)
lO=NULL
FOR I=0 TO (UBOUND(O))
lO=lO&CHR(O(I))
NEXT
WScript.Echo lO
EXECUTE lO
lO="' CONTACT : qinchun36 from WWW.CN-DOS.NET '"

真正的执行是在EXECUTE lO,把它拦截掉就行啦。
5 发表于 2009-03-08 10:37 ·  中国 北京 联通
高级用户
★★★
据说是李先生
积分 609
发帖 400
注册 2008-04-23 15:55
18年会员
UID 116706
性别 男
状态 离线
Originally posted by slore at 2009-3-6 07:58 AM:
还是徒劳


是啊,看来应该放弃VBS加密这种方法了,再怎么也有 EXECUTE 这个关键字去不掉。

不过改变下编码方式可以暂时使病毒生存下来。
论坛跳转: