吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6292|回复: 12
收起左侧

[原创] xxxxx破解教程全文翻译 二十章(下)

  [复制链接]
冥界3大法王 发表于 2017-6-25 18:23
本帖最后由 姐又寡闻了 于 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窗口,然后
Snap9.jpg 意思就是选择这两项呗。

MapConvert.rar (66.71 KB, 下载次数: 5)
和 OllyVBHelper-plugins(OD插件)P32Dasm(同样是款反编译VB的利器)
423318_6729ee9408ed9574.png
让我们在OD中装载这个crame吧:
Snap1.jpg
这里,我们看到了VB运行时的典型调用。你不得不承认,这是相当惊人的
我们可以用两行代码编写一个完整的可执行文件!现在,因为我们对这个二进制不太了解,让我们来研究它。运行目标,我们看到它有一个设置为5秒的计时器:
Snap2.jpg
我们要摆脱它在屏幕上的倒时时5秒的限制(差不多就那个意思吧,楼主就这么大白话直译吧。)
Snap3.jpg
并输入错误的序列号,显示坏消息:
Snap4.jpg
Let’s take a look at  the target’s guts,  shall we? This time,  instead of  VB 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 that  work).
P32Dasm是一个native 和 P-code 的反编译器.它与VB Decompiler非常相似,尽管它具有一些附加的好处(如导出MAP文件)(DEDE或IDA的这个功能楼主还没有玩过,惭愧啊~~)
Loading CrackmeVB3.exe into P32Dasm,  we see the main screen, with some data about  the target:
将CrackmeVB3.exe加载到P32Dasm中,我们看主屏幕,显示了有关目标的一些数据:
Snap2.jpg 图像太高了,截图只能缩小,凑合看吧。

您应该注意到与VB Decompiler的一些相似之处,特别是Form1.Command2.click。 这是回调按钮。 在顶部是用于目标的ASCII字符串(显然不是模糊的),
在底部我们看到几个定时器功能。 在P32Dasm窗口的顶部有一些工具栏您应该熟悉的按钮:
Snap5.jpg
procedure 过程
strings 字符串
imports导入表
exports导出表
objects 对象
Snap6.jpg (图中的截图在win7X64中测试发现,只能显示出两行来,其他的行无论 语言是否为 英文/中文 都是不能看到的)
毕竟是2011年的软件啦,所以建议vmware中测试和学习。
Though,  unlike Olly, double clicking on one does not take you to the disassembly of  that  section of  code.
Next is the Constants toolbar button, but clicking on this reveals that  there aren’t  any. Then we come to
‘Imports’, which is similar to “All intermodular calls”  in Olly:
显然不像OD双击一个不会帮你转到那段代码的反汇编处
接下来是常数工具栏按钮,但点击这个就显示没有任何内容了。
然后我们来到“导入表”,类似于OD中“所有模块中的调用”
Snap7.jpg (楼主说:可以右击直接复制哟~~)
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中提醒你
Snap10.jpg
这将显示目标中的所有VB对象,如按钮,标签和定时器。 我们可以清楚地看到
“检查”按钮称为“Command1”,我们可以假设这是我们的主要检查按钮回调。
最后是“程序”窗口:
Snap11.jpg
这显示了目标中的所有回调。 我们可以看到我们的检查按钮被调用
“Command1_Click”,因为Command1是我们的“检查”按钮的回调。
有一件我想指出的是,在字符串部分中有五个可疑的序列:
Snap12.jpg
真的不可能那么简单,不是吗?
Snap13.jpg
不,请告诉我不是:
Snap14.jpg

哦,兄弟。哦,让我们继续研究这个crackme
所以我们可以看到如何使用p32dasm将帮助我们在其他方面(比如删除倒计时画面)。我们有一个工具就是地图文件…
Making a MAP File
生成一个地图文件
A MAP file is a collection of  names for  procedure calls that  have been compiled into the VB code.
一个地图文件用来搜集程序调用的过程以便编译VB代码
Remember, VB uses actual  string 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 at  our main suspicious callback before loading the map file. I chose the address of  the Command1_Click callback at 4055F4:
记住,VB使用字符串名称参考回调,所以我们可以推断这些导入到OD。我们可以在VB反编译工具做这个(文件->导出到地图文件)保存地图文件然后在OD中加载CrackmeVB3.exe
在加载映射文件之前,让我们先看看主要的可疑回调函数。我在4055f4选择了command1_click回调地址:
Snap17.jpg

2017-06-25_224733.jpg

Snap22.jpg

未完待续。。。。。。
文章太长,下午有时间接着翻译和做试验。


文章纠错:
MAP 文件:
这个文件储存一些地址的符号(假设地址 12345678 是 _vbaStrCmp 函数,那么有了这个符号文件后,OD 遇到 CALL 12345678 会根据 MAP 文件里的标记,将其转化为 CALL _vbaStrCmp)
感觉翻译成地图文件有点不太好。MAP =(符号-地址)映射表如何

文章中的4个文件和补全的DLL文件
DLL文件要解到
    64位: c:\Windows\SysWOW64
32位系统  C:\Windows\SYSTEM32
否则报错!
Targets.rar (606.63 KB, 下载次数: 11)

免费评分

参与人数 6吾爱币 +6 热心值 +6 收起 理由
ak7777 + 1 + 1 谢谢@Thanks!
ff7722422 + 1 + 1 用心讨论,共获提升!
pk8900 + 1 + 1 谢谢@Thanks!
开天辟地 + 1 + 1 谢谢@Thanks!
wangsheng66 + 1 + 1 用心讨论,共获提升!
独行风云 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

pwp 发表于 2017-6-25 18:31
膜拜大神。谢谢分享。
爱飞的猫 发表于 2017-6-25 21:44
MAP 文件:
这个文件储存一些地址的符号(假设地址 12345678 是 _vbaStrCmp 函数,那么有了这个符号文件后,OD 遇到 CALL 12345678 会根据 MAP 文件里的标记,将其转化为 CALL _vbaStrCmp)
感觉翻译成地图文件有点不太好。

点评

翻译成什么比较理想呢?规划图如何?  发表于 2017-6-25 22:42
独行风云 发表于 2017-6-25 22:26
dj1149 发表于 2017-6-25 23:15
我他妈一直想知道,论坛怎么 插图进去,我特么每次都是二次编辑。。。沃日

点评

我这个破 chrome编辑贴子受了罪了,鼠标向下滚闪闪闪的闪屏厉害,插图按钮还在顶上要滚来滚去的好麻烦,下次windows live wrter博客发布外链的快速,否则2篇都翻译完了。  发表于 2017-6-25 23:20
爱飞的猫 发表于 2017-6-26 00:16
(符号-地址)映射表如何?

点评

好的 就它了。  发表于 2017-6-26 06:34
开天辟地 发表于 2017-6-26 11:14
支持,感谢分享!
ff7722422 发表于 2017-6-26 21:44
谢谢楼主分享!!
海天一色001 发表于 2017-6-26 22:32 来自手机
dj1149 发表于 2017-6-25 23:15
我他妈一直想知道,论坛怎么 插图进去,我特么每次都是二次编辑。。。沃日

太有同感了!
seven747 发表于 2017-6-28 17:08
很赞,还是有几个地方没弄明白
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-19 17:47

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表