能力值:
( LV4,RANK:40 )
|
-
-
2 楼
如果是驱动加载就更好了,不用hook函数来防注入,只需枚举导入内核模块,检查是否有该驱动名
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
感谢回复,可是检测驱动名是否有不好之处呢。只要重新编译一下,换个驱动名字就OK 了。我们又检查不到了。
|
能力值:
( LV4,RANK:40 )
|
-
-
4 楼
的确,但辅助基本上用的驱动并不是自己写的
如果真的要保护(专用)可以做得很绝
1,ntdll处hook NtProtectVirualMemory等,实际上inline hook比较易被恢复
2.内核隐藏进程(抹掉句柄表?),主要看是辅助怎么确定你的进程
3.动态申请内存,枚举进程模块
以上都是现在的我所使用过的,建议从1,3实行
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
再次感谢回复,如果我想隐藏自己的进程,防止别人注入的话,这样各种杀软肯定是不允许的。
所以这个肯定是被PASS了。唯一的方法是各种检测。
做反外挂这个前途肯定很好。只可惜杀软这关不好过。内核中的战争啊。
|
能力值:
( LV4,RANK:40 )
|
-
-
6 楼
不会啊,可以用写物理内存api抹掉eprocess的双链实现隐藏,如果用驱动估计要数字签名
其实辅助大部分是修改内存吧,与其防注入不如从内存处入手,只是大程序的话会比较繁琐
|
能力值:
( LV4,RANK:50 )
|
-
-
7 楼
直接简单ida下外挂的sys(如果没加壳),不就解决了
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
搞私服的吧。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
别防注入了,注入是防不了的。
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
是的,防注入估计很难。但是我想检测是否被注入应该不难吧。
|
能力值:
( LV4,RANK:40 )
|
-
-
11 楼
我觉得检测似乎更难,我的想法是把自己代码弄成动态库且注入到游戏,替换其api起保护,甚至可以用外挂所注入的模块名,占坑原理
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
注入到你的进程总是要使用 LoadLibraryExW 的,你把EXE 拆分成 一个 exe做loader,一个dll 实现所有逻辑,dll PROCESS_ATTACH 的时候,先HOOK自己差不多需要HOOK的API就可以了。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
反调试。。。。。。。。。。。。。。。。。。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
之前了解过几款防外挂的软件,他们的思路是这样的
1.首先隐藏自身的进程(需要杀软公司加白名单或者做数字签名)
2.游戏在运行过程中使用admin权限(通过注册的系统服务或者生成的shadow账户执行防外挂软件)
3.在游戏运行的过程中会同时启动另外一个防外挂的服务或者子进程
4.使用注册的驱动周期性的对当前系统中存在的进程进行检测(根据特征码及外挂行为原理方式进行检测)
5.周期性的确认客户端的完整性
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
驱动啊。。。。。。。。。反调试,。。。。。。求楼主推荐工作
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
1. 枚举进程。窗口。模块。端口等。外挂一般极少会做到很全面的隐藏吧。ring3下检测确实弱了点。所以建议还是游戏写个驱动来检测。
2. 在关键函数里加判断。既然是防外挂。那外挂肯定会调用CALL。比如发包。走路。吃药等等。但这个也容易被inline hook跳过检测。
3. 加入动态检测。代码从服务端发送机器码来解密并执行。
。。。。。。
方法很多。参考下别的游戏。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
都是高手啊。。我还需努力!
|
|
|