破解 keyme2程序(固定明码比较)
2016-01-07 10:28
218 查看
系统 : Windows xp
程序 : keyme2
程序下载地址 :http://pan.baidu.com/s/1pKqlHiF
要求 : 找出序列号
使用工具 : IDA Pro & OD
可在“PEDIY CrackMe 2007”中查找关于此程序的破文,标题为“一个很简单的crackme”。
运行程序,发现这是一个没有图形用户界面的小程序,验证方式为输入序列号。使用IDA载入程序,在字符串表找出“\nTry again!\n”的位置,并定位判断算法关键位置。本程序中,用OD在00401622处下断点:
单步跟踪过一遍流程可知,程序将位于[404124]处的固定值作为程序的序列号,需要用户输入一个十进制的字串并与其对比。完全匹配即可。此处跟入内存发现其值为:10427410,转化为十进制则是:272790544。
效果如下:
程序 : keyme2
程序下载地址 :http://pan.baidu.com/s/1pKqlHiF
要求 : 找出序列号
使用工具 : IDA Pro & OD
可在“PEDIY CrackMe 2007”中查找关于此程序的破文,标题为“一个很简单的crackme”。
运行程序,发现这是一个没有图形用户界面的小程序,验证方式为输入序列号。使用IDA载入程序,在字符串表找出“\nTry again!\n”的位置,并定位判断算法关键位置。本程序中,用OD在00401622处下断点:
0040161B |. C70424 003040>mov dword ptr [esp], 00403000 ; |||ASCII "moofy's keyme #2",LF,"Very simple :)",LF,LF,"Enter: " 00401622 |. E8 A9050000 call <jmp.&msvcrt.printf> ; ||\printf 00401627 |. 8D45 FC lea eax, dword ptr [ebp-4] ; || 0040162A |. 894424 04 mov dword ptr [esp+4], eax ; || 0040162E |. C70424 293040>mov dword ptr [esp], 00403029 ; ||ASCII "%d" 00401635 |. E8 86050000 call <jmp.&msvcrt.scanf> ; |\scanf 0040163A |. 8B45 FC mov eax, dword ptr [ebp-4] ; | 0040163D |. 3B05 24414000 cmp eax, dword ptr [404124] ; | 00401643 |. 75 0E jnz short 00401653 ; | 00401645 |. C70424 2C3040>mov dword ptr [esp], 0040302C ; |ASCII LF,"Correct :) Write a keygen and tutorial and submit it to crackmes.de",LF 0040164C |. E8 7F050000 call <jmp.&msvcrt.printf> ; \printf 00401651 |. EB 0C jmp short 0040165F 00401653 |> C70424 723040>mov dword ptr [esp], 00403072 ; |ASCII 0A,"Try again!" 0040165A |. E8 71050000 call <jmp.&msvcrt.printf> ; \printf 0040165F |> C70424 7F3040>mov dword ptr [esp], 0040307F ; |ASCII "PAUSE" 00401666 |. E8 45050000 call <jmp.&msvcrt.system> ; \system 0040166B |. B8 00000000 mov eax, 0 00401670 |. C9 leave 00401671 \. C3 retn
单步跟踪过一遍流程可知,程序将位于[404124]处的固定值作为程序的序列号,需要用户输入一个十进制的字串并与其对比。完全匹配即可。此处跟入内存发现其值为:10427410,转化为十进制则是:272790544。
效果如下:
相关文章推荐
- js 百度地图通过经纬度获取地名
- android需要尽快掌握的
- 2016年PMP考试时间安排
- android 半透明圆角dialog的简单实现
- CentOS下Apache+Tomcat整合
- GPS原始RMC数据解析之DDMM.MMMM
- 软件工程导论考试-试卷6
- iOS 报错问题大搜集(常更)
- 关于表单中用ajax提交产生刷新问题的解决方案
- c语言中箭头的用法
- Hibernate继承映射的“Could not format discriminator value to SQL string”错误解决方法
- 阿里云服务器使用OneinStack的lnmp一键安装包后查看nginx的并发数
- 【Android基础 008】 Eclipse Devices中查看不到真实android设备的解决方法
- 算法导论22.5强连通分量 练习总结
- Apache+Tomcat实现负载均衡
- c++的友元
- iOS高级工程师面试
- ios开发必备第三方库
- 10大数据面试最常问的问题
- vim 替换成 换行