第一课 简单的实现一个反调试
欢迎大家观看我的反调试课程本人也是一个小白,希望大家多多支持,我们一起进步
课程如果有讲的不对的地方可以在评论区发送,感谢大家的支持[抱拳]
现在开始我们的第一课,简单的实现一个反调试
用到的API是isDebuggerPresent
易语言源码如下
.版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 返回值, 逻辑型
.程序集变量 isDebug, 整数型
.子程序 __启动窗口_创建完毕
返回值 = IsDebuggerPresent ()
.判断开始 (返回值 = 真)
信息框 (“正在被调试”, 0, , )
BOOL IsDebuggerPresent(void);
这是C++中的函数原型
这是一个最简单的反调试API,希望大家能够记住
当然了,这个函数的汇编写法长这个样子
等效的汇编代码为
mov eax,fs:
mov eax,
mov 变量,eax这个变量是你接收的返回值,也就是上述e代码的isDebug这个变量
我们用汇编的形式在易语言中表达一下
.版本 2
' __asm{
' mov eax,fs:
' mov eax,
' mov isDebug,eax
' }
' 这里的isDebug的值应该是十六进制的70,我们改成十进制112
.判断开始 (isDebug = 112)
信息框 (“正在被调试”, 0, , )
.默认
当然我们在实际情况中,直接这么写是不对的,应该起一条线程不断的检测
这节课主要是简单的了解一下,整套课程面向易语言小白和想了解反调试攻防的萌新罢了
肯定已经有很多人都知道这种反调试方法了吧哈哈哈
页:
[1]