10 2011 档案
5646
摘要:unit Dllform;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, RzBckgnd, ExtCtrls, RzPanel, RzTabs, RzButton, StdCtrls, RzEdit, Mask, RzLstBox, RzLabel, RzCmboBx, RzRadChk;type TForm1 = class(TForm) RzGroupBox1: TRzGroupBox; RzSeparator1: TRzS... 阅读全文
posted @ 2011-10-22 19:27 巅枫 阅读(1912) 评论(0) 推荐(0)
在内存中修改数据的网游外挂
摘要:现在很多游戏都是把一些信息存入内存单元的,那么我们只需要修改具体内存值就能修改游戏中的属性,很多网络游戏也不外于此 现在很多游戏都是把一些信息存入内存单元的,那么我们只需要修改具体内存值就能修改游戏中的属性,很多网络游戏也不外于此。 曾几何时,一些网络游戏也是可以用内存外挂进行修改的,后来被发现后,这些游戏就把单一内存地址改成多内存地址校验,加大了修改难度,不过仍然可以通过内存分析器可以破解的。诸如“FPE”这样的软件便提供了一定的内存分析功能。 “FPE”是基于内存外挂的佼佼者,是家喻户晓的游戏修改软件。很多同类的软件都是模仿“FPE”而得到玩家的认可。而“FPE”实现的技术到现在都... 阅读全文
posted @ 2011-10-18 19:05 巅枫 阅读(7138) 评论(0) 推荐(0)
游戏外挂的编写原理和思路
摘要:游戏外挂的编写原理(一) 一、 前言 所谓游戏外挂,其实是一种游戏外辅程序,它可以协助玩家自动产生游戏动作、修改游戏网络数据包以及修改游戏内存数据等,以实现玩家用最少的时间和金钱去完成功力升级和过关斩将。虽然,现在对游戏外挂程序的“合法”身份众说纷纭,在这里我不想对此发表任何个人意见,让时间去说明一切吧。 不管游戏外挂程序是不是“合法”身份,但是它却是具有一定的技术含量的,在这些小小程序中使用了许多高端技术,如拦截Sock技术、拦截API技术、模拟键盘与鼠标技术、直接修改程序内存技术等等。本文将对常见的游戏外挂中使用的技术进行全面剖析。 二、认识外挂 游戏外挂的历史可以追溯到单机版游戏... 阅读全文
posted @ 2011-10-18 19:03 巅枫 阅读(33563) 评论(0) 推荐(0)
08授人以鱼不如授人以渔●找江湖打坐call视频演示
摘要:作者:1135时间:2009-08-24大家好,我是广海里的1135我还是新手,有错的地方大家包容一下。今天刚刚下的广海的桌面,看着特酷的哦。呵呵...这里给大家演示的找江湖里的打坐的call,是最最简单的了,为什么涅?因为江湖里的打坐call是一个无参call,无参call是什么?就是光棍一条,你一颗子弹就杀他全家且无后顾之忧的(在游戏无驱动保护的情况下)。有参call就麻烦了,不但要理清call的人际关系,还要平衡好各路人马,有一点点的不周到,over的绝对是你。好了,看看游戏版本:30030,今天是星期天了。od载入游戏...bpWSASend下断断下了再==进游戏ctrl+c打坐来多次 阅读全文
posted @ 2011-10-17 12:03 巅枫 阅读(543) 评论(0) 推荐(0)
07授人以鱼不如授人以渔●(HOOK API的概念及应用 HOOK篇一)
摘要:作者:重楼时间:2009-09-01前言:让程序按照自己的代码来走,这是个很有意思的事情。HOOK其实是一个很有意思的东西,他能让你在枯燥的外挂学习中感受到一丝乐趣HOOK的原理:修改函数的首地址跳转到你想执行的代码然后返回。这就好比正常的程序就像一个汽车在公路上行驶(代码正常运行),而这个时候警察在半路设下了一个路障(修改原始地址JMP我们的代码地址),要求汽车靠边停靠(修改原始程序代码,JMP地址跳转到我们的代码区),这个时候汽车过来了,看到路障并且停靠在右边(跳转到我们的代码区了)并且接受检查(执行我们的代码),恢复路面(将修改的代码复原),检查完毕后(比如说代码执行了数据拷贝,或者一些 阅读全文
posted @ 2011-10-17 12:02 巅枫 阅读(2841) 评论(0) 推荐(0)
06授人以鱼不如授人以渔●(CALL的调用 找CALL篇四)
摘要:作者:重楼时间:2009-08-23目标:还是那个模拟器今天我加了封包加密,如图下.看看代码有什么变化,并且调用加密和发送CALL老套路,用OD加载模拟器,返回6层到发送封包我们对比上次找的发现多了一个CALL这个应该就是封包加密()了我们直接到那个CALL看看将上面那个CALL所得到的完整封包从出栈到EAX将封包指针地址存放到[ebp-4]也就是说第二个堆栈地址(12F5B8)*这里[EBP-4]为什么会等于堆栈地址12F5B8呢?因为这里在一开始就给EBP赋值了ESP堆栈指针所以说给EBP赋值也就是给堆栈赋值.将[EBP-4]的指针地址压入堆栈压入堆栈后堆栈的变化如上加密CALL后返回加密 阅读全文
posted @ 2011-10-17 12:02 巅枫 阅读(4302) 评论(0) 推荐(0)
05授人以鱼不如授人以渔●(模拟器CALL汇编代码分析 找CALL篇三)
摘要:作者:重楼时间:2009-08-21注明:本教程须自行操作方可真正理解上次我们分析了sendrecv函数的实现今天我们还是用那个模拟器源代码分析下那个CALL模拟器界面:加血按钮的源代码:下面的这个CALL应该就是上面那个加血功能的汇编代码了对比下有什么相同之处断在CALL的时候堆栈的状况好了我们来分析下子程序发送封包的源代码我们进入到CALL里面来对照一下选中call0040A875按回车(或者运行到此处按F7步进)呵呵我们一点一点来分析.下面是call0040A875里的汇编代码第一个CALL是a=包头+数据第三个CALL是客户.发送数据(a)我们进到第一个CALL里面来看看易语言是如何把 阅读全文
posted @ 2011-10-17 12:01 巅枫 阅读(1532) 评论(0) 推荐(0)
04授人以鱼不如授人以渔●(send和recv调用与实现 CALL篇二)
摘要:作者:重楼时间:2009-08-23======================send函数的调用====================P:用模拟器拿到当教程,是因为模拟器比较简单,讲一些原理方面的东西比较好.我们学习的是原理而不是方法,很多人抱怨说模拟器根本就没用,其实不然,模拟器给我们提供了学习原理最好的途径.不要只学习方法,比如说下bpsend然后返回,然后就急冲冲的去找游戏里的CALL,这样你会摔的很狠.你要懂得为什么要这样做,游戏是怎么调用的?算法结构如何?系统是怎么调用函数的?等等的一切,等你了解之后自然而然就会恍然大悟,当然一切的基础就是汇编基础.上回说了,游戏大部分都是用se 阅读全文
posted @ 2011-10-17 12:00 巅枫 阅读(5322) 评论(0) 推荐(0)
03授人以鱼不如授人以渔●(找CALL篇一)
摘要:作者:重楼时间:2009.08.20目标:游戏找CALL练习实例ONE记:看这篇找CALL文章,并不是说要学会它的操作步骤,而是学会找步骤的原理,只有懂得原理,才算真正会了.不要因为模拟器的简单而忽略这篇文章,也不要因为曾经写过这个模拟器的挂而忽略这篇文章.希望这篇文章能给你带来帮助.这是一位大牛做的模拟器器,今天就来找这个模拟器的CALL用OD加载模拟器然后按F9运行下bpsend断点P:为什么要下send断点?*send是微软提供的一个API函数,可以用来发送数据包.绝大部分游戏都是用这个函数来发包的,其他还有WSASendsendtoWSASendto==send对应的收包函数是recv 阅读全文
posted @ 2011-10-17 11:59 巅枫 阅读(2819) 评论(0) 推荐(1)
01授人以鱼不如授人以渔●什么是基址
摘要:作者:topdog本人成长于广海,本着全心支持广海发展,写了以下教程!!不能很好的表达要说的知识,也不知道能否教明白。请读者纠正,谢谢。下文参考过同名贴子,部份语言表达完全相同。由于原文以C作解释,但现在外挂新人中用VB的稍多点。故以VB做解释。参考贴地址:http://qun.51.com/sxsykj/topic.php?pid=2561全局基址:它是所有地址的基础。人物基址:【全局基址】+某个偏移值1人物各个属性地址:【人物基址】+某个偏移值1技能基址:【全局基址】+某个偏移值2包裹基址:【全局基址】+某个偏移值3怪物基址:【全局基址】+某个偏移值4物品基址:【全局基址】+某个偏移值5也 阅读全文
posted @ 2011-10-17 09:51 巅枫 阅读(4132) 评论(0) 推荐(1)
02授人以鱼不如授人以渔●(基址的寻找)
摘要:作者:重楼时间:2009.08.20游戏例一游戏名:刀剑英雄2现在当前生命是273我们在CE里查找273搜出一大堆先不管他我们让生命变动一下被怪打了几下血变少了这个时候我们发现血恢复的很快根本来不及找这个时候我们可以用更改过的数值来查找*因为相对于第一次找的273的值来说我们目前的血值已经改变了.好了还是有一大堆地址.这个时候我们发现有一个绿色的地址.并且他的值是当前血的值,并且随之变化.*绿色的地址就是基址,这里面的数值不会因为游戏重开的原因而发生改变.好了当前血的基址已经找到了.并且重新打开游戏也不会发生改变.游戏例二游戏名:星尘传说我们还是来找当前血的基址当前血的值是88在CE里搜索88 阅读全文
posted @ 2011-10-17 09:50 巅枫 阅读(1938) 评论(0) 推荐(1)
WinAPI: WriteProcessMemory 写入数据到指定进程内存
摘要:BOOL WriteProcessMemory(HANDLE hProcess, // 进程的句柄(可由OpenProcess函数返回)LPVOID lpBaseAddress, // 进程地址LPVOID lpBuffer, //数据当前存放地址DWORD nSize, //数据的长度LPDWORD lpNumberOfBytesWritten //指定要写入的数据类型); //返回值:非零值... 阅读全文
posted @ 2011-10-08 14:56 巅枫 阅读(2713) 评论(0) 推荐(0)
武林外传中读取角色的血值
摘要:主单元:unit mainform;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,GameFunction;type TForm1 = class(TForm) edtCurBlood: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public... 阅读全文
posted @ 2011-10-08 13:49 巅枫 阅读(710) 评论(0) 推荐(0)
WinAPI: ReadProcessMemory 读取指定进程内存数据
摘要:函数功能描述:该函数用来读取指定进程的空间的数据,此空间必须是可以访问的,否则读取操作会失败!函数原型BOOL ReadProcessMemory(HANDLE hProcess, // 目标进程句柄LPCVOID lpBaseAddress, // 读取数据的起始地址LPVOID lpBuffer, // 存放数据的缓存区地址DWORD nSize, // 要读取的字节数LPDWORD lpNumberOfBytesRead // 实际读取数存放地址);参数hProcess 目标进程的句柄,该句柄必须对目标进程具有PROCESS_VM_READ 的访问... 阅读全文
posted @ 2011-10-08 13:37 巅枫 阅读(8715) 评论(0) 推荐(0)
【外挂】API函数列表【链接】
摘要:1.WinAPI: FindWindow、FindWindowEx - 查找窗口2.WinAPI: GetWindowThreadProcessId - 获取指定窗口的进程 ID 或线程 ID3.WinAPI: OpenProcess、GetExitCodeProcess、TerminateProcess (测试强制关闭 OICQ)4.WinAPI: ReadProcessMemory 读取指定进程内存数据外挂示例:武林外传中读取角色的血值5.WinAPI: WriteProcessMemory 写入数据到指定进程内存 阅读全文
posted @ 2011-10-08 13:28 巅枫 阅读(536) 评论(0) 推荐(0)