VB6之反编译工具VBRezQ

该软件的下载地址:http://www.xiazaiba.com/html/5276.html

网站上是这么介绍的:

VBRezQ是一个针对VB程序的反编译软件。VBRezQ反编译的可读性尤其对早期版本,效果很好;不过对VB 5、6使用Native方式编译的程序,可以反编译得到FORM文件,效果还不错,但代码基本上无法反编译。

 

我们来写个例程测试下它的反编译功能:

'VB6.0 Project Hacking Test
Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hwnd As Long, _
    ByVal lpText As String, _
    ByVal lpCaption As String, _
    ByVal wType As Long) As Long

Private Sub Form_Load()
    Dim text As String
    text = "hello, world."
    Debug.Print myMsgBox(text)
End Sub

Private Function myMsgBox(ByVal text As String)
    myMsgBox = MessageBox(Me.hwnd, text, "VBRezQ Testing", vbOK + vbInformation)
End Function

 

直接生成工程1.exe,然后打开VBRezQ选择生成的程序,结果如下:

 

VBRezQ直接反编译给出了工程及窗体信息,观察第三个窗口FORM01.FRM甚至可以看出窗体内部的API声明及自定函数和变(常)量内容等,令人心碎。

看来这个软件果然是能够反编译VB程序,虽然不能源码输出,但绝大部分信息对于破解者已经够用了。

VB6有2种编译方式,分别为“编译为P-代码”和“编译为本地代码”,刚才我是选择编译为本地代码,那么现在我试试编译成P-代码看看效果如何。

修改工程属性,点击生成,用VBRezQ载入,呈现结果如下:

观察FROM01.FRM信息可知,子函数内的代码内容(应该是被加密了)没有被反编译出来,看来P-代码的保密性稍好一些。

百度“VB反编译”搜索结果显示有多个声称可以反编译VB的工具,看来这VB的代码安全性着实令人担忧,不过话又说回来这年头还有人用VB写商业化软件么?

即使对我来说VB也只是个玩具罢了,作为个人最早接触的Programing Tool还是有些感情的。

posted @ 2014-12-04 13:33  lichmama  阅读(32203)  评论(0编辑  收藏  举报