首页
社区
课程
招聘
[旧帖] [原创][原创]菜鸟调天××步密码 如有问提请删除。 0.00雪花
发表于: 2008-3-17 12:35 3172

[旧帖] [原创][原创]菜鸟调天××步密码 如有问提请删除。 0.00雪花

2008-3-17 12:35
3172
菜鸟调天××步密码 第一次发贴如有问提还请版主删除,原谅。

我做了个动画教程。太大了上传不上来(30MB)。汗。。。。

有需要的就加我Q下吧。

Q: 811717

OK

进入正题。

用OD附加的游戏。。。

点下运行 或 F9

调试重点放在游戏的账号和密码上。。

所以我们要想办法把我们输入的东西  找出来。。我输入的是GDB551 GDBGDB小写的。。。

我们先开WINHEX  找一下看看是不是明文

找到我们的游戏进程名 点 整个内存

搜所 gdb551 ctrl+F

F3 接着搜

呵呵。没有。。在想别的方法吧。

下个断试下  

游戏想发送密码 一般都要通过 SEND 函数 或 WSASEND 函数来发送。。。

我们就在这个函数上下个断点看看。。。

命令: bp send 注意大小写哦。。。这个一定要小写 有些一定要大写的。例: bp MessageBoxA

下断

回车下断后我们可以在断点窗口中看到我们下载断点。。。。。

点 查看-断点
Breakpoints, 条目 7
地址=71A2428A ws2_32.send
模块=ws2_32
激活=始终
反汇编=mov     edi, edi

这个是我们下的断点。

好了。回到上面 我们下完断后,就去发送账号密码吧。

回游戏点开始。游戏被断下。。。看到了吧。

现在我们要按 ALT+F9返回游戏的上一级。

回到这里。我们就要想一下为什么要在发送这下断了。

你打完账号密码。点进游戏后 游戏一定会向服务器发送数据是吧。。
这说明在发送数据前。。。游戏一定会把数据存到某个地方。。。
(基本都是这样)

按我们现在的思路我们就在发送数据前 一个一个下断 。

现在程序的位置是SEND之后 发送之后。。。
00558CF5    E8 30120400     call    00599F2A   //发送                      ; jmp 到 ws2_32.send
00558CFA    8BF0            mov     esi, eax    //反回值。。。

我们现在回到发送前去下断。。到这个函数的开始处试试看。

00558CE0    8B4424 10       mov     eax, dword ptr [esp+10]

F2 下 切换断点。。。

运行程序

在次点进入时断在 558ce0 的位置上了。。我们看下堆栈。(找不到看动画。)

看第一行 0012FC34   005554B8  返回到 Game.005554B8 来自 Game.00558CE0

我们就可以按上面的地址找到上面的调用这个函数的 函数了。

CTRL+G 跟随到 005554B8 这个地址。

跟随到了这里。。。。这就几行代码一下就能看到头了吧。

我们在头上下断。然后回到游戏。。在进入。(调试程序就是个麻烦活。呵呵。)

我们接着按上面的方法接着来。。。直到你感觉差不多了。(具体什么时候差不多就一点点用WINHEX试)

0012FC48   005548EB  返回到 Game.005548EB 来自 Game.005554A0

好了。我们在用WINHEX 搜下看看。

呵呵。这回找到了。。。差不多了。。在看看里面还有没有别的地方有这个值。

F3

好多。。呵呵。。。下内存访问断点。。找你感觉差不多像的试下吧。

先试下第一个。

看到了吗?地址是77F5C8 我们去下内存访问断点。

下好断了。运行下看看。 好像不行的样子。呵呵。。MD命令 删除内存断(要不容易挂。哈。)

接着上面的弄,在试下别的吧。

还是不行。呵呵。

算了。。太多了。换招吧。。。

这回我们在看一下刚刚是不是一个地址。好像是一样的啊。。

好,我们下个内存写入断点试下。。。

先运行程序

同样的方法跟随到地址处。。。

下断后点进入试下看看。哈哈哈。。

相当成功的断哦。。。。。

全部都是我们的账号和密码。。。

F8跟着走几步。回到上一级看看。

还要往回走。。因为看看  标题 是 MSVCP71

我们要回到游戏上去也就是GAME

接着F8

好了。。看标题。我们回来了。。

0012F378   08679F98  ASCII "gdb551@Sohu.com"
0012F37C   02D98CB0
0012F380   0579A580  ASCII "gdbgdb1"
0012F384   0579A580  ASCII "gdbgdb1"

呵呵。。这里是我们的账号和密码了。。

好。。我们在程序的当前位置断下。

运行程序。。对。。先删断点哦。。嘿。要不就挂掉的。

我们现在看一下。是不是进入游戏时一定要从我们下断的

地址处经过。。是不是每次都带我们的账号和密码。多试几次看下。

呵呵。看样没问提。。换个名在试下。

0012F378   059ADB98  ASCII "iovejieba@126.com@Sohu.com"
0012F37C   02D98CB0
0012F380   057ECE98  ASCII "602648424"
0012F384   057ECE98  ASCII "602648424"

呵呵。。。看样是没问提了。。。。。

好。。到此我们就找到这个游戏的账号密码了。。。

当然还有别的方法。。。我们在试个。

停吧。先别试了。。。太多了你消化不了。呵呵。。。

明天吧。。。。。

教程到此OK。。。你回去自己好好练练吧。。

对此教程满意 请打 1 不满 请打 2 哈哈。

此教程只是为练习OD调试方法,无其它目的。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
新手学习下~~~~~~~~~~~
2008-3-17 14:20
0
游客
登录 | 注册 方可回帖
返回
//