x32dbg或x64dbg调试某个程序遇到异常:第一次异常于00007FFA2EDDA839 (406D1388, MS_VC_EXCEPTION)! 无视异常继续运行,加载一些dll文件后还是断在kernelbase.dll的00007FFA2EDDA839处,0F1F4400 00 nop dword ptr ds:[rax+rax],eax. 不过报异常的括号里面的内容变成了(E06D7363, CPP_EH_EXCEPTION). IDA选择Local Win32 debugger也容易出现406D1388异常,Ollydbg倒较少遇到这个异常。
在x64dbg中选择 调试 > 高级 > 隐藏调试器(PEB),便不会出现异常,能正常调试了。如果遇到故意引起异常来反调试的软件,可以使用一些x64dbg的插件,比如SharpOD. 还可以到https://github.com/x64dbg/x64dbg/wiki/Plugins下载ScyllaHide, TitanHide等。
PEB是指Process Environment Block,进程环境块,是Windows系统定义的结构体,其成员如下:(来源