在给MM朋友做了个诛仙外挂(脚本写的 )后,再应她要求,小试一下劲舞团!
2G的劲舞一个通宵下载下来后安装,先注册一个ID吧,进游戏,CPU好卡!!!!!
打开CE准备搜索内存了,选中游戏进程,我搜!! 咔--------居然说无法打开进程!!!
预料之中,看了NP的介绍,觉得问题不大,但仔细一看,好像不是NP, SSDT有以下几个地方被HOOK了:
NtOpenProcess ;防止你打开游戏进程
NtReadVirtualMemory ;防止你读游戏内存
NtWriteVirtualMemory ;防止你写游戏内存
NtSuspendThread ;游戏有一个线程不停的反外挂检测,防止被你停掉了!!!
NtTerminateThread ;防止进程被意外终止后驱动不能正常退出,SSDT不能恢复!!
写驱动注入NtOpenProcess和NtReadVirtualMemory,
OK,可以打开游戏了,继续读内存试试,
怪事来了,返回EAX=1,好像成功了!但读出的东西全是0!怀疑根本没读成功!!!
这还不是最怪的,用VirtualQueryEx查询游戏内存情况,这时反外挂跳出来了!游戏终止,
VirtualQueryEx===>NtQueryVirtualMemory都没有被HOOK啊!!!是怎么被发现的??
还有用冰刃查看进程,也会被游戏侦查到,然后提示反外挂出现问题后退出,
冰刃查看进程用了比较底层的东西了,但仍会被检查到!!!
SSDT就只有以上的地方被HOOK, NtQuerySystemInformation没有遭毒手!
在冰刃的进线程监控中得到的游戏PID和任务管理器里的一样,我openprocess和ReadVirtualMemory完全绕过了SSDT,但就是读不出东西!然后一调用VirtualQueryEx就会被游戏发现!
openprocess得到的句柄绝对是正确的!因为我可以在游戏中创建远线程!!
- 标 题: 突破 *** 反外挂系统
- 作 者:c李拨
- 时 间:2007-11-18 17:47
- 链 接:http://bbs.pediy.com/showthread.php?t=55127