欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[原创]简单谈谈“游戏圈”所谓的神乎其技的行为检测(3)

[原创]简单谈谈“游戏圈”所谓的神乎其技的行为检测(3)

第二篇中谈到了对纯CALL的辅助软件的一种检测手段,索性接着乱谈这种辅助的检测手段。
不过这里谈谈暗桩模式的检测,堆栈遍历逐层找返回的EIP相信很多人都会。
不过在某些Call的地方插入下面这样的代码,比如游戏逻辑的发包call的加密call里面
于是悲情又出来了~

	WCHAR wzCallerName[MAX_PATH];
	PVOID dwRetArray[62];
	DWORD dwRetCount;
	BOOL bNeedLogStack = TRUE;
	dwRetCount = RtlCaptureStackBackTrace(2,50,dwRetArray,0);//用api是不好的,可以自己实现的说~~
	if (dwRetCount)
	{
		for(DWORD xIndex=0;xIndex<dwRetCount;xIndex++)
		{
			if (CheckExcepAddr((DWORD)dwRetArray[xIndex]))//排除部分白地址
			{
				bNeedLogStack = FALSE;
				break;
			}
		}
		if (bNeedLogStack)
		{
			for(DWORD xIndex=0;xIndex<dwRetCount;xIndex++)
			{
				GetCallerModule((DWORD)dwRetArray[xIndex],wzCallerName);//获取地址模块名称
				ReportToSrv((DWORD)dwRetArray[xIndex],xIndex,wzCallerName);//把信息写入定时返回服务器的数据体里,嘿嘿~
			}
		}
	}

第三篇内容就这些吧,还有几个有意思的检测和暗桩的方法等继续讲~~

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功