破解 keyme2程序(固定明码比较)
系统 : Windows xp
程序 : keyme2
程序下载地址 :http://pan.baidu.com/s/1pKqlHiF
要求 : 找出序列号
使用工具 : IDA Pro & OD
可在“PEDIY CrackMe 2007”中查找关于此程序的破文,标题为“一个很简单的crackme”。
运行程序,发现这是一个没有图形用户界面的小程序,验证方式为输入序列号。使用IDA载入程序,在字符串表找出“\nTry again!\n”的位置,并定位判断算法关键位置。本程序中,用OD在00401622处下断点:
0040161B |. C70424 >mov dword ptr [esp], ; |||ASCII "moofy's keyme #2",LF,"Very simple :)",LF,LF,"Enter: "
|. E8 A9050000 call <jmp.&msvcrt.printf> ; ||\printf
|. 8D45 FC lea eax, dword ptr [ebp-] ; ||
0040162A |. mov dword ptr [esp+], eax ; ||
0040162E |. C70424 >mov dword ptr [esp], ; ||ASCII "%d"
|. E8 call <jmp.&msvcrt.scanf> ; |\scanf
0040163A |. 8B45 FC mov eax, dword ptr [ebp-] ; |
0040163D |. 3B05 cmp eax, dword ptr [] ; |
|. 0E jnz short ; |
|. 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
|. EB 0C jmp short 0040165F
|> C70424 >mov dword ptr [esp], ; |ASCII 0A,"Try again!"
0040165A |. E8 call <jmp.&msvcrt.printf> ; \printf
0040165F |> C70424 7F3040>mov dword ptr [esp], 0040307F ; |ASCII "PAUSE"
|. E8 call <jmp.&msvcrt.system> ; \system
0040166B |. B8 mov eax,
|. C9 leave
\. C3 retn
单步跟踪过一遍流程可知,程序将位于[404124]处的固定值作为程序的序列号,需要用户输入一个十进制的字串并与其对比。完全匹配即可。此处跟入内存发现其值为:10427410,转化为十进制则是:272790544。
效果如下:
破解 keyme2程序(固定明码比较)的更多相关文章
- pptv破解版程序,能够免费观看所有蓝光和会员影片!
pptv破解版程序,能够免费观看所有蓝光和会员影片!PPTV网络电视3.4.1.0012绿色版(去广告本地vip版)由Black Hawk精简破解,去掉播放时缓冲.暂停广告.去掉迷你推荐和推荐弹窗.禁 ...
- 解决win2003/2008下注册机或破解补丁程序无法运行问题
win Server 2003/2008 64位系统均遇到注册机或破解补丁程序无法运行或报错或死机的情况,原因是win系统默认开启了文件数据执行保护导致的. (比如3DMax的破解补丁程序等...) ...
- 破解.net程序 编译和反编译方法
原文地址:http://www.cnblogs.com/li-peng/archive/2013/01/31/2886727.html 有好多.net程序有加密狗或者有验证,如果exe或dll没有做过 ...
- Ubuntu 将应用程序固定到快速启动栏
Ubuntu上没有快捷方式的说法,而通过软件中心安装的软件就有图标,并能加入到启动器上,这是因为它们有一个desktop配置文件的缘故.这些配置文件在/usr/share/applications这个 ...
- Ubuntu 将应用程序 固定到快快速启动栏(以Sublime为例)
因为Sublime Text并不是需要安装,所以缺少Ubuntu桌面运行的一些基本配置,比如不能将它加入桌面侧边的启动器. 而Ubuntu上也没有快捷方式的说法,而通过软件中心安装的软件就有图标,并能 ...
- VC++单文档程序固定菜单栏和工具栏
MainFrm.cpp框架类下,找到OnCreate方法 m_wndMenuBar.EnableDocking(CBRS_ALIGN_ANY); m_wndToolBar.EnableDocking( ...
- windbg 基础命令实战 - 简单程序破解
以前玩游戏遇到一些实在过不去的管卡,经常会找一些游戏修改软件来修改游戏,让自己变得无比强大,将boss一路砍瓜切菜过足游戏瘾.其实游戏修改软件的功能大多都比较简单,我们可以通过windbg的一些简单命 ...
- 【.net程序破解】实战之标志位破解绕过注册法
今天有时间玩了下一个不错的软件Advanced System Cleaner,可惜要注册 于是想办法给破解了,这是跟之前不同的地方,属于.NET破解教程: 软件地址 - http://www.crsk ...
- 破解入门【OllyDebug爆破程序】
逆向破解这块我也是个刚起步的小菜,入门都还算不上吧,看了点基础教程,先动手练习一下增加点兴趣.嘿嘿 工具: peid //查壳工具 OllyDebug //反汇编.动态调试工具 ...
随机推荐
- BOM组件物料重复检查
好吧,今天同事让做个BOM组件物料重复检查 网上有很多例子都是在保存的时候检查的,用的是BADI :BOM_UPDATE 自己也试了一下,麻烦....很麻烦...尤其是在重复检查的时候: METHOD ...
- Python eclipse开发环境搭建
http://jingyan.baidu.com/article/cd4c2979101f02756f6e6064.html http://jingyan.baidu.com/article/1876 ...
- Android WebView的使用
WebView是View的一个子类,使用它可以在App中嵌入H5页面,可以跟js互相调用. webview有两个方法:setWebChromeClient和setWebClient setWebCli ...
- 转。管理Gearman
通常,Gearman被用来分发任务,以便实现异步操作.下面捋捋如何管理Gearman. 说明:请自行安装好Gearman和PHP PECL Gearman. 准备 我们先来创建一个Worker,实现一 ...
- 无需激活用户直接登入discuz
//打开discuz/api/uc.php //synlogin方法(180行)处,往下找到 if(($member = getuserbyuid($uid, 1))) { dsetcookie('a ...
- JavaScript 字符串和日期内容整理
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- c++普通高精除单精
//没有在网上测试 //手测几组无误 //如有错误,还望指出,不胜感激. #include<cstdio>#include<cstring>int a1[600],a2,a4[ ...
- flash builder的编译缓存
C:\Users\Administrator\AppData\Roaming 因为我的一个项目是手机.浏览器都支持的项目,所以我经常删除项目然后修改成别的类型: 可能是这个原因,导致我的程序或者加载的 ...
- mysql数据库 安装 (原创)
1.首先下载mysql 数据库,我安装的是mysql5.1版本,直接安装就行,但是如果以后你想在数据库里显示中文的话,要把字符集设置为gb2312 2.配置数据源odbc. mysql-connec ...
- Matlab与C/C++联合编程之Matlab以MEX方式调用C/C++代码(二)
如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数: double add(double x, double y) { return x + y; } 现在我想要在Matlab中使用它,比 ...