---------------------------------------20151008---------------------------------------
还有7个小伙伴未领取授权,请尽快领取.
支持插件的免费版也已放出,需要的进交流群下载
活动结束,根据回复总数,送出18个授权,抽取结果如下
5 daiviswang
18 gjianbo
26 lhglhg
34 网瘾犯了
40 小豆芽
56 koflfy
60 china
63 muma
77 leochao
86 止战之殇wuha
99 lylxd
112 宇宙浪人
126 KuNgBiM
131 ouyangtian
135 rrrfff
143 shkqiang
154 会飘的云
169 xiaoboy
请联系QQ:33078071 或加交流Q群: 101564837
接入教程(某游戏协议破解及完整可编译插件源码)-->http://bbs.pediy.com/showthread.php?t=204159
---------------------------------------20151008---------------------------------------干货分享:游戏漏洞挖掘概述 http://bbs.pediy.com/showthread.php?p=1389781#post1389781
协议工具:CoolCmd
所有游戏公司均可免费获得2个永久授权
个人获取授权新Q群:101564837
论坛:www.ijiemi.cn 爱解密论坛(备案中)
特色:
1.把修改测试、屏蔽测试、时序逻辑测试、模糊测试等完备的测试思想集成在界面上,
简单操作即可完成优秀、高覆盖度的测试.
2.支持对拦截的数据进行Hex和Tree两种解析
3.支持自写Lua脚本测试,以便实现一些复杂的测试用例
4.采用通用注入方式,同时适用于内网客户端以及外网加壳加保护客户端.
5.支持特征码扫描,并对特征码进行封装,除非目标软件更新较大使特征码失效,否则一劳永逸不用更新
市面上绝大多数网游数年都不用更新插件
6.提供多套便捷的HOOK封装
7.基于网络和模块化设计,任何有开发基础的人只需按示例代码重写插件模块,即可轻松接入(开发语言不限)
以网游的协议工具为例
⑴无论自研游戏还是代理游戏,均可快速接入
自研游戏,可通过工具API快捷接入.
代理游戏,可在逆向分析基础上通过工具API实现接入,支持穿透各式保护系统、加密算法、代码校验.
⑵熟练的开发者可接入维护几十款各种类型游戏.
⑶同一网游公司的多款自研游戏,通常一个插件即可通杀.
8.插件模块中可动态创建勾选框控制新增HOOK函数,可以自由重载HOOK的处理
无论是hook封包,还是Hook Lua、虚幻三等脚本,或者任何您感兴趣的函数,均可胜任.
当然,不局限用于游戏,可以是任何一款你想处理的Window软件、APP等.
9.工具全面支持WinXp/Vista/Win7/Win8 32位/64位系统
已支持Window平台、安卓手机平台目标软件的插件开发.
后续会在操作界面不变的基础上,支持更多平台.
插件接口(开发者专用,普通使用者无需了解):
Window端__stdcall调用约定,Android端默认调用约定
1.初始化接口
typedef void (__stdcall *TCmdApiInit)(void* Param);
参数1 结构体指针,用户获取Api实际接口指针
2.释放接口
typedef void (__stdcall *TCmdApiUnInit)();
无参数
3.特征码扫描接口
typedef unsigned int (__stdcall *TCmdApiMemSigScan)(char* cModName,char* cSigCode);
参数1 所在模块名
参数2 特征码字符串
返回值 成功返回扫描结果,失败返回0
特征码格式:”[1]SendPackAdr,C1 EA ?? ?? A8 ?? 07,8,0,4”
参数1 方括号内的序号,后面为名称,仅用于标志在代码中,自己可以看明白意
参数2 用于扫描的的实际特征码,匹配符为??
参数3 一个10或16进制的数字,用于扫描到后,去指定偏移的数据
记做x+y 如0x00476300 + 8 此值可以是负数
参数4 取数据的方式,目前分3种格式
0 即取x+y,此时参数5无效
1 即取[x+y],即取x+y内存中的值,此时参数5有效,根据5取指定字节个数数值
2 如x+y处的汇编代码是call z,即取z值,此时参数5无效
参数5 1 取1个字节
2 取2个字节
4 取4个字节
4.创建CheckBox接口
typedef bool (__stdcall *TCmdApiCreateCheckBox)(char*cCaption,
TMyCheckBoxProc onClick,bool bCheck);
参数1 表示CheckBox显示的字符串,可填写汉字等
参数2 表示CheckBox对应控制函数
参数3 表示CheckBox初始化时是否选中
5.滤境解析接口
typedef bool (__stdcall *TCmdApiFilterOper)(char* pData,int iDataLen,unsigned char byOrd,PFilterRet pRel);
参数1 数据内存地址
参数2 数据字节数
参数3 对应的CheckBox解析序号,从0开始
参数4 获取封包解析判断返回值的结构指针
6.写HexLog接口
typedef void (__stdcall *TCmdApiWriteLogProc)(char* sType,char* sTypeEx,char* pData,int iDataLen,int iSock);
参数1 对应主界面显示列表的备注列
参数2 对应主界面显示列表的滤镜解析列
参数3 对应Hex数据内存起始地址
参数4 对应Hex数据长度
参数5 用于屏蔽CoolCmd自身通讯封包的显示
如果是send 和 recv的Log,需要填写对应的Sock,其他填0即可
7.设置执行指令函数接口
typedef void (__stdcall *TCmdApiExecuteCmdProc)(char* sHexCmd);
参数1 要执行的Hex指令
typedef void (__stdcall *TCmdApiSetFunc_ExecuteCmd)(TCmdApiExecuteCmdProcpFunc);
参数1 自定义的执行指令函数
同时处理多组加解密时,可根据需要在记录HexLog时加入标志,以便在同一个自定义的执行指令函数中根据标志区别执行
8.标准Hook接口
typedef void (__stdcall *TCmdApiHookCodeNormal)(void* CodeAdr,void* NewFunc,void* OldFunc);
参数1 指向要hook的函数地址
参数2 自定义替代函数
参数3 成功则返回原执行函数
9.标准UnHook接口
typedef bool (__stdcall *TCmdApiUnHookCodeNormal)(void* nextHook);
参数1必填 填写HOOK返回的OldFunc指针
10.特殊Hook接口(直接寄存器操作,方便用于代码被VM的情况)
typedef void* (__stdcall *TCmdApiHookCodeEx)(void* CodeAdr,void* NewFunc);
参数1 指向要hook的函数地址
参数2 自定义替代函数
返回指针用于UnHookCodeEx
11.特殊UnHook接口
typedef void (__stdcall *TCmdApiUnHookCodeEx)(void* OldFunc);
参数1 HookCodeEx返回的指针
12.设置发送Sock接口
typedef void (__stdcall *TCmdApiSetSendSock)(int iSock);
参数1 要设置的Sock值
13.获取设置的发送Sock接口
typedef int (__stdcall *TCmdApiGetSendSock)();
返回值 设置的发送Sock值
14.判断是否是工具Sock
typedef bool (__stdcall *TCmdApiIsToolSock)(int iSock);
参数1 要判断的Sock值
返回值 如果相同返回true,否则返回false
示例图,各种途径已实际接入上百款网游
凡在此贴中支持回复的,活动结束后 随机赠送10个永久个人授权
欢迎大牛去爱解密论坛发技术贴,论坛8月20日刚开放,初期精华会很容易的
CoolCmd使用指南.part1.rar
CoolCmd使用指南.part2.rar
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)