crackme01——Acid_burn

最近对逆向稍微有点兴趣,自学了一点。写这个文章主要用于记录学习的过程。

首先看一下这个程序,其实就是个简单的比对程序,主界面按左侧按钮进入Name Serial界面,点击【Check it Baby】,则弹出窗口【Sorry, The serial is incorect!】。主界面按右侧按钮进入Serial界面,点击【Check it Baby】,则弹出窗口【Try Again!!】。

 

 先检查有没有加壳,看到【Borland Delphi】,很显然没有壳,可以直接分析。

 先搜索字符串,很容易就找到刚刚那两个字符串

 我们先从【Try Again】开始分析,找这个地址相关的指令

找到两条相关指令,但是不知道哪个是真的相关程序,于是我们加这两个指令上都打个断点。运行相关程序,我们发现程序并没有进断点。可能是没找对,我们重新查找,发现确实有另一个相同的字符串。

 这次只有一个指令调用这个地址。

我们给他打个断点 ,这次点击【check】后,进入断点了。

现在,我们查看一下它上下文代码,发现是从这里跳转到后面来的 ,此处修改汇编指令为je

测试结果,成功

然后,看另一个界面的【Check】,发现它正好停到我们刚刚第一次打的断点处。我们观察上下文,发现和之前一个界面完全相同。此处也修改汇编指令jnz为je。

 测试,发现没问题。直接保存修改

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值