实验吧---该题不简单

  首先打开查看:

题目的要求是找出用户名为hello的注册码,初步猜测是注册机,我们简单的注册一下看看。

用户名就是hello随便你输入一个注册码,结果不出意外就是无效的,从这里我们可以看到这里出现的新的messagebox,初步猜测用ollydbg调试的时候会用到,这里猜测最后的flag就是注册码

 

接下来还是老样子首先查个壳子,可以看到没有加壳

 

尝试用ida打开看看,shift+f12查看一下

 

可以看到的是这里非常明显的提示,密钥正确和错误,跟下去继续查看

 

可以看到这里无论是正确还是错误都会弹出MessageBoxA应该就是上面我们输入错误的注册码之后弹出来的信息框,继续看我们看到push    offset Caption  ; "信息"  不出意外这里应该就是输入的信息了。继续分析

 

结构很简单就是输入信息进行确认,然后弹出一个messagebox,查看没有查看出什么,然后使用ollydbg看看

 

 

双击进入发现了关键点,这里应该就是关键的跳转了

 

继续查看

 

 

好像看到了什么,Happy@这里应该是有什么,返回到ida看看

 

查看这个函数

 

把每个字符的序号(从 0 开始算)与这个字符的ASCII码的平方相乘 , 然后整体再加上序号 , 得到的和继续对 0x42 求余 , 最后将结果加上 33 , 然后再转为ASCII码

 

 

不难,一开始以为用od就可以了,最后还是用的ida看一下。。。。。。挺chun的

 

转载于:https://www.cnblogs.com/chuxinbubian/p/10971343.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值