魔兽maphack其实很简单

 抱歉,弄这么一个标题绝无半点狂妄之意,只是纯粹的标题作用,希望理解...

 写这篇文章也只是为了整理一下这些天弄maphack还有lancraft的所得


    看过前几篇前辈们关于maphack的文章,发现maphack真的很简单,就几个函数嘛,EnableDebugPriv()提权,再FindWindow(),OpenProcess(),然后要修改什么就WriteProcessMemory(),有什么难的?可难就难在要开启的一些选项的内存地址!像前辈们介绍的那样,用CE一个一个找,我想说是个人都会哭的(那些最先做maphack的前辈,我只能表示万分的敬佩)……

    说到这里我又不得不再次高呼"Tribute to Shadow French”,外国人的开源精神真的是没的说,虽然Shadow French的MH没有直接开源,但人家发布的程序都是赤裸裸的,没有加密啊,而且用的还是native编码,不像国内的那些高手,加了几层壳~当然了,人家的版权嘛!

    不好意思,偏题了。对于native code 的VB程序,用smart check一跟踪,你会发现世界如此美好!



http://www.securegamers.com/shadowfrench/maphack.php下载一个1.20E的版本,然后勾选一个单一选项
点击On,在Smart Check 里面已经跟踪到OnClick事件
BOOL WriteProcessMemory(
  HANDLE hProcess,
  LPVOID lpBaseAddress,
  LPVOID lpBuffer,
  DWORD nSize,
  LPDWORD lpNumberOfBytesWritten
  );
再看一下这个操作的C语言原型
  1.  BYTE data[] = {0xBF,0x0F,0x00};   
  2.  bool success = WriteProcessMemory(hopen,(LPVOID)0x6F2A3B92, &data,3, NULL);   

lpBuffer里面的内容是至关重要的,要找到0x0013F2A0里面的内容,只有用OllyDbg



从Smart Check 右边的窗口可以找到
WriteProcessMemory(HPROCESS:000006B4,DWORD:6F406B30,PTR:0013F2A0,DWORD:00000001,PTR:0013F29C)
的偏移地址为0000F609
OllyDbg打开maphack,然后找到0040F609处,发现根本不要调试,lpBuffer的内容就出来了...
0040F5DD   .  8B4D 0C                          mov     ecx, dword ptr [ebp+C]
0040F5E0   .  8D95 2CFFFFFF                    lea     edx, dword ptr [ebp-D4]
0040F5E6   .  52                               push    edx
0040F5E7   .  8D85 30FFFFFF                    lea     eax, dword ptr [ebp-D0]
0040F5ED   .  8B51 08                          mov     edx, dword ptr [ecx+8]
0040F5F0   .  6A 01                            push    1
0040F5F2   .  50                               push    eax
0040F5F3   .  52                               push    edx
0040F5F4   .  56                               push    esi
0040F5F5   .  C785 2CFFFFFF 00000000           mov     dword ptr [ebp-D4], 0
0040F5FF   .  C785 30FFFFFF 74000000           mov     dword ptr [ebp-D0], 74
0040F609   .  E8 A23CFFFF                      call    004032B0
mov     dword ptr [ebp-D0], 74   lpBuffer指向的内容就是0x74
再依葫芦画瓢,要找出所有的地址不是件难事!
这里给出我自己写的样本MH里所需要的一些功能的地址

附上我写的一个样例maphack,仅仅添加了为了方便玩仙之侠道的一些功能(准备再加上模拟按键,哈哈 我的鬼魅就无敌啦!),早期给钱方便,这个是我写MH最初动力,那个10块10块的给太麻烦了,手都点痛!
里面还加了跨网段联机功能(原理在下篇博文),= =!程序写的很乱,见笑了...

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值