吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10913|回复: 128
上一主题 下一主题
收起左侧

[原创] 玩玩破解番外篇1—快速分析汇编代码

    [复制链接]
跳转到指定楼层
楼主
yyhd 发表于 2022-4-16 21:06 回帖奖励
本帖最后由 yyhd 于 2022-4-29 11:39 编辑

新人朋友们好:

当你学会了通过下断点找关键代码位置以后,你最需要的是什么?

学会分析代码。

但是很多新人朋友对汇编代码不熟悉,看到这么多代码,头就大了。

于是,只是习惯于找大跳转,然后进行不断的修改测试,蒙对了就完成了破解

对于程序如何验证的?你还是不清楚。

所以,你很难继续提升自我。

为了便于新人朋友进行代码分析,我做了一个“汇编代码自动翻译小助手”,分享给大家使用。

在介绍工具之前,我先简单谈谈分析汇编代码的思路和步骤。

一、掐头去尾

比如我们现在进入一个关键CALL里面,看下面的代码:



前后两个红色方框内的就是一个子程序通常的头和尾,没有分析的价值,可以忽略掉。

二、重点关注什么

1、关注CALL。
        
        在汇编代码中,CALL就是调用一个函数(子程序),你可以理解为每一个call后面的地址就是一个房间的门牌号,

      (1)如果你F7跟进房间里,你会看到有很多其他的代码,这些代码共同实现某个功能。

      (2)CALL语句的上面如果有push命令,往往就是这个CALL的参数,可以通过CALL语句下面的add esp, ?来判断参数的个数,比如add esp ,0x4就是有一个参数。

      (3)CALL内部的第一个局部变量由[esp-4]或[local.1 ]表示,第二个由[esp-8]或[local.2 ]表示。


   
2、关注跳转。


      跳转分为无条件跳转和有条件跳转。无条件跳转就是一个jmp,有条件跳转有很多不同的指令。

      因为程序都是通过跳转指令来实现选择不同的执行流程(正确的或是错误的),所以修改关键的有条件跳转指令是爆破一个软件的基本原理。

      因此,我们分析代码要特别关注能够跳到较远的有条件跳转语句,我们称为“大跳转”。

      窍门是看到跳转后有“short”就是小跳,没有的就是大跳。



3、重点关注参数是用户名和假码的CALL。

      (1)push  用户名    然后   call  地址    。这样的call一般是取真注册码的CALL(算法CALL)。

      (2)push  假码    push  可疑字符串    然后CALL 地址。这样的CALL一般是验证CALL(关键CALL),下面大的跳转大概率是关键跳。

      (3)push  假码   或者 mov  eax,假码 ,然后CALL地址,你可以进CALL以后,直接在段首把代码改为mov eax,1  ,retn ?。

总结一下:

所谓逆向中分析代码,就是在关键代码段中找到算法CALL、验证CALL、关键跳。

所以分析代码的重点是CALL和有条件大跳。

下面简要介绍这个“汇编代码自动翻译小助手”,你可以试试看?

首先声明一下:

1、我只是利用业余时间写的,只做了简单测试,如果有BUG纯属正常,请见谅。

2、本助手的好处是新人们可以对照汇编代码看中文翻译,时间长了,你就可以不用这个工具直接看汇编代码了,这才是目标。

软件截图:

1、原始汇编代码



2、自动翻译后的代码:





如果您觉得对您有用,请对我继续鼓励和支持,我会继续努力!

玩玩破解,写给新人看(第一集)
玩玩破解,写给新人看(第二集)
玩玩破解,写给新人看(第三集)
玩玩破解,写给新人看(第四集)
玩玩破解,写个新人看(第五集)
玩玩破解,写给新人看(第六集)
玩玩破解,写给新人看(第七集)
玩玩破解,写给新人看(第八集)
玩玩破解,写给新人看(第九集)
玩玩破解,写给新人看(第十集)
玩玩破解,写给新人看(第十一集)
玩玩破解,写给新人看(第十二集)
玩玩破解,写给新人看(阶段练习1)
玩玩破解,写给新人看(第十三集)
玩玩破解,写给新人看(第十四集)
玩玩破解,写给新人看(第十五集)
玩玩破解,写给新人看(第十六集)
玩玩破解,写给新人看(第十七集)
玩玩破解,写给新人看(第十八集)
玩玩破解,写给新人看(第十九集)
玩玩破解,写给新人看(第二十集)
玩玩破解,写给新人看(第二十一集)
玩玩破解,写给新人看(第二十二集)
玩玩破解,写给新人看(第二十三集)
玩玩破解,写给新人看(第二十四集)
闲谈如何破解软件?
玩玩破解——小白实战1,你也行!
玩玩破解——小白实战2,巧搜字符串
玩玩破解——小白实战3,易语言字符串比较通杀
玩玩破解——小白实战4,冰火两重天
对新人们学习《玩玩破解》系列教程的集中解答
玩玩破解—加点油,再前行!
玩玩破解—小白实战5,易语言变脸
玩玩破解——小白实战6,再上一层楼,做个注册机
新年送“心”礼,易语言逆向分析助手6.0
重新认识Delphi程序按钮事件特征码
玩玩破解番外篇1—快速分析汇编代码
玩玩破解之逆向工具篇

汇编代码自动翻译小助手.zip

1.11 MB, 下载次数: 1725, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 63吾爱币 +68 热心值 +58 收起 理由
Lichunjian_bj + 1 + 1 谢谢@Thanks!
Moomer + 1 + 1 用心讨论,共获提升!
lyflj + 1 + 1 大佬人好啊
魔术师_ + 1 + 1 谢谢@Thanks!
anyukongling + 1 + 1 谢谢@Thanks!
xingchensea + 1 + 1 我很赞同!
柳月 + 1 + 1 谢谢@Thanks!
lksniper + 1 + 1 鼓励转贴优秀软件安全工具和文档!
Lsygood + 1 + 1 谢谢@Thanks!
luogan129 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
13297243060 + 1 我很赞同!
sodeep + 1 + 1 用心讨论,共获提升!
wuweide + 1 + 1 鼓励转贴优秀软件安全工具和文档!
wmy19890322 + 1 + 1 谢谢@Thanks!
xgwzz + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
远方呢 + 1 + 1 顶起来
MFC + 1 + 1 谢谢@Thanks!
思念曹操 + 1 + 1 用心讨论,共获提升!
JetJerry + 1 + 1 谢谢@Thanks!
acesec + 1 谢谢@Thanks!
Caraciold_Jr + 2 + 1 用心讨论,共获提升!
抱歉、 + 1 用心讨论,共获提升!
笨笨家的唯一 + 1 + 1 我很赞同!
ygwh + 1 + 1 谢谢@Thanks!
AItechnology + 1 + 1 我很赞同!
limit7 + 1 + 1 受小弟一拜
cb2008cn + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
a731062834 + 1 + 1 用心讨论,共获提升!
xxsdpyz + 1 + 1 我很赞同!
we999 + 1 谢谢@Thanks!
netspirit + 1 谢谢@Thanks!
Tunx + 1 + 1 我很赞同!
hotbone + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
caleb110 + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
终于注册来了 + 1 + 1 谢谢@Thanks!
sam喵喵 + 1 + 1 谢谢@Thanks!
xgs14569 + 1 + 1 热心回复!
plasd + 1 + 1 谢谢@Thanks!
niestcheer + 1 + 1 大神,膜拜下。小白表示要好好学习
yp17792351859 + 1 + 1 用心讨论,共获提升!
芯醉紅颜 + 1 + 1 谢谢@Thanks!
卑鄙的你 + 1 + 1 谢谢@Thanks!
某中二绅士 + 3 + 1 用心讨论,共获提升!
lho + 1 谢谢@Thanks!
chuiyan121 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
CDCBB + 1 + 1 我很赞同!
bailemenmlbj + 1 + 1 谢谢@Thanks!
helian147 + 1 + 1 谢谢@Thanks!
hardchao + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wapj152321 + 1 + 1 我很赞同!
longge188 + 1 用心讨论,共获提升!
zfzxt8281292 + 1 + 1 谢谢@Thanks!
zchamei + 1 + 1 我很赞同!太有用了。那个大跳转以前看不懂,现在方便多了。
wasdzjh + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
kof888 + 1 + 1 用心讨论,共获提升!
常黑屏 + 2 + 1 感谢!正好需要
笙若 + 1 + 1 谢谢@Thanks!
SHI56 + 1 + 1 谢谢@Thanks!
weiyujian1150 + 1 + 1 用心讨论,共获提升!
bjxiaoyao + 2 + 1 我很赞同!
ybbhai + 1 + 1 谢谢@Thanks!
皇帝的新镜 + 1 + 1 用心讨论,共获提升!
非凡一寓 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

本帖被以下淘专辑推荐:

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

推荐
 楼主| yyhd 发表于 2022-4-17 22:45 |楼主
狄人3 发表于 2022-4-17 20:40
Emm,其实应该纠正一点,就是call之后add esp来看参数是因为函数是cdecl的,由主程序负责平衡栈,而别的不一 ...

说的对,谢谢提醒。_cdecl是win32编程时默认使用的调用约定,__stdcall调用约定用于调用Win32 API函数。因为这个工具用来分析软件作者自己写的CALL,所以主要考虑了第一种调用方式。
推荐
kof888 发表于 2022-4-17 06:55
小跳我知道,摇杆快速输入后斜下,然后快速输入前斜上,马上放开摇杆

大跳是摇杆快速输入后斜下,然后快速输入前斜上,摇杆保持方向不变。

不开玩笑了,很多call会带返回值,这个值也是比较重要的参数,一般都会根据这个值来进行判断分之。
沙发
ss1314 发表于 2022-4-16 21:10
3#
刀大喵 发表于 2022-4-16 21:22
大佬出品 必属精品
4#
非凡一寓 发表于 2022-4-16 21:29
非常好,对看懂代码帮助很大
5#
mojingtai 发表于 2022-4-16 21:36
谢谢,这个好,
6#
wen1102 发表于 2022-4-16 21:41

老师给指点一下,搜不到注册提示失败字符串怎么下手
软件地址:http://www.onlinedown.net/soft/251418.htm
7#
zwh8698 发表于 2022-4-16 21:41
这个经典啊
8#
byh3025 发表于 2022-4-16 21:46
wen1102 发表于 2022-4-16 21:41
老师给指点一下,搜不到注册提示失败字符串怎么下手
软件地址:http://www.onlinedown.net/soft/251418. ...

记得这个打印助手是有花指令的,所以搜索不到字符串,
9#
bjxiaoyao 发表于 2022-4-16 21:53
感谢大佬,学你的系列教程收获很大
10#
天空の幻像 发表于 2022-4-16 22:04
呀,这个好像很方便
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-13 10:10

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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