VB6之反编译工具VBRezQ
该软件的下载地址:http://www.xiazaiba.com/html/5276.html
网站上是这么介绍的:
VBRezQ是一个针对VB程序的反编译软件。VBRezQ反编译的可读性尤其对早期版本,效果很好;不过对VB 、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还是有些感情的。
VB6之反编译工具VBRezQ的更多相关文章
- apk反编译工具
反编译工具: apktool:资源文件获取,可以提取出图片文件和布局文件进行使用查看 dex2jar:将apk反编译成Java源码(classes.dex转化成jar文件) jd-gui:查看APK中 ...
- eclipse安装反编译工具
身为一名程序员来说,日常最常做的就是编写代码和查看别人写好的源代码了,有时候打开别人写的class文件发现根本不是自己想要的,所以给大家介绍一种eclipse中反编译class文件的工具. 第一步:下 ...
- .net混淆、反编译工具调查
常用的工具列表[比较常见的] 混淆器.加密 Dotfuscator VS默认带的工具,不过是个社区版 强度不大 dotNET Reactor 使用了NativeCode 和混淆的形式 Xenocode ...
- Android反编译工具的使用-Android Killer
今天百度搜索“Android反编译”搜索出来的结果大多数都是比较传统的教程.刚接触反编译的时候,我也是从这些教程慢慢学起的.在后来的学习过程中,我接触到比较方便操作的Android反编译.在这,我将使 ...
- Eclipse反编译工具Jad及插件JadClipse配置
Jad是一个Java的一个反编译工具,是用命令行执行,和通常JDK自带的java,javac命令是一样的.不过因为是控制台运行,所以用起来不太方便.不过幸好有一个eclipse的插件JadClipse ...
- .net 反编译工具
遇到一个需求,做一个专门访问自己网站的浏览器给用户使用,这个浏览器提供登录功能.此时是一个安装在客户端的exe程序,做登录验证要用到webservice,不能将验证逻辑写入exe中,否则客户端可以利用 ...
- ApkDec android反编译工具
转自:http://www.newasp.net/soft/70498.html 下载 ApkDec是一款免费的绿色APK反编译工具 forandroid ,由android开发者社区开发. ApkD ...
- java反编译工具JD-GUI
这款java反编译工具是由C++写的,是一款免费的非商业用途的软件,(Xjad也不错,但是不支持jar反编译) 一.支持众多.class反编译工具 二.支持反编译jar
- Android 反编译工具简介
Android 反编译工具: 所需工具:1 apktool : 用于获取资源文件 2 dex2Jar : 用于将classes.dex转化成jar文件 2 jd-gui: 将jar文件转化成java文 ...
随机推荐
- 在.Net下使用redis基于StackExchange.Redis
研究了下redis在.net下的使用,因为以前在java上用redis用的是jedis操作,在.net不是很熟悉,在网站上也看了一部分的.net下redis的使用,大部分都是ServiceStack. ...
- springMVC+Mybatis(使用AbstractRoutingDataSource实现多数据源切换时)事务管理未生效的解决办法
业务场景: A.B两个单位,系统部署同一套代码: A.B两系统能相互访问: 要求将数据从A系统同步到B系统,再将反馈信息回发给A: 实际开发情况: 因为系统比较小,最开始设计架构的时候没有考虑到消息互 ...
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置. ...
- 仿flash轮播
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...
- iOS bug调试技巧学习----breakpoint&condition
给断点添加条件 - (void)testCondition2 { NSArray *array = @[@"我们", @"一起", @"来" ...
- Git添加远程报错:remote origin already exists.
在本地创建了一个Git仓库,如何在Github创建一个Git仓库,并且让这两个仓库进行远程同步,这样Github上的仓库既可以作为备份仓库,还可以通过该仓库进行多人协作. 1.登录github,建立一 ...
- GA代码中的细节
GA-BLX交叉-Gaussion变异 中的代码细节: 我写了一个GA的代码,在2005测试函数上一直不能得到与实验室其他同学类似的数量级的结果.现在参考其他同学的代码,发现至少有如下问题: 1.在交 ...
- JavaScript设计模式_10_职责链模式
职责链模式的定义是:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止.职责链模式的名字非常形象,一系列可能 ...
- MongoDB--MapReduce分布统计s
MapReduce Mapreduce:要操作的目标集合 Map:映射函数(生成键值对序列,作为reduce函数参数) //传入分组的key和需要统计的值 Reduce:统计函数 //格式化返回的参数 ...
- v9 频道页如果有下级栏目跳转到第一个栏目链接
{if $CATEGORYS[$catid]['child']==1} {php $firstarr = explode(',',$CATEGORYS[$catid]['arrchildid']);} ...