xxxxx破解教程全文翻译 二十章(下)
本帖最后由 姐又寡闻了 于 2019-6-6 22:34 编辑论坛搜索发现这个东西少了四个章节没人翻译
等得头发都白了,我看还是自力更生的好。
还好手里有英文原版的,所以呢?我来!
这是使用Visual Basic二进制文件工作的第2部分,在这个指南中,我们将使用VB Decompiler(就是一款VB反编译器)我们将使用VB编译器来入手第一部分。
同时我们也能使用 MapConvert(这个没有google到,发现原来是个DLL插件)
[:Usage:] 使用:
Copy mapconv.dll in OllyDBG directory and then复制mapconv.dll到你的OD目录中(实际上原文有误,该是OD的插件目录才对!)
1. You must create .map file using IDA or DeDe你必须创建地图文件 使用IDA 或 DEDE
2. Run program from OllyDBG or atach to it从OD中以附加方式运行程序3. Select what info to replace (comments or labels)选择要替换的信息(注释或标签)
4. Use plugin to select map file for this process使用插件 选择 地图文件 对于此进程
5. Right-click on CPU window, and "Search for"/"User-defined comment" or "User-defined labels" to browse the imported info from map file右击CPU窗口,然后意思就是选择这两项呗。
和 OllyVBHelper-plugins(OD插件)P32Dasm(同样是款反编译VB的利器)
让我们在OD中装载这个crame吧:
这里,我们看到了VB运行时的典型调用。你不得不承认,这是相当惊人的
我们可以用两行代码编写一个完整的可执行文件!现在,因为我们对这个二进制不太了解,让我们来研究它。运行目标,我们看到它有一个设置为5秒的计时器:
我们要摆脱它在屏幕上的倒时时5秒的限制(差不多就那个意思吧,楼主就这么大白话直译吧。)
并输入错误的序列号,显示坏消息:
Let’s take a look atthe target’s guts,shall we? This time,instead ofVB Decompiler,let’s use P32Dasm.
让我们看看目标的内部,好吗?这一次,而不是VB反编译,让我们用p32dasm
使用P32Dasm
P32Dasm is a native and P-code decompiler.It is very similar to VB Decompiler,though it does have some added benefits (like exporting MAP files thatwork).
P32Dasm是一个native 和 P-code 的反编译器.它与VB Decompiler非常相似,尽管它具有一些附加的好处(如导出MAP文件)(DEDE或IDA的这个功能楼主还没有玩过,惭愧啊~~)
Loading CrackmeVB3.exe into P32Dasm,we see the main screen, with some data aboutthe target:
将CrackmeVB3.exe加载到P32Dasm中,我们看主屏幕,显示了有关目标的一些数据:
图像太高了,截图只能缩小,凑合看吧。{:301_972:}
您应该注意到与VB Decompiler的一些相似之处,特别是Form1.Command2.click。 这是回调按钮。 在顶部是用于目标的ASCII字符串(显然不是模糊的),
在底部我们看到几个定时器功能。 在P32Dasm窗口的顶部有一些工具栏您应该熟悉的按钮:
procedure 过程
strings 字符串
imports导入表
exports导出表
objects 对象
(图中的截图在win7X64中测试发现,只能显示出两行来,其他的行无论 语言是否为 英文/中文 都是不能看到的)
毕竟是2011年的软件啦,所以建议vmware中测试和学习。
Though,unlike Olly, double clicking on one does not take you to the disassembly ofthatsection ofcode.
Next is the Constants toolbar button, but clicking on this reveals thatthere aren’tany. Then we come to
‘Imports’, which is similar to “All intermodular calls”in Olly:
显然不像OD双击一个不会帮你转到那段代码的反汇编处
接下来是常数工具栏按钮,但点击这个就显示没有任何内容了。
然后我们来到“导入表”,类似于OD中“所有模块中的调用”
(楼主说:可以右击直接复制哟~~)
The _vbaStrCmp should stick out like a sore thumb…
这个_vbaStrCmp是不是看起来很扎眼呢?
Next is the Exports,but this target doesn’t have any, so it’s blank.
下面的是导出表,但是目标没有任何内容,所以它是空白的。
“对象”将会在VB Decompiler中提醒你
这将显示目标中的所有VB对象,如按钮,标签和定时器。 我们可以清楚地看到
“检查”按钮称为“Command1”,我们可以假设这是我们的主要检查按钮回调。
最后是“程序”窗口:
这显示了目标中的所有回调。 我们可以看到我们的检查按钮被调用
“Command1_Click”,因为Command1是我们的“检查”按钮的回调。
有一件我想指出的是,在字符串部分中有五个可疑的序列:
真的不可能那么简单,不是吗?
不,请告诉我不是:
哦,兄弟。哦,让我们继续研究这个crackme
所以我们可以看到如何使用p32dasm将帮助我们在其他方面(比如删除倒计时画面)。我们有一个工具就是地图文件…
Making a MAP File
生成一个地图文件
A MAP file is a collection ofnames forprocedure calls thathave been compiled into the VB code.
一个地图文件用来搜集程序调用的过程以便编译VB代码
Remember, VB uses actualstring names to reference callbacks, so we can extrapolate these and import them into Olly. We can do this in VB Decompiler Pro (File -> Save Procedure List) but since the pro version is not free,we can also use P32Dasm.Open the target in P32Dasm again and select “File” -> “Export to MAP file”. Save the MAP file and then load CrackmeVB3.exe in Olly. Let’s take a look atour main suspicious callback before loading the map file. I chose the address ofthe Command1_Click callback at 4055F4:
记住,VB使用字符串名称参考回调,所以我们可以推断这些导入到OD。我们可以在VB反编译工具做这个(文件->导出到地图文件)保存地图文件然后在OD中加载CrackmeVB3.exe
在加载映射文件之前,让我们先看看主要的可疑回调函数。我在4055f4选择了command1_click回调地址:
未完待续。。。。。。
文章太长,下午有时间接着翻译和做试验。
文章纠错:
MAP 文件:
这个文件储存一些地址的符号(假设地址 12345678 是 _vbaStrCmp 函数,那么有了这个符号文件后,OD 遇到 CALL 12345678 会根据 MAP 文件里的标记,将其转化为 CALL _vbaStrCmp)
感觉翻译成地图文件有点不太好。MAP =(符号-地址)映射表如何
文章中的4个文件和补全的DLL文件
DLL文件要解到
64位: c:\Windows\SysWOW64
32位系统C:\Windows\SYSTEM32
否则报错!
膜拜大神。谢谢分享。 MAP 文件:
这个文件储存一些地址的符号(假设地址 12345678 是 _vbaStrCmp 函数,那么有了这个符号文件后,OD 遇到 CALL 12345678 会根据 MAP 文件里的标记,将其转化为 CALL _vbaStrCmp)
感觉翻译成地图文件有点不太好。 感谢楼主热心分享. 我他妈一直想知道,论坛怎么 插图进去,我特么每次都是二次编辑。。。沃日 (符号-地址)映射表如何? 支持,感谢分享! 谢谢楼主分享!! dj1149 发表于 2017-6-25 23:15
我他妈一直想知道,论坛怎么 插图进去,我特么每次都是二次编辑。。。沃日
太有同感了! 很赞,还是有几个地方没弄明白
页:
[1]