新手可以试试,老鸟就别来了
本帖最后由 SeriousSnow 于 2017-9-26 16:04 编辑这学期的目标是想写个壳子来着,,然后应为说真话写保护真的是第一次,,这个是我开学第一天晚上写的demo,(大牛别笑,毕竟得从最基本的开始),没啥大作用,只不过爆破会稍微困难点,,新手可以看看
追码就别了,输入两数字,一样就成功就那么简单,,主要给新手爆破下的。真的只是稍微困难点。
请提供爆破文件
000310CB|.68 3C210300 push 0003213C ;成功
000310D0 68 3C210300 push 0003213C ;成功
我玩脏的不好意思 本帖最后由 whklhh 于 2017-9-27 12:47 编辑
拖入OD运行发现核心的比较函数地址是动态的local.2
那么代码很明显也应该是动态赋值的,重新跟踪观察local.2的值变化
发现在这个地方:
http://img.blog.csdn.net/20170927124257129?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2hrbGhoaGg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast
可以看到,将esi的值不断送往edi的值
edi就是Local.2,esi则是local.14
也就是最上方的一堆机器码赋值
再观察核心函数的命令:
http://img.blog.csdn.net/20170927124307014?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2hrbGhoaGg=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast
要爆破的地方应该是02E217EF(这个地址是动态的),即机器码为75 03的命令
将外部上方的机器码赋值中的75和03改成90(NOP)即可
把指令加密啥的再折腾一下就会更困难啦~(我这样的菜鸟就找不到啦 本帖最后由 明月心 于 2017-9-26 15:33 编辑
00032BBF 90 nop
00032BC0 90 nop
明月心 发表于 2017-9-26 15:25
00032BBF 90 nop
00032BC0 90 nop
你保存到文件可以?
这种可以算吗?
大牛啥意思啊?保存了没问题啊
附件穿不上了
22.zip
Server (IO) Error
你自己试试用52的OD保存一点问题没有 xh5510 发表于 2017-9-26 16:25
大牛啥意思啊?保存了没问题啊
附件穿不上了
22.zip
就是,,代码执行动态申请内存,然后把数据写进去,然后再去执行,,讲道理爆破不是应该改那个数据么。。。。而不是去改执行的代码。。。 大牛,这是什么意思? 看不懂啊 呵呵{:1_906:}{:1_906:}{:1_906:} 试了,没看懂。。。本人菜鸡都算不上
试了,没看懂。。。本人菜鸡都算不上