pcjy 发表于 2018-11-15 19:15

一个简洁的反调试

本帖最后由 pcjy 于 2018-11-15 19:19 编辑

一个简单的反调试,只支持在x64系统上跑。代码写得很弱智,所以还望大佬见谅.


想先试试效果的请看这个->>R3的检测调试-代码无保护
https://www.52pojie.cn/thread-817900-1-1.html
(出处: 吾爱破解论坛)

1、通过异常的方式检测系统位数:


2、然后获取ntdll模块句柄:
GetModuleHandle64
3、获取ZwQueryInformationProcess地址
GetProcAddress64


获取完毕后,检查是否被篡改.否则的话就获取服务号

获取到服务号之后直接进行syscall调用。

那些自己实现的函数大部分都转成了机器指令的方式丢到数组中


这样做的原因是我当初是想通过网络的方式下发的方式去执行.
还有一个要注意的是这里的code执行需要修改内存属性,因为跑到了数据段执行了。但是我抛弃了VirtualProtect函数,而是手动修改了区段属性。
代码写得很弱智,所以还望大佬见谅.

代码写得很弱智,所以还望大佬见谅.
代码写得很弱智,所以还望大佬见谅.
代码写得很弱智,所以还望大佬见谅.
这个是源码

这个是汇编的源码

pcjy 发表于 2018-11-16 20:52

wieQ 发表于 2018-11-16 16:24
不知道说什么好,为什么不发布在github上呢

丑陋的代码,发上去丢人。发吾爱我都嫌丢脸{:301_972:}

pcjy 发表于 2018-11-15 22:22

diyc 发表于 2018-11-15 20:08
支持,学习学习!我想知道这个在R3怎么破?

该代码吧,我也不清楚怎么过

dogking 发表于 2018-11-15 19:33

感谢原创,学习学习。

ghy5256 发表于 2018-11-15 19:37

写得很棒,共同进步。

450046181 发表于 2018-11-15 19:39

你能坚持到这个水平已经很不错了,我是不行啊,太艰苦,太乏味,呵呵给你点赞{:1_921:}{:1_921:}{:1_921:}

jacker 发表于 2018-11-15 19:49

支持原创~!

diyc 发表于 2018-11-15 20:08

支持,学习学习!我想知道这个在R3怎么破?

Mxx0176 发表于 2018-11-15 21:39

什么东西,看不懂{:1_937:}

不忘初心哟 发表于 2018-11-15 21:59

对我非常有帮助

Yix17261 发表于 2018-11-15 22:10

顶顶顶,楼主真好
页: [1] 2 3 4
查看完整版本: 一个简洁的反调试