ksco 的工作日志
245 subscribers
168 photos
10 videos
4 files
84 links
内容主要取决于我正在做的东西,目前主要是模拟器 / DBT 之类的散乱话题。
Download Telegram
Channel created
Channel photo updated
DynamoRIO 的参考资料真是少得可怜。
DynamoRIO 运行时不使用 libc 函数而是全部手动汇编实现,主要是因为 libc 函数不能保证 Reentrancy。
DynamoRIO 提供了三种风格的 API:
- 需要手动在 guest 源码中插桩的 API,client 和 guest 捆在一起
- client 是 standalone 的
- client 作为一个 so 加载到 drrun 里面,client 和 DynamoRIO 通过事件(hooks)沟通

最后一种方式最常见,因为不需要 guest 源码且 client 编写也比较简单。
花了几天时间把 DynamoRIO 钦定参考论文 [1] 大致看完了(300 页),内容还算翔实。接下来又可以继续去看代码了。

[1] Efficient, Transparent, and Comprehensive Runtime Code Manipulation