吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 22512|回复: 47
收起左侧

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

  [复制链接]
忆魂丶天雷 发表于 2020-3-8 16:35
本帖最后由 忆魂丶天雷 于 2020-3-9 21:28 编辑

上篇教程:
【原创】CE教程:逃跑吧少年地图透视思路以及实现



前言:

~(Q)


1.png





思路猜想:



(C~)~






直接


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


1.函数原型

HANDLE OpenProcess(

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

BOOL bInheritHandle, // 是否继承句柄

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



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

CEOpenProcess

2.png
F5
3.png
[线


4.png
CallOpenProcessCall

call snake_pc_helper.notify_hall_game_status_changed+870
"notify hall game status changed"

Call
5.png
jmp

6.png
~西~

snake_pc_helper.dll+117640 - 55                    - push ebp
snake_pc_helper.dll+117641 - 8B EC                 - mov ebp,esp
snake_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 eax
snake_pc_helper.dll+117651 - 81 EC A8070000        - sub esp,000007A8 { 1960 }
snake_pc_helper.dll+117657 - 53                    - push ebx
snake_pc_helper.dll+117658 - 56                    - push esi
snake_pc_helper.dll+117659 - 57                    - push edi
snake_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,ebp
snake_pc_helper.dll+117673 - 89 45 F0              - mov [ebp-10],eax
snake_pc_helper.dll+117676 - 50                    - push eax
snake_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+4AB
snake_pc_helper.dll+117691 - 0FB6 C0               - movzx eax,al
snake_pc_helper.dll+117694 - 85 C0                 - test eax,eax
snake_pc_helper.dll+117696 - 0F84 2E010000         - je snake_pc_helper.dll+1177CA
snake_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+C2B
snake_pc_helper.dll+1176A4 - 89 45 E8              - mov [ebp-18],eax
snake_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+1176B9
snake_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],eax
snake_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+1177CA
snake_pc_helper.dll+1176C5 - 8B 45 DC              - mov eax,[ebp-24]
snake_pc_helper.dll+1176C8 - 50                    - push eax
snake_pc_helper.dll+1176C9 - 8D 4D 08              - lea ecx,[ebp+08]
snake_pc_helper.dll+1176CC - E8 0BD3FEFF           - call snake_pc_helper.process_protect+89D
snake_pc_helper.dll+1176D1 - 50                    - push eax
snake_pc_helper.dll+1176D2 - 8D 4D C4              - lea ecx,[ebp-3C]
snake_pc_helper.dll+1176D5 - E8 B0B6FEFF           - call snake_pc_helper.get_version+31B
snake_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 eax
snake_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+F9064
snake_pc_helper.dll+1176EF - 8B C8                 - mov ecx,eax
snake_pc_helper.dll+1176F1 - E8 6F9AFEFF           - call snake_pc_helper.fetch_param+B31
snake_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 eax
snake_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+488
snake_pc_helper.dll+11770B - 89 85 58F8FFFF        - mov [ebp-000007A8],eax
snake_pc_helper.dll+117711 - 8B 8D 58F8FFFF        - mov ecx,[ebp-000007A8]
snake_pc_helper.dll+117717 - 89 8D 54F8FFFF        - mov [ebp-000007AC],ecx
snake_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 edx
snake_pc_helper.dll+117728 - 8D 45 9C              - lea eax,[ebp-64]
snake_pc_helper.dll+11772B - 50                    - push eax
snake_pc_helper.dll+11772C - 8D 8D 6CF8FFFF        - lea ecx,[ebp-00000794]
snake_pc_helper.dll+117732 - 51                    - push ecx
snake_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+9F1
snake_pc_helper.dll+11773D - 89 85 50F8FFFF        - mov [ebp-000007B0],eax
snake_pc_helper.dll+117743 - 8B 95 50F8FFFF        - mov edx,[ebp-000007B0]
snake_pc_helper.dll+117749 - 89 95 4CF8FFFF        - mov [ebp-000007B4],edx
snake_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+FF
snake_pc_helper.dll+11775E - 88 85 63F8FFFF        - mov [ebp-0000079D],al
snake_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+F909B
snake_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+F909B
snake_pc_helper.dll+117782 - 0FB6 85 63F8FFFF      - movzx eax,byte ptr [ebp-0000079D]
snake_pc_helper.dll+117789 - 85 C0                 - test eax,eax
snake_pc_helper.dll+11778B - 74 20                 - je snake_pc_helper.dll+1177AD
snake_pc_helper.dll+11778D - 8D 45 9C              - lea eax,[ebp-64]
snake_pc_helper.dll+117790 - 50                    - push eax
snake_pc_helper.dll+117791 - 8D 8D 94F8FFFF        - lea ecx,[ebp-0000076C]
snake_pc_helper.dll+117797 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+1177A2 - 8D 8D 94F8FFFF        - lea ecx,[ebp-0000076C]
snake_pc_helper.dll+1177A8 - E8 29D3FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+938
snake_pc_helper.dll+1177C5 - E9 E6FEFFFF           - jmp snake_pc_helper.dll+1176B0
snake_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+4AB
snake_pc_helper.dll+1177D4 - 0FB6 C0               - movzx eax,al
snake_pc_helper.dll+1177D7 - 85 C0                 - test eax,eax
snake_pc_helper.dll+1177D9 - 0F84 76020000         - je snake_pc_helper.dll+117A55
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+1177FA - 8D 8D D4F8FFFF        - lea ecx,[ebp-0000072C]
snake_pc_helper.dll+117800 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+11780B - 8D 8D D4F8FFFF        - lea ecx,[ebp-0000072C]
snake_pc_helper.dll+117811 - E8 C0D2FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+117840 - 8D 8D 14F9FFFF        - lea ecx,[ebp-000006EC]
snake_pc_helper.dll+117846 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+117851 - 8D 8D 14F9FFFF        - lea ecx,[ebp-000006EC]
snake_pc_helper.dll+117857 - E8 7AD2FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+117886 - 8D 8D 54F9FFFF        - lea ecx,[ebp-000006AC]
snake_pc_helper.dll+11788C - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+117897 - 8D 8D 54F9FFFF        - lea ecx,[ebp-000006AC]
snake_pc_helper.dll+11789D - E8 34D2FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+1178CC - 8D 8D 94F9FFFF        - lea ecx,[ebp-0000066C]
snake_pc_helper.dll+1178D2 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+1178DD - 8D 8D 94F9FFFF        - lea ecx,[ebp-0000066C]
snake_pc_helper.dll+1178E3 - E8 EED1FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+117912 - 8D 8D D4F9FFFF        - lea ecx,[ebp-0000062C]
snake_pc_helper.dll+117918 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+117923 - 8D 8D D4F9FFFF        - lea ecx,[ebp-0000062C]
snake_pc_helper.dll+117929 - E8 A8D1FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+117958 - 8D 8D 14FAFFFF        - lea ecx,[ebp-000005EC]
snake_pc_helper.dll+11795E - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+117969 - 8D 8D 14FAFFFF        - lea ecx,[ebp-000005EC]
snake_pc_helper.dll+11796F - E8 62D1FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+11799E - 8D 8D 54FAFFFF        - lea ecx,[ebp-000005AC]
snake_pc_helper.dll+1179A4 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+1179AF - 8D 8D 54FAFFFF        - lea ecx,[ebp-000005AC]
snake_pc_helper.dll+1179B5 - E8 1CD1FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+1179E4 - 8D 8D 94FAFFFF        - lea ecx,[ebp-0000056C]
snake_pc_helper.dll+1179EA - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+1179F5 - 8D 8D 94FAFFFF        - lea ecx,[ebp-0000056C]
snake_pc_helper.dll+1179FB - E8 D6D0FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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+CF3
snake_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 eax
snake_pc_helper.dll+117A2A - 8D 8D D4FAFFFF        - lea ecx,[ebp-0000052C]
snake_pc_helper.dll+117A30 - 51                    - push ecx
snake_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+49C
snake_pc_helper.dll+117A3B - 8D 8D D4FAFFFF        - lea ecx,[ebp-0000052C]
snake_pc_helper.dll+117A41 - E8 90D0FEFF           - call snake_pc_helper.process_protect+997
snake_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+B36
snake_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这个函数!)
7.png
很快我们就有了发现!注释里面明确注释了

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

插入吐槽:不弄彩色字体了  累死我了下面还是继续黑色粗体吧
8.png
通过百度百科我们可以知道 OpenProcess 的返回值,如果OpenProcess成功则会返回这个进程的进程句柄,如果失败则返回空 并且可以调用GetLastError这个函数来获取错误代码!
OpenProcess 返回值:
如成功,返回值为指定进程的句柄。
如失败,返回值为空,可调用GetLastError获得错误代码。

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

好,那么我们代码向上翻一点
9.png
我们可以很明显的看见就在上面不远的地方就有一个jbe跳转跳过了以下的打开进程的操作
jbe al, blal里的内容小于或等于bl时跳转

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

10.png

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



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

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

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




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

点评

支持樓主,思路很連貫,期待下一篇  发表于 2020-3-9 14:18

免费评分

参与人数 24威望 +1 吾爱币 +47 热心值 +19 收起 理由
FFF全部成为F + 1 奶思,思路值得借鉴
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
kkk1l + 1 + 1 用心讨论,共获提升!
1902591582 + 1 谢谢@Thanks!
lookerJ + 1 热心回复!
吴家一哥 + 1 + 1 我很赞同!
Reo_52 + 1 + 1 我很赞同!
gh0st_ + 1 用心讨论,共获提升!
腾旭 + 1 我很赞同!
福气啦 + 1 + 1 谢谢@Thanks!
wf晚风 + 1 + 1 我很赞同!
boyulin + 3 + 1 小弟 也猜測是CRC教驗 期待下集教學
lwb50100 + 1 + 1 crc32没过
?bugme + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
团战观察者 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
女萝岩 + 1 + 1 我很赞同!
枫叶丶丿 + 1 + 1 nb,谢谢分享
dengyi + 1 + 1 用心讨论,共获提升!
妖漆久久 + 1 热心回复!
121890575 + 1 + 1 用心讨论,共获提升!
jion + 2 + 1 我很赞同!
123-木头人 + 1 + 1 用心讨论,共获提升!
JusonR + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
壳壳 + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

涛之雨 发表于 2020-3-9 00:06
本帖最后由 涛之雨 于 2020-3-9 00:15 编辑

不完全是这样吧。。。。
好像是检测了常用调试器的名称,而且有驱动保护(那个数盾,貌似可以直接把进程给关掉?不晓得)
此外之前网上随便下载的一个驱动隐藏进程的软件,隐藏了ce的进程就好了
貌似叫什么小酒瓶还是小酒杯。
反正任务管理器(不通过驱动)看不到进程就成。。。。
不过不知道为啥还是被封了
难道是太菜了,被举报了,导致系统查游戏过程,发现了我的金币不正常?
此外这个游戏有反作弊的类。。。
估计直接改的话有可能被检测
(这种u3d游戏,安卓pc一看就是一个模子里出的,根据安卓的反编译,大概可以看出代码。。。。)
不过pc的有混淆和反反编译。。。。改不了。
游戏的启动文件和主进程文件不在一个地方,这就很神奇了。。。
在游戏主进程文件(任务管理器查看软件文件所在位置)所在目录,有个temp文件夹,里面有u3d主dll同名dll文件,不过里面不是pe文件,是一串数字,
猜测可能是dll保护的内容?
此外还发现了背景图片啊,
服务器更新配置啊,
MD5校验文件啊(无论改什么都要去把MD5替换了,不然,可还记得上一行所说的服务器配置。。。。。)



此外强烈推荐要么用代码块把代码给复制过来
像这样
[C] 纯文本查看 复制代码
//这里是你的代码

或者截个长图(墙裂推荐,代码太长费眼)

还有就是。。。这么长的话,推荐使用md,markdown写教程简直不要太爽

免费评分

参与人数 2吾爱币 +1 热心值 +1 收起 理由
lookerJ + 1 我很赞同!
忆魂丶天雷 + 1 我很赞同!

查看全部评分

 楼主| 忆魂丶天雷 发表于 2020-3-8 16:57
 楼主| 忆魂丶天雷 发表于 2020-3-8 16:42
头像被屏蔽
袁煜914 发表于 2020-3-8 16:52
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽
袁煜914 发表于 2020-3-8 16:59
提示: 作者被禁止或删除 内容自动屏蔽
123-木头人 发表于 2020-3-8 17:14
像这样优秀的教程已经不多了
acfv5222 发表于 2020-3-8 17:37
如果我们是做去特征 不会更好吗?
 楼主| 忆魂丶天雷 发表于 2020-3-8 17:40
acfv5222 发表于 2020-3-8 17:37
如果我们是做去特征 不会更好吗?

但是这是一篇CE教程 其他思路可以自行测试
121890575 发表于 2020-3-8 18:12
这样的教程很优秀
dengyi 发表于 2020-3-8 18:37
受益了,感谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-21 20:03

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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