12558网页游戏私服论坛

 找回密码
 立即注册
游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
攻城掠地-仿官 全新玩法,觉醒武将,觉醒技能 每周新区 经典复古版本,长久稳定 进入游戏
巅峰新版攻 攻城掠地公益服 攻城掠地SF 新兵种、新武将(兵种) 进入游戏
攻城掠地公 散人玩家的天堂 新开 进入游戏
改版攻城掠 上线即可国战PK 稳定新区 全新改版,功能强大 进入游戏
雅阁传奇 3端畅游 刚开一秒 进入游戏
神魔之道 签到送元宝 稳定开新区 送豪华签到奖励 进入游戏
王者之师 免费领豪华奖励 免费玩新区 6元送6888元宝 进入游戏
三国霸业 战车-珍宝-觉醒-攻城掠地SF-全新玩法 免费玩新区 攻城掠地私服 进入游戏
兽厂大佬公 领取丰厚资源 上线送送送 送9999 进入游戏
霸者天下公 8元激活满屏秒拾取 免费商城 超高爆率 进入游戏
《神魔终结》 在线10分钟,SSS神将妲己领回家 闯关送1000召唤券 每日签到领豪礼 进入游戏
萌宠西游 登录即送VIP15 VIP专属礼 无限送抽卡 进入游戏
查看: 404|回复: 0

【原创】CE教程:逃跑吧少年过非法进程检测思路以及实现(一)

[复制链接]

282

主题

282

帖子

574

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
574
发表于 2020-9-17 17:59:39 | 显示全部楼层 |阅读模式
上篇教程:
【原创】CE教程:逃跑吧少年地图透视思路以及实现



前言:

在上篇教程中我们实现了逃跑吧少年地图透视,在回帖中我发现有人想求成品的修改工具于是这篇教程就诞生了~(当然还有今早在某Q群中发生的一系列神奇的操作)

首先我们来上一个测试图,假设我已经写好了一个成品,打开后你会发现出现以下提示。



如上图所示,这就是逃跑吧少年中的非法进程检测,今天我们的目的就是来过掉这个检测。



思路猜想:
由测试图可见,游戏成功获取了非法工具所在的目录,并且判断为外挂程序。

实际上本游戏中是针对易语言程序,只要是由易语言编写的一律判定为外挂!
那么,到了这里就有一个过检测的思路,那就是移除易语言程序的特征,或者干脆用其他编程语言(如C~)编译一个。当然这方法应该是可行的,不过萌新我并不会这么高端的操作~所以有能力的可以试试。
下面推荐另外一种思路。

上图中,游戏通过“非法程序”的进程定位到了该程序所在的运行目录。

所以大概推测下检测流程为:打开进程获取进程句柄→识别该进程是否包含易语言程序特征→如果发现易语言程序特征→获取该程序运行目录并弹出游戏对话框→上传异常信息到游戏服务器→强制结束游戏进程

清楚了检测流程那么就好办了,我们直接从检测的第一步打开进程下手!


OpenProcess这就是打开进程的函数,我们来试试看看这个游戏是不是调用了这个函数来打开了进程。
C:\Users\admin\Desktop\测试.exe
下面我们来认识一个函数OpenProcess
OpenProcess
方法名称:OpenProcess
位置:Kernel32.dll
OpenProcess 函数用来打开一个已存在的历程对象,并返回历程的句柄。


1.函数原型

HANDLE OpenProcess(

DWORD dwDesiredAccess, //渴望得到的访问权限(标记)

BOOL bInheritHandle, // 是否继承句柄

DWORD dwProcessId// 历程标示符
以上信息来源于百度百科



实现过非法历程检测过程:

首先CE附加游戏进程→内存浏览→右键→转到地址→输入OpenProcess→确定
注:游戏存在驱动保护,如何附加进程请查看上篇教程中的方法!

在头部F5下一个断点

进入游戏没过一会,我们就发现下的断点已经有反应了[此时游戏主程序并没有同时断下来,那么我们可以推测该检测应该是利用线程进行检测的,这里我们先不用管
双击第一条返回的地址跟过去


跟过去到了这里,那么也就是说明上面这个Call里面调用了OpenProcess这个函数,并且上面这个Call

call snake_pc_helper.notify_hall_game_status_changed+870
"notify hall game status changed"我们简单的翻译一下“通知大厅游戏状态已更改” 嗯这个就很可疑了!

按下空格进入这个Call

发现一堆jmp继续空格跟过去,然后我们到了这里。


注:内存查看窗口记得拉大一点,可以看见后面的注释就行~这些东西很有帮助~
到了这里之后,像我一样的萌新可就懵逼了 根本看不懂啊!对我也看不懂 但是不着急 前面说过的后面的注释可以帮助我们。
我们一路向下浏览这个段看看可以发现一些什么

snake_pc_helper.dll+117640 - 55                    - push ebpsnake_pc_helper.dll+117641 - 8B EC                 - mov ebp,espsnake_pc_helper.dll+117643 - 6A FF                 - push -01 { 255 }snake_pc_helper.dll+117645 - 68 E50A1474           - push snake_pc_helper.dll+2F0AE5 { (139) }snake_pc_helper.dll+11764A - 64 A1 00000000        - mov eax,fs:[00000000] { 0 }snake_pc_helper.dll+117650 - 50                    - push eaxsnake_pc_helper.dll+117651 - 81 EC A8070000        - sub esp,000007A8 { 1960 }snake_pc_helper.dll+117657 - 53                    - push ebxsnake_pc_helper.dll+117658 - 56                    - push esisnake_pc_helper.dll+117659 - 57                    - push edisnake_pc_helper.dll+11765A - 8D BD 4CF8FFFF        - lea edi,[ebp-000007B4]snake_pc_helper.dll+117660 - B9 EA010000           - mov ecx,000001EA { 490 }snake_pc_helper.dll+117665 - B8 CCCCCCCC           - mov eax,CCCCCCCC { -858993460 }snake_pc_helper.dll+11766A - F3 AB                 - repe stosd snake_pc_helper.dll+11766C - A1 E0171B74           - mov eax,[snake_pc_helper.dll+3617E0] { (-1863603359) }snake_pc_helper.dll+117671 - 33 C5                 - xor eax,ebpsnake_pc_helper.dll+117673 - 89 45 F0              - mov [ebp-10],eaxsnake_pc_helper.dll+117676 - 50                    - push eaxsnake_pc_helper.dll+117677 - 8D 45 F4              - lea eax,[ebp-0C]snake_pc_helper.dll+11767A - 64 A3 00000000        - mov fs:[00000000],eax { 0 }snake_pc_helper.dll+117680 - C7 45 FC 00000000     - mov [ebp-04],00000000 { 0 }snake_pc_helper.dll+117687 - B9 90361B74           - mov ecx,snake_pc_helper.dll+363690 { (0) }snake_pc_helper.dll+11768C - E8 89B8FEFF           - call snake_pc_helper.get_version+4ABsnake_pc_helper.dll+117691 - 0FB6 C0               - movzx eax,alsnake_pc_helper.dll+117694 - 85 C0                 - test eax,eaxsnake_pc_helper.dll+117696 - 0F84 2E010000         - je snake_pc_helper.dll+1177CAsnake_pc_helper.dll+11769C - 8D 4D 08              - lea ecx,[ebp+08]snake_pc_helper.dll+11769F - E8 C57DFEFF           - call snake_pc_helper.async_request_if_can_join_room+C2Bsnake_pc_helper.dll+1176A4 - 89 45 E8              - mov [ebp-18],eaxsnake_pc_helper.dll+1176A7 - C7 45 DC 00000000     - mov [ebp-24],00000000 { 0 }snake_pc_helper.dll+1176AE - EB 09                 - jmp snake_pc_helper.dll+1176B9snake_pc_helper.dll+1176B0 - 8B 45 DC              - mov eax,[ebp-24]snake_pc_helper.dll+1176B3 - 83 C0 01              - add eax,01 { 1 }snake_pc_helper.dll+1176B6 - 89 45 DC              - mov [ebp-24],eaxsnake_pc_helper.dll+1176B9 - 8B 45 DC              - mov eax,[ebp-24]snake_pc_helper.dll+1176BC - 3B 45 E8              - cmp eax,[ebp-18]snake_pc_helper.dll+1176BF - 0F8D 05010000         - jnl snake_pc_helper.dll+1177CAsnake_pc_helper.dll+1176C5 - 8B 45 DC              - mov eax,[ebp-24]snake_pc_helper.dll+1176C8 - 50                    - push eaxsnake_pc_helper.dll+1176C9 - 8D 4D 08              - lea ecx,[ebp+08]snake_pc_helper.dll+1176CC - E8 0BD3FEFF           - call snake_pc_helper.process_protect+89Dsnake_pc_helper.dll+1176D1 - 50                    - push eaxsnake_pc_helper.dll+1176D2 - 8D 4D C4              - lea ecx,[ebp-3C]snake_pc_helper.dll+1176D5 - E8 B0B6FEFF           - call snake_pc_helper.get_version+31Bsnake_pc_helper.dll+1176DA - C6 45 FC 01           - mov byte ptr [ebp-04],01 { 1 }snake_pc_helper.dll+1176DE - 8D 45 9C              - lea eax,[ebp-64]snake_pc_helper.dll+1176E1 - 50                    - push eaxsnake_pc_helper.dll+1176E2 - 68 20791574           - push snake_pc_helper.dll+307920 { ("list") }snake_pc_helper.dll+1176E7 - 8D 4D C4              - lea ecx,[ebp-3C]snake_pc_helper.dll+1176EA - E8 7519FEFF           - call snake_pc_helper.dll+F9064snake_pc_helper.dll+1176EF - 8B C8                 - mov ecx,eaxsnake_pc_helper.dll+1176F1 - E8 6F9AFEFF           - call snake_pc_helper.fetch_param+B31snake_pc_helper.dll+1176F6 - C6 45 FC 02           - mov byte ptr [ebp-04],02 { 2 }snake_pc_helper.dll+1176FA - 8D 85 80F8FFFF        - lea eax,[ebp-00000780]snake_pc_helper.dll+117700 - 50                    - push eaxsnake_pc_helper.dll+117701 - B9 90361B74           - mov ecx,snake_pc_helper.dll+363690 { (0) }snake_pc_helper.dll+117706 - E8 1E36FEFF           - call snake_pc_helper.compressJson+488snake_pc_helper.dll+11770B - 89 85 58F8FFFF        - mov [ebp-000007A8],eaxsnake_pc_helper.dll+117711 - 8B 8D 58F8FFFF        - mov ecx,[ebp-000007A8]snake_pc_helper.dll+117717 - 89 8D 54F8FFFF        - mov [ebp-000007AC],ecxsnake_pc_helper.dll+11771D - C6 45 FC 03           - mov byte ptr [ebp-04],03 { 3 }snake_pc_helper.dll+117721 - 8B 95 54F8FFFF        - mov edx,[ebp-000007AC]snake_pc_helper.dll+117727 - 52                    - push edxsnake_pc_helper.dll+117728 - 8D 45 9C              - lea eax,[ebp-64]snake_pc_helper.dll+11772B - 50                    - push eaxsnake_pc_helper.dll+11772C - 8D 8D 6CF8FFFF        - lea ecx,[ebp-00000794]snake_pc_helper.dll+117732 - 51                    - push ecxsnake_pc_helper.dll+117733 - B9 90361B74           - mov ecx,snake_pc_helper.dll+363690 { (0) }snake_pc_helper.dll+117738 - E8 E898FEFF           - call snake_pc_helper.fetch_param+9F1snake_pc_helper.dll+11773D - 89 85 50F8FFFF        - mov [ebp-000007B0],eaxsnake_pc_helper.dll+117743 - 8B 95 50F8FFFF        - mov edx,[ebp-000007B0]snake_pc_helper.dll+117749 - 89 95 4CF8FFFF        - mov [ebp-000007B4],edxsnake_pc_helper.dll+11774F - C6 45 FC 04           - mov byte ptr [ebp-04],04 { 4 }snake_pc_helper.dll+117753 - 8B 8D 4CF8FFFF        - mov ecx,[ebp-000007B4]snake_pc_helper.dll+117759 - E8 DDAFFEFF           - call snake_pc_helper.Send+FFsnake_pc_helper.dll+11775E - 88 85 63F8FFFF        - mov [ebp-0000079D],alsnake_pc_helper.dll+117764 - C6 45 FC 03           - mov byte ptr [ebp-04],03 { 3 }snake_pc_helper.dll+117768 - 8D 8D 6CF8FFFF        - lea ecx,[ebp-00000794]snake_pc_helper.dll+11776E - E8 2819FEFF           - call snake_pc_helper.dll+F909Bsnake_pc_helper.dll+117773 - C6 45 FC 02           - mov byte ptr [ebp-04],02 { 2 }snake_pc_helper.dll+117777 - 8D 8D 80F8FFFF        - lea ecx,[ebp-00000780]snake_pc_helper.dll+11777D - E8 1919FEFF           - call snake_pc_helper.dll+F909Bsnake_pc_helper.dll+117782 - 0FB6 85 63F8FFFF      - movzx eax,byte ptr [ebp-0000079D]snake_pc_helper.dll+117789 - 85 C0                 - test eax,eaxsnake_pc_helper.dll+11778B - 74 20                 - je snake_pc_helper.dll+1177ADsnake_pc_helper.dll+11778D - 8D 45 9C              - lea eax,[ebp-64]snake_pc_helper.dll+117790 - 50                    - push eaxsnake_pc_helper.dll+117791 - 8D 8D 94F8FFFF        - lea ecx,[ebp-0000076C]snake_pc_helper.dll+117797 - 51                    - push ecxsnake_pc_helper.dll+117798 - B9 90361B74           - mov ecx,snake_pc_helper.dll+363690 { (0) }snake_pc_helper.dll+11779D - E8 664CFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+1177A2 - 8D 8D 94F8FFFF        - lea ecx,[ebp-0000076C]snake_pc_helper.dll+1177A8 - E8 29D3FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+1177AD - C6 45 FC 01           - mov byte ptr [ebp-04],01 { 1 }snake_pc_helper.dll+1177B1 - 8D 4D 9C              - lea ecx,[ebp-64]snake_pc_helper.dll+1177B4 - E8 BB7BFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+1177B9 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+1177BD - 8D 4D C4              - lea ecx,[ebp-3C]snake_pc_helper.dll+1177C0 - E8 B2D2FEFF           - call snake_pc_helper.process_protect+938snake_pc_helper.dll+1177C5 - E9 E6FEFFFF           - jmp snake_pc_helper.dll+1176B0snake_pc_helper.dll+1177CA - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+1177CF - E8 46B7FEFF           - call snake_pc_helper.get_version+4ABsnake_pc_helper.dll+1177D4 - 0FB6 C0               - movzx eax,alsnake_pc_helper.dll+1177D7 - 85 C0                 - test eax,eaxsnake_pc_helper.dll+1177D9 - 0F84 76020000         - je snake_pc_helper.dll+117A55snake_pc_helper.dll+1177DF - 68 14791574           - push snake_pc_helper.dll+307914 { ("lsass.exe") }snake_pc_helper.dll+1177E4 - 8D 8D ACF8FFFF        - lea ecx,[ebp-00000754]snake_pc_helper.dll+1177EA - E8 7054FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+1177EF - C6 45 FC 05           - mov byte ptr [ebp-04],05 { 5 }snake_pc_helper.dll+1177F3 - 8D 85 ACF8FFFF        - lea eax,[ebp-00000754]snake_pc_helper.dll+1177F9 - 50                    - push eaxsnake_pc_helper.dll+1177FA - 8D 8D D4F8FFFF        - lea ecx,[ebp-0000072C]snake_pc_helper.dll+117800 - 51                    - push ecxsnake_pc_helper.dll+117801 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+117806 - E8 FD4BFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+11780B - 8D 8D D4F8FFFF        - lea ecx,[ebp-0000072C]snake_pc_helper.dll+117811 - E8 C0D2FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+117816 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+11781A - 8D 8D ACF8FFFF        - lea ecx,[ebp-00000754]snake_pc_helper.dll+117820 - E8 4F7BFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+117825 - 68 04791574           - push snake_pc_helper.dll+307904 { ("services.exe") }snake_pc_helper.dll+11782A - 8D 8D ECF8FFFF        - lea ecx,[ebp-00000714]snake_pc_helper.dll+117830 - E8 2A54FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+117835 - C6 45 FC 06           - mov byte ptr [ebp-04],06 { 6 }snake_pc_helper.dll+117839 - 8D 85 ECF8FFFF        - lea eax,[ebp-00000714]snake_pc_helper.dll+11783F - 50                    - push eaxsnake_pc_helper.dll+117840 - 8D 8D 14F9FFFF        - lea ecx,[ebp-000006EC]snake_pc_helper.dll+117846 - 51                    - push ecxsnake_pc_helper.dll+117847 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+11784C - E8 B74BFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+117851 - 8D 8D 14F9FFFF        - lea ecx,[ebp-000006EC]snake_pc_helper.dll+117857 - E8 7AD2FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+11785C - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+117860 - 8D 8D ECF8FFFF        - lea ecx,[ebp-00000714]snake_pc_helper.dll+117866 - E8 097BFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+11786B - 68 F8781574           - push snake_pc_helper.dll+3078F8 { ("smss.exe") }snake_pc_helper.dll+117870 - 8D 8D 2CF9FFFF        - lea ecx,[ebp-000006D4]snake_pc_helper.dll+117876 - E8 E453FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+11787B - C6 45 FC 07           - mov byte ptr [ebp-04],07 { 7 }snake_pc_helper.dll+11787F - 8D 85 2CF9FFFF        - lea eax,[ebp-000006D4]snake_pc_helper.dll+117885 - 50                    - push eaxsnake_pc_helper.dll+117886 - 8D 8D 54F9FFFF        - lea ecx,[ebp-000006AC]snake_pc_helper.dll+11788C - 51                    - push ecxsnake_pc_helper.dll+11788D - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+117892 - E8 714BFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+117897 - 8D 8D 54F9FFFF        - lea ecx,[ebp-000006AC]snake_pc_helper.dll+11789D - E8 34D2FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+1178A2 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+1178A6 - 8D 8D 2CF9FFFF        - lea ecx,[ebp-000006D4]snake_pc_helper.dll+1178AC - E8 C37AFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+1178B1 - 68 E8781574           - push snake_pc_helper.dll+3078E8 { ("winlogon.exe") }snake_pc_helper.dll+1178B6 - 8D 8D 6CF9FFFF        - lea ecx,[ebp-00000694]snake_pc_helper.dll+1178BC - E8 9E53FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+1178C1 - C6 45 FC 08           - mov byte ptr [ebp-04],08 { 8 }snake_pc_helper.dll+1178C5 - 8D 85 6CF9FFFF        - lea eax,[ebp-00000694]snake_pc_helper.dll+1178CB - 50                    - push eaxsnake_pc_helper.dll+1178CC - 8D 8D 94F9FFFF        - lea ecx,[ebp-0000066C]snake_pc_helper.dll+1178D2 - 51                    - push ecxsnake_pc_helper.dll+1178D3 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+1178D8 - E8 2B4BFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+1178DD - 8D 8D 94F9FFFF        - lea ecx,[ebp-0000066C]snake_pc_helper.dll+1178E3 - E8 EED1FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+1178E8 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+1178EC - 8D 8D 6CF9FFFF        - lea ecx,[ebp-00000694]snake_pc_helper.dll+1178F2 - E8 7D7AFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+1178F7 - 68 D8781574           - push snake_pc_helper.dll+3078D8 { ("explorer.exe") }snake_pc_helper.dll+1178FC - 8D 8D ACF9FFFF        - lea ecx,[ebp-00000654]snake_pc_helper.dll+117902 - E8 5853FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+117907 - C6 45 FC 09           - mov byte ptr [ebp-04],09 { 9 }snake_pc_helper.dll+11790B - 8D 85 ACF9FFFF        - lea eax,[ebp-00000654]snake_pc_helper.dll+117911 - 50                    - push eaxsnake_pc_helper.dll+117912 - 8D 8D D4F9FFFF        - lea ecx,[ebp-0000062C]snake_pc_helper.dll+117918 - 51                    - push ecxsnake_pc_helper.dll+117919 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+11791E - E8 E54AFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+117923 - 8D 8D D4F9FFFF        - lea ecx,[ebp-0000062C]snake_pc_helper.dll+117929 - E8 A8D1FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+11792E - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+117932 - 8D 8D ACF9FFFF        - lea ecx,[ebp-00000654]snake_pc_helper.dll+117938 - E8 377AFEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+11793D - 68 C8781574           - push snake_pc_helper.dll+3078C8 { ("wininit.exe") }snake_pc_helper.dll+117942 - 8D 8D ECF9FFFF        - lea ecx,[ebp-00000614]snake_pc_helper.dll+117948 - E8 1253FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+11794D - C6 45 FC 0A           - mov byte ptr [ebp-04],0A { 10 }snake_pc_helper.dll+117951 - 8D 85 ECF9FFFF        - lea eax,[ebp-00000614]snake_pc_helper.dll+117957 - 50                    - push eaxsnake_pc_helper.dll+117958 - 8D 8D 14FAFFFF        - lea ecx,[ebp-000005EC]snake_pc_helper.dll+11795E - 51                    - push ecxsnake_pc_helper.dll+11795F - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+117964 - E8 9F4AFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+117969 - 8D 8D 14FAFFFF        - lea ecx,[ebp-000005EC]snake_pc_helper.dll+11796F - E8 62D1FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+117974 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+117978 - 8D 8D ECF9FFFF        - lea ecx,[ebp-00000614]snake_pc_helper.dll+11797E - E8 F179FEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+117983 - 68 E8781574           - push snake_pc_helper.dll+3078E8 { ("winlogon.exe") }snake_pc_helper.dll+117988 - 8D 8D 2CFAFFFF        - lea ecx,[ebp-000005D4]snake_pc_helper.dll+11798E - E8 CC52FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+117993 - C6 45 FC 0B           - mov byte ptr [ebp-04],0B { 11 }snake_pc_helper.dll+117997 - 8D 85 2CFAFFFF        - lea eax,[ebp-000005D4]snake_pc_helper.dll+11799D - 50                    - push eaxsnake_pc_helper.dll+11799E - 8D 8D 54FAFFFF        - lea ecx,[ebp-000005AC]snake_pc_helper.dll+1179A4 - 51                    - push ecxsnake_pc_helper.dll+1179A5 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+1179AA - E8 594AFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+1179AF - 8D 8D 54FAFFFF        - lea ecx,[ebp-000005AC]snake_pc_helper.dll+1179B5 - E8 1CD1FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+1179BA - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+1179BE - 8D 8D 2CFAFFFF        - lea ecx,[ebp-000005D4]snake_pc_helper.dll+1179C4 - E8 AB79FEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+1179C9 - 68 B8781574           - push snake_pc_helper.dll+3078B8 { ("svchost.exe") }snake_pc_helper.dll+1179CE - 8D 8D 6CFAFFFF        - lea ecx,[ebp-00000594]snake_pc_helper.dll+1179D4 - E8 8652FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+1179D9 - C6 45 FC 0C           - mov byte ptr [ebp-04],0C { 12 }snake_pc_helper.dll+1179DD - 8D 85 6CFAFFFF        - lea eax,[ebp-00000594]snake_pc_helper.dll+1179E3 - 50                    - push eaxsnake_pc_helper.dll+1179E4 - 8D 8D 94FAFFFF        - lea ecx,[ebp-0000056C]snake_pc_helper.dll+1179EA - 51                    - push ecxsnake_pc_helper.dll+1179EB - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+1179F0 - E8 134AFEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+1179F5 - 8D 8D 94FAFFFF        - lea ecx,[ebp-0000056C]snake_pc_helper.dll+1179FB - E8 D6D0FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+117A00 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+117A04 - 8D 8D 6CFAFFFF        - lea ecx,[ebp-00000594]snake_pc_helper.dll+117A0A - E8 6579FEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+117A0F - 68 AC781574           - push snake_pc_helper.dll+3078AC { ("csrss.exe") }snake_pc_helper.dll+117A14 - 8D 8D ACFAFFFF        - lea ecx,[ebp-00000554]snake_pc_helper.dll+117A1A - E8 4052FEFF           - call snake_pc_helper.notify_hall_game_status_changed+CF3snake_pc_helper.dll+117A1F - C6 45 FC 0D           - mov byte ptr [ebp-04],0D { 13 }snake_pc_helper.dll+117A23 - 8D 85 ACFAFFFF        - lea eax,[ebp-00000554]snake_pc_helper.dll+117A29 - 50                    - push eaxsnake_pc_helper.dll+117A2A - 8D 8D D4FAFFFF        - lea ecx,[ebp-0000052C]snake_pc_helper.dll+117A30 - 51                    - push ecxsnake_pc_helper.dll+117A31 - B9 74361B74           - mov ecx,snake_pc_helper.dll+363674 { (0) }snake_pc_helper.dll+117A36 - E8 CD49FEFF           - call snake_pc_helper.notify_hall_game_status_changed+49Csnake_pc_helper.dll+117A3B - 8D 8D D4FAFFFF        - lea ecx,[ebp-0000052C]snake_pc_helper.dll+117A41 - E8 90D0FEFF           - call snake_pc_helper.process_protect+997snake_pc_helper.dll+117A46 - C6 45 FC 00           - mov byte ptr [ebp-04],00 { 0 }snake_pc_helper.dll+117A4A - 8D 8D ACFAFFFF        - lea ecx,[ebp-00000554]snake_pc_helper.dll+117A50 - E8 1F79FEFF           - call snake_pc_helper.async_request_if_can_join_room+B36snake_pc_helper.dll+117A55 - E8 FF57FEFF           - call snake_pc_helper.notify_hall_game_status_changed+12ED

嗯 我这里复制了一段很长的代码~可能有点影响阅读,各位先包涵~ 我们清楚的可以看到CE解释里面包罗了以下以下内容
("list") ("lsass.exe") ("services.exe") ("smss.exe") ("explorer.exe") ("wininit.exe") ("winlogon.exe") ("svchost.exe") ("csrss.exe")

到了这里我们已经基本上可以确定这里简直就是非法历程检测的地方了,上面这些历程名称很可能是一个“白名单”进行排除。
我们继续向下翻 找到我们想要的(不知道找什么????别忘了思路找什么地方调用了OpenProcess这个函数!)

很快我们就有了发现!解释里面明确解释了

snake_pc_helper.dll+117AEB - FF 15 CCA81B74        - call dword ptr [snake_pc_helper.dll+36A8CC] { ->kernel32.OpenProcess }

插入吐槽:不弄彩色字体了  累死我了下面照旧继续黑色粗体吧

通过百度百科我们可以知道 OpenProcess 的返回值,如果OpenProcess成功则会返回这个历程的历程句柄,如果失败则返回空 并且可以调用GetLastError这个函数来获取错误代码!
OpenProcess 返回值:
如成功,返回值为指定历程的句柄。
如失败,返回值为空,可调用GetLastError获得错误代码。

那么按照我们推测的历程流程:
打开历程获取历程句柄→识别该历程是否包罗易语言程序特征→如果发现易语言程序特征→获取该程序运行目录并弹出游戏对话框→上传异常信息到游戏服务器→强制竣事游戏历程
我们只要让获取不了历程句柄即可

好,那么我们代码向上翻一点

我们可以很明显的看见就在上面不远的地方就有一个jbe跳转跳过了以下的打开历程的操作
jbe al, blal里的内容小于或即是bl时跳转

那么为了保证它不会触发下面的打开历程的操作 我们把jbe改成jmp(无条件跳转)让他一直跳过。



来来来 让我们打开一个易语言程序测试下! 啦啦啦~~~成功!赶紧撒花! 快点 快点 一点要快(绝对不是在暗示什么)!!!!




后话:
{:301_972:} 别急!乐极生悲! 我们稍微等待一分钟(哇发现不到一分钟时间游戏竟然自己闪退了!我们照旧被发现了吗???)

这里就牵涉到别的一个检测了(┭┮﹏┭┮或者说这个检测没过完整),嗯 让萌新缓一缓,欲知后事如何,请听下回分解!

萌新在线求热心值和CB,多少不重要,都是爱。




下篇教程:【原创】CE教程:逃跑吧少年过非法历程检测之绕过闪退(二)
来源:http://www.12558.net
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

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

x
楼主热帖
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-9-30 20:34 , Processed in 0.156250 second(s), 33 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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