简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码

环境:

      win7 旗舰版 x64

       OD2.01

      PEiD0.95

使用资源

      http://download.csdn.net/detail/obuyiseng/9351217 中的 CrackMe_00.exe

技巧:

     使用OD中的栈回溯。


简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第1张图片

第一步:简单测试。
随便输入点击确定,发现弹出对话框,那么我们就可以确定,程序里面含有MessageBox函数。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第2张图片


第二步:使用PEiD查看程序信息。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第3张图片
 
通过上面的信息,我们猜测该程序是使用的VS2013编写,并且是Debug版本。
备注:
vs2015 -- 14 vs2013 -- 12vs2012 -- 11vs2010 -- 10   vs2008 --??      vs2005--??vc++6.0--6.0

不过这都只是参考而已。

我们接下来可以查看下子系统,内容如下:

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第4张图片

我们在输入表中发现了MessageBoxA()。


第三步:进入OD调试
1、将程序拖入OD中,并打断点  BP MessageBoxA ----注意大小写



2、查看是否有存在1中打的断点


3、按C进行返回,并点击运行。弹出程序窗口,并进行任意输入,并点击确定。程序会在MessageBoxA函数处进行断住。


4、点击堆栈窗口中的栈顶回车,进入到CPU窗口,此时CPU窗口就是MessageBoxA调用后栈中压入的返回值。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第5张图片


5、在 00FC14D4地址往上看,发现了MessageBoxA。再往上看就发现了,弹出框中的文本“Err  code” 和 正确的文本“Good”。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第6张图片


6、我们要想得到正确的信息,就需要查看文本"Good"的上面的信息。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第7张图片

在提示的注释处,发现有strcmp函数,该函数是比较两个文本是否相等。"1111"是我们自己写的,那么"HackAv"应该就是我们要找的密钥。

简单逆向分析使用案例(1)--CrackMe_00.exe 找出密码_第8张图片


你可能感兴趣的:(逆向,破解,病毒)