能力值:
( LV2,RANK:10 )
|
-
-
2 楼
怎么没有回答啊?是我问得太简单了吗?
|
能力值:
( LV15,RANK:1673 )
|
-
-
3 楼
seh,异常处理程序
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
可以说的再详细一点吗?或者,有什么对应的资料吗?
|
能力值:
( LV12,RANK:650 )
|
-
-
5 楼
大致思路是这样,设好SEH,在平常情况下INT 3会引发异常转到处理程序中执行,而有调试器存在时不会引发异常而继续执行,这样就可以检测到
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
谢谢,我刚刚找到了一点关于SEH的资料,有点明白了,这是我的摘要:
------------
seh (Struct Exception Handling)
seh 的大致结构如下:
typedef
{
DWORD dwNextSEHAddr; // 下一个 SEH 结构地址
DWORD dwHandlerAddr; // 异常处理函数入口
}SEH;
一个 SEH 并不是孤立的,而是一个链表结构。
一个异常最终会传递给系统。这个链表的首部位于 fs:[0] 这个位置。
-------------
我在跟踪我说的这个程序的时候就见到fs:[0],在很多AntiDebug的资料中也经常见到fs:[0],原来是这个意思啊,谢谢上楼的大哥!!!!
不过,怎么Anti这个AntiDebug技术呢?
|
能力值:
( LV12,RANK:770 )
|
-
-
7 楼
seh (Struct Exception Handling)
找到context结构
修改context IP 入口数值・・・
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
哦,谢谢大哥!
|
|
|