软件逆向中的push大法

先打开od,然后ctrl+g,到达程序顶部00401000:

ctrl+f,搜索push 10001:

第一个:

有两个地址,601的和520的,都可以记录下来:

004010D5  |.  68 23000106   push 0x6010023

004010DA  |.  68 24000152   push 0x52010024

ctrl+l继续搜索,第二个:

0040126A  |.  68 6D000106   push 0x601006D

0040126F  |.  68 40000152   push 0x52010040

继续搜索,发现只有这两个了。

然后ctrl+b,输入ff25:

进入初始化的代码这里,这里面有两个push,都可以试试空格替换成上面的几个,看哪个能行。

经过测试,push 0x52010024这个替换第二个箭头那里能够成功。

ps:

还有一种方法,就是搜索字符串,然后把判断成功处的代码,直接在这两个初始化的地方jmp过去。

右键智能搜索,看到验证成功:

双击进入,记录下关键跳转的下一行:

0040108A  |.  BB 06000000   mov ebx,0x6

直接修改那个初始化代码那里,变成jmp 0040108A:

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值