能力值:
( LV6,RANK:80 )
|
-
-
2 楼
you are right。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
内存访问异常,也叫页异常,中断向量号为0x0E.也就是产生 int 0x0E中断。把系统文件ntoskrnl.exe啦进IDA中,然后搜索_IDT 一遍搜索不到就继续搜索。会找到如下:
IT:005EE144 98 89 40 00 dd offset _KiTrap09
INIT:005EE148 00 8E 08 00 dd 88E00h
INIT:005EE14C B6 8A 40 00 dd offset _KiTrap0A
INIT:005EE150 00 8E 08 00 dd 88E00h
INIT:005EE154 F3 8B 40 00 dd offset _KiTrap0B
INIT:005EE158 00 8E 08 00 dd 88E00h
INIT:005EE15C 50 8E 40 00 dd offset _KiTrap0C
INIT:005EE160 00 8E 08 00 dd 88E00h
INIT:005EE164 4C 91 40 00 dd offset _KiTrap0D
INIT:005EE168 00 8E 08 00 dd 88E00h
INIT:005EE16C 89 98 40 00 dd offset _KiTrap0E
INIT:005EE170 00 8E 08 00 dd 88E00h
int 0x0E 就对应的上面的 _KiTrap0E 函数,操作系统就是调用这个函数,去处理这个异常,当然内部处理过程特别复杂,就不一一解释了,若楼主有兴趣可以自己去跟进分析。
若要捕获这个异常,要是我做,我会在系统的异常处理链表里面注册一个自己的异常处理函数去捕获,就是在
FS:[0]处。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
非常感谢,TzdnerC ,你的耐心详细的解答,令很我满意,再次表示感谢
|
能力值:
( LV6,RANK:80 )
|
-
-
5 楼
还是VEH优先。SetVectorExceptionHandler(0,FuncAddr)
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
感谢 hrpirip 提供的思路,晚些时候,等我研究下,有结果了再来向大家汇报!
|
|
|