跑跑2.0之后双开开发思路

社区服务
高级搜索
猴岛论坛跑跑卡丁车跑跑2.0之后双开开发思路
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
19个回复

[资源共享]跑跑2.0之后双开开发思路

楼层直达
fg2q1q3q

ZxID:6192382

等级: 上校
举报 只看楼主 使用道具 楼主   发表于: 2012-06-26 0
跑跑2.0之后双开开发思路
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Step1: 在“BOOL MyPatchClassName()”函数之前加入如下内容:
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
DWORD g_dwRet;
const BYTE g_pZeroCheck[] = {0x16,0x67,0x54,0x89, 0x7c,0x00,0x00,0x00};
const BYTE g_pCheckFlag[] = {0x50,0x63,0x45,0x78,0x74,0x72,0x61,0x43,0x68,0x65,0x63,0x6B,0x00,0x00,0x00,0x00};

void __stdcall MyRecvPcExtraCheck(PBYTE pThis, PVOID pBufStack)
{
MyDbgPrint("[+MyRecvPcExtraCheck+] in, patch it!");
//强制修改了接收到的PcExtraCheck报文,该8字节为协议字后的8字节,固定格式
//实际是屏蔽了后面多组264字节,不再入vector. 则下文不再汇报本机特征id
memcpy(pThis + 16, g_pZeroCheck, sizeof(g_pZeroCheck));
}

__declspec(naked) void __stdcall MyAsmRecvPcExtraCheck(PVOID pBufStack)
{
__asm{
pop g_dwRet //弹出返回地址
push ecx //压入thiscall的this
call MyRecvPcExtraCheck //实际两形参调用
jmp g_dwRet //返回原调用方
}
}


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Step2: 在“BOOL MyPatchClassName()”函数最后,即“return TRUE;”语句之前,加入如下内容
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//pp为vc7.1编译,特征串及地址均为4字节对齐,快速搜。位于数据段,可直接写
for ( pSearch = pSearchBegin ; pSearch < pSearchBegin + dwSizeOfData - sizeof(g_pCheckFlag) ; pSearch+= 4){
if ( !memcmp(pSearch, g_pCheckFlag, sizeof(g_pCheckFlag)) ){
PDWORD pVirtual = (PDWORD)( pSearch + sizeof(g_pCheckFlag) + 4*4 );
MyDbgPrint("[+] find PcExtraCheck pVirtual addr:0x%08x, Fun:0x%08x",pVirtual,*pVirtual);
*pVirtual = (DWORD)MyAsmRecvPcExtraCheck; //替换PcExtraCheck收包处理的虚函数为自己的.
MyDbgPrint("[+] now PcExtraCheck pVirtual addr:0x%08x, Fun:0x%08x",pVirtual,*pVirtual);
break;
}
}

return TRUE; //原来最后的语句
[color=#ff0000][b]以上内[size=4]容源[/size]自黑黑的脸蛋,期待黑玄等大神在2.0之后能有可用的双开作品
目前已在服务端检测,不允许同一台pc运行两个pp.



流程:

   用户刚登录成功后,

   服务端发,扩展检查报文,要求客户端提供机器id.

-> 客户端收,根据cpuid、系统盘的卷序列号及网卡mac地址,生成唯一的用户机器id

-> 客户端发,加码处理用户机器id,发送给服务端

-> 服务端收,检查目前所有在线用户,是否有该机器id,有则关闭套接字,强制多开的客户端下线。



patch原理:

  客户端收到扩展检查报文后,会调用PcExtraCheck类处理,转换报文到类中,

  PcExtraCheck类虚函数表的第4个函数负责该转换

  特征串定位查找到该虚函数表,替换到自己的函数。

  patch原要求提供机器id为空请求。[/b][/color]
hua951719

ZxID:6974986

等级: 中将
走自己的路,让别人跟你走......
举报 只看该作者 沙发   发表于: 2012-06-26 0
路过  看看代码。。。
我想要怒放的生命!!!!
拈花者

ZxID:13363744

等级: 元帅
鲜花往往不属于赏花的人,而属于牛粪……
举报 只看该作者 板凳   发表于: 2012-06-26 0
小白表示看不懂……
小撸怡情,大撸伤身,强撸灰飞烟灭!
先撕长裙,后撕短裤,百撕不得骑姐!
TALK゛BANG"念

ZxID:17880315

等级: 元老
守正出奇.

举报 只看该作者 地板   发表于: 2012-06-26 0
学习啊
倩影妖娆

ZxID:5605986

等级: 元老
配偶: 白衣素雅
          再见纪念馆     再见生活区          

举报 只看该作者 4楼  发表于: 2012-06-26 0
完全看不懂的说~~
傻童

ZxID:18177220

等级: 少将

举报 只看该作者 5楼  发表于: 2012-06-26 0
擦,好专业的样子,不过看来2.0还是会有双开的
丨淡丶泊丨

ZxID:17667478

等级: 中将
好男人就是反复睡一个姑娘,一睡就睡一辈子!
举报 只看该作者 6楼  发表于: 2012-06-26 0
  

际遇之神

奖励

好朋友为十丨口丬口过生日,获得5DB1生日卡

渊栀

ZxID:9088765

等级: 元老

举报 只看该作者 7楼  发表于: 2012-06-26 0
专业人士、
梦醒无痕〃°

ZxID:18355662

等级: 上将
Namas  Amitabha!       My spirit flies to you!
举报 只看该作者 8楼  发表于: 2012-06-26 0
小白表示看不懂……
梦里明明有六趣,觉后空空无大千。
Golden_notes

ZxID:14948336

等级: 大将
快看,飞碟!
举报 只看该作者 9楼  发表于: 2012-06-26 0
脸蛋的双开,有一个插件也可以用,就是说开启第二个时候用到的一个插件..无赖辅助那个作者用了。。就是不给我~

际遇之神

奖励

版主上厕所忘带手纸,weisuowulai高价转让手纸,得5DB

hx21133

ZxID:18331780

等级: 新兵
举报 只看该作者 10楼  发表于: 2012-07-12 0
DB辉煌

ZxID:10782609

等级: 准尉

举报 只看该作者 11楼  发表于: 2012-07-12 0
双开还能用呀

hccmdyf

ZxID:12097517

等级: 上士
举报 只看该作者 12楼  发表于: 2012-07-13 0
没刀了
苏斐≈

ZxID:18871725

等级: 禁止发言
配偶: 苏三≈

举报 只看该作者 13楼  发表于: 2012-07-13 0
双开还能用啊
混混^-^

ZxID:18696597

等级: 少将
举报 只看该作者 14楼  发表于: 2012-07-13 0
纯技术流啊
niaohl

ZxID:17975662

等级: 准尉
举报 只看该作者 15楼  发表于: 2012-07-16 0
双开头疼。。。。
niaohl

ZxID:17975662

等级: 准尉
举报 只看该作者 16楼  发表于: 2012-07-16 0
2.0双开出来没啊
烟灰o丶

ZxID:8718894

等级: 少尉
    ♠ ♣ ♥ ♦

举报 只看该作者 17楼  发表于: 2012-07-16 0
paoasd

ZxID:13629101

等级: 少将
举报 只看该作者 18楼  发表于: 2012-07-16 0
TC服务器是靠IP还是什么的来确定一个机器是否多开的 ??
  &nb

ZxID:17740149

等级: *
举报 只看该作者 19楼  发表于: 2012-07-16 0
看看
« 返回列表
发帖 回复