能力值:
(RANK:570 )
|
-
-
2 楼
我发现开启HIDEOD插件所有功能的时候,会导致调试器无法收到某些错误信息。
例如你使用anti-rdtsc时,当程序执行到rdtsc,OD就收不到错误信息,反而是WINDOWS弹出错误对话框。也就是说隐藏OD是以一定功能的损失为前提的。
前几天学习调试API,翻到“绿盟安全月刊->第46期->技术专题”里的“Win32 调试接口设计与实现浅析<1>”。下面是引用其中几句,详细的你自己去看了。
DbgUiConnectToDbg函数(ntos\dll\dlluistb.c:27)尝试连接核心提供的调试子系统端口(名为"\DbgUiApiPort"),如果成功连接会获得一个端口对象(保存在DbgUiApiPort NtCurrentTeb()->DbgSsReserved[1]),和一个调试状态转换的信号灯句柄(保存在DbgStateChangeSemaphore NtCurrentTeb()->DbgSsReserved[0])用于等待调试事件。
此外我也建议你看看Debugging Applications这本书,英文的,邪恶八进制论坛有下载
|
能力值:
( LV12,RANK:210 )
|
-
-
3 楼
好像 EPROCESS 结构里面有一个 DebugPort 成员,不知道是不是和这个有点关系。
|
能力值:
( LV9,RANK:170 )
|
-
-
4 楼
谢谢楼上两位,我这就去看看win32结构化异常处理,相信对我有帮助
|
能力值:
(RANK:1060 )
|
-
-
5 楼
中断向量处理后给了调试例程
|
能力值:
( LV12,RANK:210 )
|
-
-
6 楼
已经解决了就说一下解决办法三
|
能力值:
( LV9,RANK:170 )
|
-
-
7 楼
我问的是个概念问题,而不是操作性的问题,所以没有解决方法撒
|
能力值:
(RANK:570 )
|
-
-
8 楼
5楼的解释才是正路啊,不过简短得让不懂的人无法理解。昨天晚上在CVC论坛看到有人逆向分析了WINDBG和SOFTICE,才明白FORGOT的意思,楼主可以去看看
http://www.retcvc.com/cgi-bin/topic.cgi?forum=17&topic=1192&show=0
以R3的思维去看R0的东西似乎永远都不会有结果,还是努力学学R0的吧
|
|
|