追梦 发表于 2015-9-1 17:23

一个重启验证软件研究了一天无果

本帖最后由 追梦 于 2015-9-1 17:30 编辑

       一个重启验证的软件,有个简单的壳,esp定律可脱。输入假码,有错误提示。导入od后,可以搜索到中文字符的错误提示,在注册这里没有追到真码,改跳转后,提示注册成功,要求重启。这种重启验证改跳转的方法,一般都是假成功。所以又找重启验证的思路。用读文件断点和获取启动信息断点都失败了。后来发现,注册成功后会产生一个ini注册信息文件,注册失败则不产生这个文件。于是又ini重启验证断点,同样没有成功。
   新手练习,研究了一天,没有思路了,请前辈们指点一二。。。。

   安装程序:http://pan.baidu.com/s/1qWvaRpy


   
















Like 发表于 2015-9-1 17:23

本帖最后由 Like 于 2015-9-1 18:46 编辑

这个可以用了0047E4BF      33C0          xor eax,eax
0047E4C1      C3            retn
0047E4C2|.833D 6C864E00>cmp dword ptr ds:,0x0
0047E4C9|.53            push ebx
0047E4CA|.56            push esi
0047E4CB|.57            push edi
0047E4CC|.75 12         jnz short 999.0047E4E0
这里改成这样子就可以了拿分来吧{:5_118:}

Like 发表于 2015-9-1 18:39

已经帮你逆向

追梦 发表于 2015-9-1 20:28

Like 发表于 2015-9-1 18:40
这个可以用了0047E4BF      33C0          xor eax,eax
0047E4C1      C3            retn
0047E4C2|....

大神,改这里逆向的是哪个验证啊,是试用验证还是真假码验证。只改这里,注册那里的跳转不用改了吗。想知道改这里是什么原因。

Like 发表于 2015-9-1 20:31

本帖最后由 Like 于 2015-9-1 20:33 编辑

追梦 发表于 2015-9-1 20:28
大神,改这里逆向的是哪个验证啊,是试用验证还是真假码验证。只改这里,注册那里的跳转不用改了吗。想知 ...
xoreax,eax   ;让eax变成0然后retn就可以了   eax的值影响下面的跳转,如果你改跳转改的地方太多了,好多处,数不清,不如直接改验证call的返回值


这个地方是一个验证call如果返回eax=0 就成功了,多处调用,你改eax的返回值就可以了

追梦 发表于 2015-9-1 20:56

Like 发表于 2015-9-1 20:31
xoreax,eax   ;让eax变成0然后retn就可以了   eax的值影响下面的跳转,如果你改跳转改的地 ...

好的,明白了,一时没反应过来,我习惯用moveax,0这样改,所以一时没理解。这种改法是直接变成无限试用,与重启验证的追码和爆破方法不一样。谢谢你的指导。

Like 发表于 2015-9-1 20:59

追梦 发表于 2015-9-1 20:56
好的,明白了,一时没反应过来,我习惯用moveax,0这样改,所以一时没理解。这种改法是直接变成无限试 ...

不客气,算不上指导
页: [1]
查看完整版本: 一个重启验证软件研究了一天无果