马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册帐号
×
最近在玩一个游戏私服(为了防止说成打广告,具体哪个私服就不说了),打开游戏后,有检测是否运行无关进程的功能,检测运行了无关的进程,并且软件获取了焦点(这个是重点),游戏就会关闭我们运行的程序! 经过分析,我们基本理清了这个检测的原理: - 这个检测,是由一个线程检测的。用XT工具,暂停这个线程即可。! `, s8 k$ l7 s' N/ X: ?: [) ]: R
- 这个线程调用了API,我们上面说了只有软件获得焦点的时候,才会被检测到。也就说明只有软件置顶的时候会被检测到,我们就需要找到软件置顶后获取句柄等相关API。
0 h. v0 L1 f" E! j- ~# Q - 最后我们找到了该线程调用了GetForegroundWindow这个API,该API的用途是获取当前置顶窗口的句柄,然后关闭该进程。
* Q- u8 \" F i/ B
% H/ t$ ~4 x7 f( B) B$ a) }6 D
我们明白了检测的原理,过游戏保护的时候,就有两种方法。 一.用XT工具或者编程的方式,暂停该检测线程。 暂停线程工具 二.也可以用CE工具废除该API(当然我们也可以用代码写出来,这里就不写了,用工具更直观些) 1.CE加载游戏。 找到API地址
O1 M+ M# E e* A$ o: H( { 2.在API的头部,右键--汇编,输入汇编代码ret。 输入汇编 这样就可以简单的废除API了,当然我们也可以HOOK API的方式废除该API,原理都是相同的! ( ^" E/ G4 X* @
|