欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

简单的VBS加密实现代码

程序员文章站 2022-05-14 21:00:33
昨天那个病毒的加密确实很恐怖,我不是高手,写不出那么高级的加密。但是受病毒第一层加密的启发,进行简单的加密还是不难的。当然这种低级的加密只能拿来骗骗一些垃圾的杀毒软件。使用...
昨天那个病毒的加密确实很恐怖,我不是高手,写不出那么高级的加密。但是受病毒第一层加密的启发,进行简单的加密还是不难的。当然这种低级的加密只能拿来骗骗一些垃圾的杀毒软件。使用了msxml2.xmlhttp和adodb.stream对象的vbs脚本很容易被杀毒软件认为是病毒,不明真相的同学一看报毒自然就不敢运行了。简单加密以后应该可以绕过比较垃圾的杀毒软件。

下面是加密程序,原理很低级,读取源文件的所有代码并计算asc值后写入,execute用chr还原后的代码。
复制代码 代码如下:

on error resume next
set argv = wscript.arguments
if argv.count = 0 then wscript.quit
set fso = createobject("scripting.filesystemobject")
with fso.opentextfile(argv(0),1)
data = .readall : .close
end with
with fso.opentextfile(argv(0)&".txt",2,true)
.writeline "data="&chr(34)&ascdata(data)&chr(34)
.writeline "function chrdata(data)"
.writeline "myarray = split(data, "","", -1, 1)"
.writeline "for each olddata in myarray"
.writeline "newdata=newdata"&chr(38)&"chr(olddata)"
.writeline "next"
.writeline "chrdata=newdata"
.writeline "end function"
.writeline "execute chrdata(data)"
.close
end with
msgbox "ok!",,"encrypt"
function ascdata(data)
num=len(data)
newdata=""
for j=1 to num
if j=num then
newdata=newdata&asc(mid(data,j,1))
else
newdata=newdata&asc(mid(data,j,1))&","
end if
next
ascdata=newdata
end function

使用方法:直接将需要加密的vbs脚本拖动到这个加密程序文件上,会自动生成加密后脚本的txt文件。
原文:http://demon.tw/programming/vbs-simple-encrypt.html