浅谈非内存对抗类和AI自瞄类FPS作弊程序原理及常用反反作弊措施与反作弊应对手段(下)

往期文章:

浅谈非内存对抗类和AI自瞄类FPS作弊程序原理及常用反反作弊措施与反作弊应对手段(上)

浅谈非内存对抗类和AI自瞄类FPS作弊程序原理及常用反反作弊措施与反作弊应对手段(中)

三、常用过反作弊检测手段及相应应对措施

         1. 通用类过反作弊检测手段       

        高频率更新软件本体(包括但不限于给主代码中插入无关代码以改变编译出来的成品特征、给软件本身添加压缩壳或者加密壳等,核心还是规避反作弊的特征扫描,定制类外挂稳定的秘诀也就是在此);

        措施:大部分外挂的“更新”其实都属于不完全特征修改,因为往往只是改个名,加上部分垃圾代码等等,所以通过定位软件的内存特征就可以有效检测。针对加密壳加密后的软件也可以先标记再上传服务器解密,定位特征后针对性封禁。(外挂使用的加密壳大多都是vmp、se、sprotect等壳子,可以针对外壳类型定位)

        软件进行数字签名(网上有数字签名生成器,可以生成一些过期的非官方的数字签名,部分厂商早期反作弊会直接过滤掉有签名的软件,类似白名单,通过数字签名可以过一部分的反作弊,但是后来反作弊更加注重对此类盗版签名软件的检测,所以现如今的外挂作者更加偏向购买正版签名或者找第三方代签);

        措施:验证签名密钥的有效性,验证密钥签发公司的合法性。

        利用内核驱动对软件进行文件隐藏、进程隐藏、防止反作弊扫盘读取软件特征(需要外挂作者会windows内核编程知识,较高端);

        措施:反作弊从内核态进行驱动对抗。

        伪装软件为正规软件(如修改软件描述、图标、签名以达到模仿诸如QQ、微信、YY语音等正规第三方软件);

        措施:其实从软件合法性角度来看,这样的伪装通常是拙劣的,也就只能骗一骗不是很懂计算机知识的小白。反作弊以正常扫盘特征的方式就可以检测出来。因为单从数字签名角度,可以模仿出高仿的数字签名,但是官方正版的数字签名是难以搞到的。除非外挂作者是公司的员工,那么这还会涉嫌一系列的后续法律隐患。

        附加进程伪装(通过将外挂编写成dll,修改dll加载的程序领空,以注入或者附加启动等方式随着正规第三方软件的运行而运行,由于其特殊性,外挂运行时候的进程是附加在了正规第三方软件的进程中,可以规避大部分反作弊基于进程扫描等手段的检测,事实上这个方法可以有效规避检测,但是其原理在网上的资料很少,只有部分作者会这一技术);

        措施:类似内存外挂的检测手段,检测第三方程序是否被恶意注入或者软件启动时加载的文件是否被篡改。

        采取更加拟真的鼠标移动(如调用键鼠盒子或者给鼠标移动加入平滑算法、PID控制算法或者贝塞尔曲线函数让轨迹更加拟合真人操控鼠标的运行轨迹,以规避反作弊基于行为、轨迹的检测手段);

        措施:收集真人移动曲线形成数据集,通过AI分析当前移动轨迹是否与真人相似来检测是否是由第三方外设硬件或者软件算法模拟的移动轨迹。针对常用的轨迹拟真函数拟真出来的曲线统一检测。检测标记第三方外设硬件特征。

        物理规避手段(将找色、自瞄的代码写到单片机中,通过HDMI线将单片机与计算机连接,单片机采集计算机的图像数据并传回,在单片机上计算结果并返回,操控鼠标完成自瞄);

        措施:措施如上,从鼠标移动轨迹入手。

        “自瞄鼠标”魔改鼠标PCB(有一些较为高端的找色自瞄作者通过魔改鼠标的PCB板,将上文中的单片机“内置”到鼠标中,将鼠标插到电脑上就自动进行识别,并且控制移动也是直接操控使用的鼠标,更加难以发现);

        措施:定位硬件特征或者同上检测鼠标的异常轨迹行为。

        虚拟机、双机作弊(将游戏放在虚拟机\主机中运行,本机\副机运行找色、AI类外挂,通过虚拟机\键鼠外设硬件间接或者直接控制虚拟机\主机中的游戏程序达到自瞄的目的);

        措施:针对检测虚拟机操作系统、双机串流软件、鼠标移动轨迹等。

        2. DMA类外挂反反作弊措施:

     

        固件定制:较为主流的反反作弊手段,通过定制或者控制固件使用人数,来规避反作弊基于检测固件特征的检测手段。DMA硬件插到电脑上,操作系统会识别出来未知PCIE设备(开源或者通用固件,固件设计存在漏洞导致操作系统不能正确识别设备,市售普通DMA设备用的就是这一类固件,也是最容易被反作弊检测的一批固件),反作弊识别未知设备可以快速定位到DMA设备并予以封禁。更加高端的定制固件完善了开源固件设计时候的漏洞,并在代码中加入无关代码,更改固件的特征,并对固件的设备标识码予以伪装,高端硬件常常操作系统可以正确识别设备,不会在设备管理器中出现黄色叹号的未知设备。少数定制固件通过购买正规生产厂商的网卡、打印机设备,复制其固件的标识码,粘贴到DMA设备固件标识码中达到伪装设备来规避检测。(正规设备出场时候的识别码受统一的标准制约,外挂作者很难“凭空创造”这些标识码,所以只能购买正规网卡设备来复制特征)。实践证明,通过固件定制规避检测是目前DMA类外挂最为直接有效的反反作弊手段。

     

        针对固件定制这一手段,反作弊厂商可以综合多种检测手段,不要仅局限于固件的检测上。由于DMA设备在绕过CPU读取内存数据之前会和CPU通讯,申请内存读取,反作弊可以深入操作系统底层去监听这一请求来检测DMA设备。其次,扩大DMA固件的特征库,收集更多固件特征,配合警方对制作DMA设备、售卖DMA类外挂的作者予以线下抓捕。国内DMA设备可以很容易地在淘宝、拼多多等网购平台购买到,只有切断DMA设备来源、打击外挂程序源头才能从根本上遏制DMA类外挂。其实,在游戏运行过程中,反作弊程序从底层屏蔽除显卡、声卡、采集卡以外的PCIE设备就可以很有效规避DMA类作弊,但是国内反作弊貌似没有在PCIE设备上做文章。对于伪装的DMA设备辨识起来也可以通过调用硬件看看是否能正常完成硬件功能来辨别是否是伪装的设备(比如网卡可以请求转发一段数据看设备是否可以正常转发等等)。由于本人对于DMA类外挂的了解比较浅显,并不能提供更加深入的意见参考,敬请谅解。

        3. AI类自瞄外挂反反作弊措施以及反作弊应对措施:

  •                  
    •                 OBS插件。由于OBS属于合法的第三方推流软件,常用于各大游戏直播平台主播推流游戏视频直播,所以常常位于反作弊的“白名单”之中。与前文提到的“伪装进程”的核心思想大同小异,通过编写OBS插件,将AI自瞄核心的截图、推理功能编写成DLL插件,以OBS插件的形式运行,这样AI作弊软件的进程就变成了OBS的进程,反作弊也不可能因为你电脑后台开着OBS而对你封禁,因为大多使用OBS的是没有开挂的主播。

针对这种以插件形式伪装进程方式来突破反作弊的,可以考虑从一下三点针对性检测:

        

​​​​​​​        ​​轨迹检测:这个检测方式在腾讯的ACE反作弊系统已经有所实装,那便是检测当前玩家鼠标移动轨迹的加速度,以及综合分析轨迹的各方面数据,包括但不限于检测轨迹点迹密集区(AI自瞄的点迹常在以画面为中心向外的一个圆中心聚集,而正常玩家的点迹是相对均匀分布在画面各处)、轨迹连续程度、平滑度、关键点之间的延迟毫秒数(自瞄行为的关键点之间的间隔非常短,而人类的极限也就在100ms左右)等等。

        

​​​​​​​​​​​​​​        ​​​​​​​ 驱动检测:更加底层的反作弊驱动。有攻就有防,如果反作弊可以对后台常驻软件进行深层的进程分析,那么就可以一定程度从伪装的进程中察觉出异常进程。(内核编程方面我不是专业的,所以不是很懂,只是个畅想)

        

​​​​​​​​​​​​​​        文件检测:检测第三方软件的文件完整性。可以与常用的一些第三方软件开发团队合作,进行软件完整性检查,对于非法的插件予以标记检测。

        

                采集卡图像采集并结合双机物理隔离作弊进程和高危行为。Cvcheat团队在落网之前开发的Cloud版本就是针对采集卡开发的AI自瞄程序。通过将本地的截图事件改为采集卡直接获取图像并传入第二台副机进行图像分析,调用外设键鼠控制主机移动。这样主机上类似DMA作弊,既没有AI自瞄的进程,又检测不到串流软件,可以物理上隔绝反作弊的检测。

针对采集卡或者双机串流类等物理隔离方案的检测:

        

​​​​​​​​​​​​​​        ​​​​​​​        针对第三方串流软件的检测。如Moonlight、NVIDIA推流等串流软件。双机作弊的底层需要采集到游戏画面的图像,如果前文提到的OBS可能有的主播需要用它进行直播,那么在游戏过程中,貌似没有需要串流软件的情况(向日葵那种远程软件除外)。可以直接屏蔽这些串流软件,以达到反作弊目的,具体细节需要按照实际情况加以区分和针对性方案。

                

​​​​​​​​​​​​​​        ​​​​​​​        给游戏画面加入肉眼不可识别的但是从数据层面会收到干扰的隐形噪音数据。现有图片保密技术可以给视频或者图片加入不可识别的隐形水印,可以从技术层面加大软件作者需要分析的工作量或者以技术壁垒使得短时间内外挂作者难以破解的技术加密游戏画面,让获取到图片数据后作者不能很容易地处理图片以传入推理进程进行正常推理,干扰推理结果。

                针对鼠标轨迹的检测。

  • 39
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值