12558网页游戏私服论坛

 找回密码
 立即注册
游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
攻城掠地-仿官 全新玩法,觉醒武将,觉醒技能 每周新区 经典复古版本,长久稳定 进入游戏
巅峰新版攻 攻城掠地公益服 攻城掠地SF 新兵种、新武将(兵种) 进入游戏
攻城掠地公 散人玩家的天堂 新开 进入游戏
改版攻城掠 上线即可国战PK 稳定新区 全新改版,功能强大 进入游戏
少年江山 高福利高爆率 刚开一秒 江湖水落潜蛟龙 进入游戏
太古封魔录 开服送10亿钻石 福利多多 不用充钱也可升级 进入游戏
神魔之道 签到送元宝 稳定开新区 送豪华签到奖励 进入游戏
神奇三国 统帅三军,招揽名将 免费玩新区 激情国战,征战四方 进入游戏
龙符 三日豪礼领到爽 天天开新区 助你征战无双 进入游戏
王者之师 免费领豪华奖励 免费玩新区 6元送6888元宝 进入游戏
查看: 310|回复: 0

【原创】CE教程:逃跑吧少年过非法进程检测之干掉闪退(三)

[复制链接]

71

主题

71

帖子

152

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
152
发表于 2020-9-17 18:23:17 | 显示全部楼层 |阅读模式
上篇教程:

【原创】CE教程:逃跑吧少年过非法进程检测之绕过闪退(二)

前言

经过前两篇教程的学习,相信大家对于逃跑吧少年的非法进程检测有了一些了解,但是这里还是需要夸大下。教程学的是方法是思路,要知道闻一知十,不要困死在教程例子这一个游戏之中。
导入与准备

如同上篇教程末了所说,如果一定要修改跳转那么我们怎么处理会触发的闪退呢?在教程开始之前我们再来简单认识一个函数。
ExitProcess
ExitProcess 结束调用的进程及其所有的线程
首先我们已知,直接修改跳转会触发游戏的其他保护导致游戏闪退,即游戏进程退出,那么我们要想防止它退出就可以从有关结束进程的函数入手。
[注:可以达到结束进程的方法有许多,这里专指本游戏中此处闪退调用的方法]
开始

前面教程中已有的步调这里会举行一些跳过,我们直奔主题。
首先,CE查看内存 → 右键 → 转到地址 → 填入ExitProcess → 点击确定。

如图所示,这就是ExitProcess函数。

由于一旦调用这函数游戏进程就会退出,为了方便测试我们可以把函数头部mov eax,eax修改为ret,这样做的缘故起因可以避免游戏退出,但是也很可能会导致运行堕落。
但是在这个游戏中我们可以这样做,至于缘故起因后面就知道了。

F5在ret处下个断点。

好了 到此为止,我们的准备工作就做好了。下面按照教程(一)中的方法,0F86 59060000 - jbe snake_pc_helper.dll+118127为 E9 5A060000           - jmp snake_pc_helper.dll+118127

经过一段时间的等待,游戏闪退终于触发了。由于我们已经把头部修改为了ret 这里我们直接按下F8就可以回到调用退出的地方。

如图所示,这就是调用ExitProcess函数让游戏闪退的地方。

这里有必要复制下代码
snake_pc_helper.dll+13FAF0 - 55                    - push ebpsnake_pc_helper.dll+13FAF1 - 8B EC                 - mov ebp,espsnake_pc_helper.dll+13FAF3 - 81 EC 60010000        - sub esp,00000160 { 352 }snake_pc_helper.dll+13FAF9 - 53                    - push ebxsnake_pc_helper.dll+13FAFA - 56                    - push esisnake_pc_helper.dll+13FAFB - 57                    - push edisnake_pc_helper.dll+13FAFC - 8D BD A0FEFFFF        - lea edi,[ebp-00000160]snake_pc_helper.dll+13FB02 - B9 58000000           - mov ecx,00000058 { 88 }snake_pc_helper.dll+13FB07 - B8 CCCCCCCC           - mov eax,CCCCCCCC { -858993460 }snake_pc_helper.dll+13FB0C - F3 AB                 - repe stosd snake_pc_helper.dll+13FB0E - A1 E017C574           - mov eax,[snake_pc_helper.dll+3617E0] { (-1679270599) }snake_pc_helper.dll+13FB13 - 33 C5                 - xor eax,ebpsnake_pc_helper.dll+13FB15 - 89 45 FC              - mov [ebp-04],eaxsnake_pc_helper.dll+13FB18 - 83 7D 08 01           - cmp dword ptr [ebp+08],01 { 1 }snake_pc_helper.dll+13FB1C - 0F85 46010000         - jne snake_pc_helper.dll+13FC68snake_pc_helper.dll+13FB22 - 83 3D 3438C574 00     - cmp dword ptr [snake_pc_helper.dll+363834],00 { (2620),0 }snake_pc_helper.dll+13FB29 - 75 25                 - jne snake_pc_helper.dll+13FB50snake_pc_helper.dll+13FB2B - 8B F4                 - mov esi,espsnake_pc_helper.dll+13FB2D - 8D 45 F4              - lea eax,[ebp-0C]snake_pc_helper.dll+13FB30 - 50                    - push eaxsnake_pc_helper.dll+13FB31 - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FB33 - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FB35 - 68 15A89E74           - push snake_pc_helper.check_process_unique+384 { (233) }snake_pc_helper.dll+13FB3A - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FB3C - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FB3E - FF 15 B8A8C574        - call dword ptr [snake_pc_helper.dll+36A8B8] { ->kernel32.CreateThread }snake_pc_helper.dll+13FB44 - 3B F4                 - cmp esi,espsnake_pc_helper.dll+13FB46 - E8 C42AFCFF           - call snake_pc_helper.exit_game+893snake_pc_helper.dll+13FB4B - A3 3438C574           - mov [snake_pc_helper.dll+363834],eax { (2620) }snake_pc_helper.dll+13FB50 - A1 2838C574           - mov eax,[snake_pc_helper.dll+363828] { (1583811981) }snake_pc_helper.dll+13FB55 - 0B 05 2C38C574        - or eax,[snake_pc_helper.dll+36382C] { (0) }snake_pc_helper.dll+13FB5B - 75 0D                 - jne snake_pc_helper.dll+13FB6Asnake_pc_helper.dll+13FB5D - 68 2838C574           - push snake_pc_helper.dll+363828 { (1583811981) }snake_pc_helper.dll+13FB62 - E8 B9F9FFFF           - call snake_pc_helper.dll+13F520snake_pc_helper.dll+13FB67 - 83 C4 04              - add esp,04 { 4 }snake_pc_helper.dll+13FB6A - 8D 45 E4              - lea eax,[ebp-1C]snake_pc_helper.dll+13FB6D - 50                    - push eaxsnake_pc_helper.dll+13FB6E - E8 ADF9FFFF           - call snake_pc_helper.dll+13F520snake_pc_helper.dll+13FB73 - 83 C4 04              - add esp,04 { 4 }snake_pc_helper.dll+13FB76 - 8B 45 E4              - mov eax,[ebp-1C]snake_pc_helper.dll+13FB79 - 2B 05 2838C574        - sub eax,[snake_pc_helper.dll+363828] { (1583811981) }snake_pc_helper.dll+13FB7F - 8B 4D E8              - mov ecx,[ebp-18]snake_pc_helper.dll+13FB82 - 1B 0D 2C38C574        - sbb ecx,[snake_pc_helper.dll+36382C] { (0) }snake_pc_helper.dll+13FB88 - 89 45 D4              - mov [ebp-2C],eaxsnake_pc_helper.dll+13FB8B - 89 4D D8              - mov [ebp-28],ecxsnake_pc_helper.dll+13FB8E - 83 7D D8 00           - cmp dword ptr [ebp-28],00 { 0 }snake_pc_helper.dll+13FB92 - 7F 1E                 - jg snake_pc_helper.dll+13FBB2snake_pc_helper.dll+13FB94 - 7C 06                 - jl snake_pc_helper.dll+13FB9Csnake_pc_helper.dll+13FB96 - 83 7D D4 3C           - cmp dword ptr [ebp-2C],3C { 60 }snake_pc_helper.dll+13FB9A - 73 16                 - jae snake_pc_helper.dll+13FBB2snake_pc_helper.dll+13FB9C - 83 3D E835C574 00     - cmp dword ptr [snake_pc_helper.dll+3635E8],00 { (2628),0 }snake_pc_helper.dll+13FBA3 - 74 0D                 - je snake_pc_helper.dll+13FBB2snake_pc_helper.dll+13FBA5 - 83 3D 3438C574 00     - cmp dword ptr [snake_pc_helper.dll+363834],00 { (2620),0 }snake_pc_helper.dll+13FBAC - 0F85 AF000000         - jne snake_pc_helper.dll+13FC61snake_pc_helper.dll+13FBB2 - 68 4CEDBF74           - push snake_pc_helper.dll+30ED4C { ("client.dmm_pc.anti_cheat.ret.ret_3:1|c") }snake_pc_helper.dll+13FBB7 - 8D 4D AC              - lea ecx,[ebp-54]snake_pc_helper.dll+13FBBA - E8 A0D0FBFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+13FBBF - 8B 45 D8              - mov eax,[ebp-28]snake_pc_helper.dll+13FBC2 - 50                    - push eaxsnake_pc_helper.dll+13FBC3 - 8B 4D D4              - mov ecx,[ebp-2C]snake_pc_helper.dll+13FBC6 - 51                    - push ecxsnake_pc_helper.dll+13FBC7 - 68 24EDBF74           - push snake_pc_helper.dll+30ED24 { ("this guy maybe cheat , cost = %ld") }snake_pc_helper.dll+13FBCC - E8 78CDFBFF           - call snake_pc_helper.notify_hall_game_status_changed+9DDsnake_pc_helper.dll+13FBD1 - 83 C4 0C              - add esp,0C { 12 }snake_pc_helper.dll+13FBD4 - 8D 4D AC              - lea ecx,[ebp-54]snake_pc_helper.dll+13FBD7 - E8 AEF0FBFF           - call snake_pc_helper.async_request_if_can_join_room+44Csnake_pc_helper.dll+13FBDC - 50                    - push eaxsnake_pc_helper.dll+13FBDD - E8 5A2AFCFF           - call snake_pc_helper.Sendsnake_pc_helper.dll+13FBE2 - 83 C4 04              - add esp,04 { 4 }snake_pc_helper.dll+13FBE5 - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FBE7 - 8D 8D B0FEFFFF        - lea ecx,[ebp-00000150]snake_pc_helper.dll+13FBED - E8 A49EFBFF           - call snake_pc_helper.dll+F9A96snake_pc_helper.dll+13FBF2 - 8D 85 B0FEFFFF        - lea eax,[ebp-00000150]snake_pc_helper.dll+13FBF8 - 50                    - push eaxsnake_pc_helper.dll+13FBF9 - B9 1036C574           - mov ecx,snake_pc_helper.dll+363610 { (0) }snake_pc_helper.dll+13FBFE - E8 84D0FBFF           - call snake_pc_helper.notify_hall_game_status_changed+D1Bsnake_pc_helper.dll+13FC03 - 88 85 A7FEFFFF        - mov [ebp-00000159],alsnake_pc_helper.dll+13FC09 - 8D 8D B0FEFFFF        - lea ecx,[ebp-00000150]snake_pc_helper.dll+13FC0F - E8 634EFCFF           - call snake_pc_helper.process_protect+938snake_pc_helper.dll+13FC14 - 0FB6 8D A7FEFFFF      - movzx ecx,byte ptr [ebp-00000159]snake_pc_helper.dll+13FC1B - 85 C9                 - test ecx,ecxsnake_pc_helper.dll+13FC1D - 74 29                 - je snake_pc_helper.dll+13FC48snake_pc_helper.dll+13FC1F - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FC21 - 8D 8D C8FEFFFF        - lea ecx,[ebp-00000138]snake_pc_helper.dll+13FC27 - E8 6A9EFBFF           - call snake_pc_helper.dll+F9A96snake_pc_helper.dll+13FC2C - 8D 85 C8FEFFFF        - lea eax,[ebp-00000138]snake_pc_helper.dll+13FC32 - 50                    - push eaxsnake_pc_helper.dll+13FC33 - B9 1036C574           - mov ecx,snake_pc_helper.dll+363610 { (0) }snake_pc_helper.dll+13FC38 - E8 250EFCFF           - call snake_pc_helper.fetch_param+42Esnake_pc_helper.dll+13FC3D - 8D 8D C8FEFFFF        - lea ecx,[ebp-00000138]snake_pc_helper.dll+13FC43 - E8 2F4EFCFF           - call snake_pc_helper.process_protect+938snake_pc_helper.dll+13FC48 - 8B F4                 - mov esi,espsnake_pc_helper.dll+13FC4A - 6A 00                 - push 00 { 0 }snake_pc_helper.dll+13FC4C - FF 15 B0A8C574        - call dword ptr [snake_pc_helper.dll+36A8B0] { ->kernel32.ExitProcess }这里就不对代码举行分析了(作为萌新怎么可能看得懂嘛!对没错就是我不会分析!),但是我们仍旧可以通过注释内容帮助我们了解。
比如我抓到了两很关键的,简单翻译理解下。
client.dmm_pc.anti_cheat.ret.ret_3:1|c
dmm客户端反作弊被ret
this guy maybe cheat
这家伙可能会作弊
看吧 这就很显着了,那么我们怎么来处理呢?这里萌新的个人意见是遇见这种大量检测作弊有关的代码段先试试ret整个代码段(当然有的游戏肯定是有被返回检测的咯 比如是前面jbe跳过不就被这里检测到了)


F9运行,游戏立马报错了,别急这只是我们ret了ExitProcess函数导致的,我们点击下忽略。

至此,大功告成了!(你怎么知道?我当然试过了啊,不信你去试试。)
最终成果:

好了至此,处理逃跑吧少年非法进程检测完美收官。
总结与反思

1.经过三篇简单的教程,我们学到了什么?
第一篇教程中我们主要是运用OpenProcess函数定位到了非法进程检测的相关代码,而且初步尝试修改跳转跳过OpenProcess达到过检测的目的,但是会触发闪退。
第二篇教程中我们进一步分析了游戏非法进程检测的相关代码,发现了检测原理是通过循环递减PID逐一去打开进程。而且进一步复习了OpenProcess知道了传入的第三个参数就是需要打开进程的PID。于是为了避免闪退,我们修正了第一篇教程中过检测的思路,由跳过OpenProcess改为修改OpenProcess的传入参数,即需要打开进程的PID。
第三篇教程中我们迎难而上(打住!此处不允许开车!),通过ExitProcess函数定位到了导致游戏闪退的代码段,通过ret头部彻底干掉了非法进程检测中闪退的源头!
2.那么教程中学的东西就只能运用在教程实例之中吗?
非也,前面也提到了,教程学的是方法是思路。教程针对的是个性,但是大家要学会的是共性,要闻一知十。
后话

感谢大家的恭维,逃跑吧少年非法进程检测的处理至此完美收官。如果教程中存在错误请各位看官及时指出,萌新我不想由于自己的缺陷而误导了其他人的学习。
如果各位看得上萌新的教程想转载到其他地方,请注意表明出处。
最后还是要求评分的!怎么说来的 哦 对 支持才有动力,各位哪怕觉得教程垃圾(┭┮﹏┭┮)不想评分,回帖喷一下也好啊(当然无脑喷子还是算了,萌新受不起。得当意见可以提!)

来源:http://www.12558.net
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
楼主热帖
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|12558网页游戏私服论坛 |网站地图

GMT+8, 2024-3-29 19:12 , Processed in 0.109375 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表