文章关键字 ‘VBS加密’

使用Windows Script Encoder加密VBS

2012年12月21日,星期五

Windows Script Encoder脚本编码器是一种简单的命令行工具,它使脚本设计者可以对最终的脚本进行编码,从而使 Web 主机和 Web 客户不能查看或修改它们的源代码。注意,这种编码只能防止别人在无意中查看到您的代码,并不能防止蓄意黑客查看您的编码内容及其方法。

(更多…)

使用Scripting.Encoder加密VBS脚本

2012年11月10日,星期六

我《VBS加密 & VBE解密》中提到过可以用Script Encoder来加密VBS脚本,但是不知为何,微软官方现在已经不提供Script Encoder的下载。当然,你可以到其他网站上去下载Script Encoder来加密VBS,如果你不怕中病毒的话。

(更多…)

实现简单的VBS加密

2010年07月24日,星期六

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

VBS加密 & VBE解密

2010年07月22日,星期四

用Script Encoder加密VBS脚本

Script Encoder 是一个简单的命令行工具,脚本设计者可使用此工具对他们的最终脚本进行编码,从而使 Web 主机和 Web 客户端无法查看或更改其源代码。注意,这种编码只能防止对您代码的一般性浏览,而无法防止专业黑客查看您的代码和实现方式。

这其实并不是加密(encrypt)而仅仅是编码(encode),只不过乍一看是乱码,好像被加密过一样。使用方法很简单,安装目录有帮助手册,上面写得很清楚,在这里举一个最简单的用法,使用下面的命令加密example.vbs脚本

screnc.exe  example.vbs  example.vbe

用Script Decoder解密VBE脚本

VBS是解释型语言,所以加密后的VBE肯定能够被Windows脚本宿主解释程序解密然后再解释执行。但是微软并没有提供解密程序或者解密算法,一位牛人通过自己的测试推出了解密的算法,并写了一个Script Decoder程序,还把源代码公布出来。我编译了一个测试了一下,效果不错。使用下面的命令解密example.vbe脚本

scrdec18.exe  example.vbe  example.vbs

相比之下,这个网站也有一个解密程序,但是竟然要收费!否则只能解密VBE的前50个字节。最近在学习破解,正好拿来练练手,保护工作做得不怎么样,很轻松就爆破了,而且解密的效果也不怎么样,难道是我的爆破有问题?不管那么多了,有开源的Script Decoder就行了。

另外还有在线解密的网站,对英文的解密效果还不错,但是对于有Unicode字符的代码效果就不怎么样了。