【软件逆向-Steins Gate “命运石之门” 一种基于veh的r3拦截syscall的方法】此文章归类为:软件逆向。
背景
近年来越来越多的病毒/壳都开始使用syscall(光环之门/地狱之门)等技术直接来调用系统api来防止hook,这给逆向带来了困难,故本文提供了一种方法来对此种技术进行反制
思路
由于调用号在各个系统上有所不同,所以此类技术一般会通过解析ntdll中的汇编代码来获取调用号,本方法即针对此特性,将ntdll中的调用号替换为不存在的调用号,当进行syscall时使用错误的调用号会导致异常,这时我们只需要使用veh hook的思路,即捕获异常(syscall产生的异常)并修改其寄存器,即可在r3拦截syscall
原理模拟
传递一个错误的调用号然后注册veh
运行后可见以下输出
Error address bf17fb
CPU register:
eax ffffffff ebx 630000 ecx 0 edx 93f9cc
可以看到已经成功捕获到了syscall产生的异常eax即为调用号
实践
待续...
更多【软件逆向-Steins Gate “命运石之门” 一种基于veh的r3拦截syscall的方法】相关视频教程:www.yxfzedu.com