简单的检测对抗

自学有一段时间了 一直都是纸上谈兵 打算找一个检测不是很强的游戏练练手 就是这个荒野 废话不多说
0x00:
首先是反调试 NtSetInformationThread 与 [size=1.1]DbgUiRemoteBreakin
NtSetInformationThread 这个好像是荒野的VMP壳加上的反调试 这是一个线程相关的API 会屏蔽掉指定线程的调试事件 一个没有被调试器接管的异常 断点 会怎样 当然是崩溃啦 我这里使用的是 OD插件 SharpOD 过掉的

DbgUiRemoteBreakin 这个应该很多人都不陌生 调试器附加后会调用这个API来断下 所以基本所有的网络游戏都会HOOK这里 荒野是在游戏进入后自己写的HOOK 我这里直接把他恢复了 其实很多OD插件也都可以

0x01:
设备封禁!!!! 我这里要说一下他这个弱智的设备封禁
他首先会调用 GetAdaptersInfo GetAdaptersAddresses 获取mac和IP 再用 GetVolumeInformation 获取硬盘序列 这个就是所谓的机器码了
他会把这些发往服务器 如果! 你新创建了一个号(新的网易账号 没有人物的那种) 而且你的设备有很多封号记录 那么不管你开没开挂他都会封你号! 我发现这个事情的时候我都惊了 还有这种操作 也没有提示 直接就是10分钟内安排你 但是当时我也没多想 直接给他这几个API ret了 结果还是封 也就是说它必须有值 可以是假的但是不能没有 所以我这里给他返回了一个假的结构体 我自己填写的
简单的检测对抗
这只是其中一个还有三个

0x02:
他的检测都干了什么能 EnumWindows枚举窗口 然后获取你的进程ID 打开你的进程 使用 GetProcessImageFileName获取你的进程完整路径
还有进程快照 窗口查找 窗口风格 等等。。
简单的检测对抗
检测 :这几个同一入口点的线程都会运行检测代码 而且还包含主线程 没事也会检测一波 不像P检测是检测 游戏是游戏 都不在一个模块
既然荒野这样我也只能对API下手了 这几个同一入口点的线程都会运行检测代码 而且还包含了主线程 没事也会检测一波 不像
P
检测是检测 游戏是游戏 都不在一个模块

既然荒野这样我也只能对API下手了 这几个同一入口点的线程都会运行检测代码 而且还包含了主线程 没事也会检测一波 不像*P
检测是检测 游戏是游戏 都不在一个模块

简单的检测对抗

既然荒野这样我也只能对API下手了
全部RET!至此荒野对外部的检测算是没有了 我开CE OD 透明窗口的透视辅助都不会在封号了