楼 主
[原创] 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
第 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 这个关键字去不掉。
不过改变下编码方式可以暂时使病毒生存下来。
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正