416.分析调用喊话封包

2020-08-30 23:35:50 任鸟飞 243
通用代码
BYTE 通用_2字符转Byte(char ch1, char ch2) { int S; if ((ch1 >= 48) && (ch1 <= s="ch1" -="" else="" if="" ch1="">= 65) && (ch1 <= 65="" s="ch1" -="" if="" ch2="">= 48) && (ch2 <= 16="" return="" s="" ch2="" -="" else="" if="">= 65) && (ch2 <= 70)) { return S * 16 + ch2 - 65 + 10; } else { return -1; } }

任鸟飞逆向,飞郁培训官网发布

任鸟飞,郁金香等著名讲师出品的课程教程

零基础学外挂,学辅助,外挂与反外挂,逆向分析,脚本,游戏安全,软件安全


string 通用_Byte数组转十六进制字串(unsigned char p[], int len) { string hexstr = ""; for (int i = 0; i < len; i++) { char hex1; char hex2; int value = p[i]; int S = value / 16; int Y = value % 16; if (S >= 0 && S <= hex1="(char)(55" else="" if="" y="">= 0 && Y <= 9) { hex2 = (char)(48 + Y); } else { hex2 = (char)(55 + Y); } hexstr = hexstr + hex1 + hex2; } return hexstr; }




添加调用代码
#includeusing namespace std; byte 封包字节集[0x200]; voidCall_喊话封包(char a[]) { string 包头 = "E737070000000980";//包头8字节 string 包内容 = 通用_Byte数组转十六进制字串((unsigned char*)a, (int)strlen(a));//喊话内容 包内容 = 包头 + 包内容;//完整喊话封包 int len = (int)包内容.size() / 2;//字符串转成字节集 for (int i = 0; i < len; i++) { 封包字节集[i] = 通用_2字符转Byte(包内容[2 * i], 包内容[2 * i + 1]); } QWORD A = (QWORD)&封包字节集;//改写封包参数 *(byte*)(A + 6) = (byte)(strlen(a) / 2); if (strlen(a) % 2 == 1)*(byte*)(A + 7) = (byte)0x80; DWORD 包长 = 8 + (DWORD)strlen(a);//计算包长 Call_明文包((QWORD)封包字节集, 包长); }

分析 喊话封包的结构

飞郁网络培训有限公司




到这里我们可以完全的hook到WOW的所有明文封包并且发送出去了




电话咨询
QQ客服