脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - VBS - 简单的VBS加密实现代码

简单的VBS加密实现代码

2020-08-01 14:02demon VBS

下面是加密程序,原理很低级,读取源文件的所有代码并计算Asc值后写入,Execute用Chr还原后的代码。

昨天那个病毒的加密确实很恐怖,我不是高手,写不出那么高级的加密。但是受病毒第一层加密的启发,进行简单的加密还是不难的。当然这种低级的加密只能拿来骗骗一些垃圾的杀毒软件。使用了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

延伸 · 阅读

精彩推荐