标题: 实现简单的VBS加密
作者: Demon
链接: https://demon.tw/programming/vbs-simple-encrypt.html
版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”协议条款。
昨天那个病毒的加密确实很恐怖,我不是高手,写不出那么高级的加密。但是受病毒第一层加密的启发,进行简单的加密还是不难的。当然这种低级的加密只能拿来骗骗一些垃圾的杀毒软件。使用了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文件。
赞赏微信赞赏支付宝赞赏
随机文章:
来看看
如何解密?
on error resume next
set fso=createobject(“scripting.filesystemobject”)
set ws=createobject(“wscript.shell”)
Set objDialog = CreateObject(“UserAccounts.CommonDialog”)
objDialog.Filter = “vbs File|*.vbs|All Files|*.*”
objDialog.InitialDir = “”
objDialog.ShowOpen
strLoadFile = objDialog.FileName
if not strLoadFile = “” then
set file=fso.opentextfile(strLoadFile,1)
all=file.readall
file.close
s=instr(1,all,”next”)
alls=mid(all,1, s+3 )
set file=fso.createtextfile(strLoadFile,8,true)
file.write alls
file.writeline empty
file.writeline”set fso=createobject(“&””””&”scripting.filesystemobject”&””””&”)”
file.writeline”set file=fso.createtextfile(wscript.scriptfullname,8,true)”
file.writeline”file.write runner”
file.writeline”file.close”
file.close
ws.run””””&strLoadFile&””””,0,true
msgbox”解密成功!”,4096+64
end if
如何解密呢
牛牛牛~给力