我试图分析一些执行崩溃信息,并更好地确定内存访问错误的根本原因,我想reverse execute从崩溃点开始程序。
比如下面找出内存访问错误的根本原因,我想从第三行逆向执行,利用一些数据流分析技术,我应该可以在第一行找出根本原因。
mov -0x18(%rbp),%rax <---- root cause is at memory -0x18(%rbp)
add %rdx,%rax
mov (%rax),%eax <--- crash when reading (%rax)
所以这是我的问题,是否有任何可以支持反向执行的动态分析工具/调试器?我更喜欢Pin,但我不知道Pin可以做到这一点..