扒光tp后的一些感想

完成对tp的跟踪后有一些感触

tp不愧为游戏保护中的软柿子,它对自己的保护除了反调试之外,就是汇编花指令了(我称他代码混淆),对我个人来说,最麻烦的就是他的代码混淆了,经历过他两种完全不同的混淆方式,最开始的比较简单,就是一大段循环,循环的出口就是要调用的函数,规律很好找,每次跳出循环时esi edi 寄存器的值都一样,当时就笑骂腾讯的人弱智,后来他们把代码混淆的方式改变了,我没有发现特别容易明显的规律,只能靠常规处理花指令的方式,它的一些执行代码往往夹杂在这些化指令当中,不过还好,它的花指令不多,只要有耐心一步步跟踪也能跟踪到目标函数,我采用的是参数跟踪法:断点目标参数访问(读写),能省不少时间。

其实有时候也会站在tp开发人员角度去考虑问题,怎么不让人跟踪到自己的代码。

首先:我觉得不能采用传统的反调试方法(至少不能只靠传统的反调试方法),其次在检测到调试后不能做那么明显的处理,比如:重启。如果是我的话,我会随机修改部分代码,导致蓝屏或其他。比如:但我检测到自己被调试后,我往代码段随机写能导致异常的指令,这样的结果是要么蓝屏,要么什么事情都没发生。此时就算知道被检测调试了,但想定位检测代码就太难了。

其次,对于SSDT hook 不管是inlinehook 还是headhook 要绕开还是很轻松的。SSDT函数说白了就是个被玩滥了东西,靠它保护游戏还真是不靠谱,有什么其他办法呢?以我绕开SSDT的经历,还真是没有好办法,呵呵。除非往更加底层走,这方面我没研究,所以也就没发言权了。

还有,对于tp的检测线程,这方面感觉tp处理的太没水平了,我将他的线程执行函数return掉,他居然就没有其他的校验机制去校验。如果是我来做tp,我想我肯定会有线程是否正常执行的检测,这种方法很多,实现又容易。同样的道理,对于IoQueueWorkItem开始执行的异步函数执行检测也可以有很多种方法。

先写这些吧,呵呵,懒了,以后有时间继续补充吧


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TP5.1程序后下载是指在使用ThinkPHP5.1框架进行开发时,在开发环境中完成程序编写后,将程序部署到服务器并进行下载的过程。 首先,我们需要确保服务器环境满足ThinkPHP5.1框架的运行要求,包括PHP版本、扩展等。然后,将开发好的程序文件打包成压缩文件,使用FTP工具或者服务器的文件管理功能将压缩文件上传到服务器的指定目录。 接下来,解压缩上传的文件,并根据服务器配置进行相关的设置。主要包括数据库配置、域名配置等。在服务器上安装好相关的依赖库,并在服务器端使用Composer对项目进行依赖管理。 完成配置后,我们可以通过浏览器访问服务器上的程序,例如域名指向的URL地址。如果配置无误,页面应该可以正常显示。可以在本地进行一些代码和功能的测试,确保程序可以正常运行。 最后,我们可以通过浏览器下载程序的安装包或者源代码。只需在浏览器中输入程序的下载链接即可。用户可以根据自己的需求选择下载方式,如果是安装包,可以直接安装到本地进行使用;如果是源代码,可以在本地进行二次开发或者学习研究。 总结来说,TP5.1程序后下载需要进行服务器环境配置、文件上传、解压缩、依赖安装等步骤,并使用浏览器下载安装包或者源代码。这样,我们就可以在服务器上部署完整的TP5.1程序,并在本地进行使用和学习。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值