本文主要是介绍WinDbg调试异常(!!! second chance !!!),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
以前使用windbg调试样本时不时会遇到异常并提示(!!! second chance !!!),之前也尝试查找过原因但是并没有找到,一直十分郁闷。这次又出现了异常,有时间查找原因并发现了问题所在,于是记录下分析过程。
起因
在调试一个样本,每次用windbg调试都会出现:
但是使用x64dbg调试或者直接运行在无调试器参与时均不会出现异常,之前也遇到过,但一直没有解决。
分析经过
思路是使用windbg一步一步的运行,发现在代码运行到fseek( )函数时,传入的文件指针为0,调试截图如下:
其中的rcx为0,就是文件指针没有值,后续肯定会出现异常。于是查看被调试样本中的一段读取文件的代码,读取的是一个相对位置非绝对位置,代码如下图所示:
大概率可能是相对路径的的问题,我们依旧使用windbg调试,这是我们把要读取的文件复制一份到windbg所在目录,运行结果如下图:
这篇关于WinDbg调试异常(!!! second chance !!!)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!