1

与复杂的代码静态分析工作相比,我想做的事情似乎很简单

  1. 查找所有分配代码,并根据分配代码中使用的值插入新的代码片段以更新某些内存
  2. 找到所有基本控制块,为每个块分配一个唯一的id,并根据id插入一个新的代码片段来更新某些内存

目前我有源代码,所以我不需要处理二进制:)

但是我是这个领域的新手,我想知道是否需要像 Perl 脚本这样的东西来手动分析..?任何人都可以给我一些关于如何完成这项工作的指示..?

非常感谢!

4

1 回答 1

1

在这种情况下,动态注入可能更容易。检查 pintool ( http://software.intel.com/en-us/articles/pin-a-dynamic-binary-instrumentation-tool )。据我所知,它允许跟踪内存操作(分配只是一种情况)并且可能允许识别基本块,但我不确定,我没有用 pin 完成这种任务。

于 2013-10-27T03:15:53.020 回答