Tesla.Angela 发表于 2015-1-1 00:00:10

[讨论]一个简单反调试的实现(兼容WIN32/WIN64)

直接上代码,主要原理是根据处理异常的时间长短判断是否存在调试器。
在有调试器的情况下,异常处理的时间远比正常情况要长。
#include <stdio.h>
#include <Windows.h>
int main()
{
        DWORD t1,t2;
        //测试GetTickCount的有效性,如果无效则表示发现调试器
        t1=GetTickCount();
        Sleep(500);
        t2=GetTickCount();
        if(t2-t1<400)
                puts("FIND DBG\n");
        else
                puts("NO DBG\n");
        //故意引发异常查找调试器
        t1=GetTickCount();
        __try
        {
                memcpy((PVOID)1234,(PVOID)5678,90);
                //DebugBreak();
        }
        __except(1)
        {
                t2=GetTickCount();
                puts("goto __except!\n");
        }
        if(t2-t1>10)
                puts("FIND DBG");
        else
                puts("NO DBG");
        getchar();
        return 0;
}这东西在WIN32上当然过不了SOD,但是在WIN64上很好用。{:soso_e113:}

不过在产品上实现反调试,当然不需要我们费劲:**** Hidden Message *****

0xAA55 发表于 2015-1-1 00:20:51

哈哈 我一定是第一个回复的!

bqrm_521 发表于 2015-1-2 09:55:24

nice...

zfdyq 发表于 2015-1-2 10:48:47

学习学习,向老大学习~

qq569582281 发表于 2015-1-5 12:57:30

看看帖子的内容

sku__ 发表于 2015-1-6 13:54:37

谢谢了, 学习ing

techminister 发表于 2015-1-18 09:36:44

恩恩 不错 来学习了

jzy1115 发表于 2015-1-23 11:06:15

看看了。。。。

wonderzdh 发表于 2015-3-17 10:55:26

x64上很好用,是因为x64无法hook,从而破掉这个检测吗?

OD里的忽略异常,是否就可以过掉这中方法了。

luqi_44 发表于 2015-3-19 10:40:59

确实比较简单的

upring 发表于 2015-5-16 13:09:29

谢谢支持一下

kovipp 发表于 2015-5-31 01:48:53

看看这是什么

63430334 发表于 2015-5-31 21:59:29

好东西看一下

陌路人 发表于 2015-6-6 15:00:57

可以,先自己写一个调试器, 然后把所有异常消息,全部忽略掉.并且把触发的异常代码打印一下.
这样就可以看出,频繁触发的什么异常,就知道软件搞什么鬼了.然后再调试器忽略掉这个异常就OK了

yxwsbobo 发表于 2015-6-9 01:07:37

309100 发表于 2015-6-25 12:27:52

我是来学习的...

kz丶cn 发表于 2015-7-30 23:41:11

主动触发异常 貌似很多游戏保护都有了

n36437517 发表于 2016-2-19 09:43:20

学习学习

haidejintou 发表于 2016-4-17 23:23:51

看看

7lunatic 发表于 2017-12-20 00:13:07

看不懂 先把有关系的都下载收藏

710266108 发表于 2017-12-31 14:22:38


恩恩 不错 来学习了

YOUBADBAD 发表于 2018-1-6 21:43:59

学习学习,

xjun 发表于 2018-1-8 16:47:37

试试看。。。

sqiwg 发表于 2018-1-8 22:57:14

感谢分享...

sc12345 发表于 2018-1-13 22:29:08

谢谢分享!

Peter_king55 发表于 2018-3-23 14:13:07

感謝分享!!

Quinlan 发表于 2018-3-23 15:50:17

反调试也好,加壳也好,都是过滤掉一批技术水平低却想不劳而获的人,当然高手面对vmp应该也会一阵恶心

flac 发表于 2018-3-24 14:39:55

谢谢分享,学习简单的反调试技术
页: [1]
查看完整版本: [讨论]一个简单反调试的实现(兼容WIN32/WIN64)