1.DynamoRIO 为一款指令级动态二进制分析平台
2.工作於应用程序与操作系统之间
3.采用代码缓存技术,透过将程序代码拷贝到代码缓存的方式,对目标程序进行仿真(模拟)
执行
4.将运作代码与应用程序本身代码发开(by context switch)
5.在仿真过程中,用户可对目标程序的二进制代码进行修改,达到指令级分析
6.代码拷贝到代码缓存时,DynamoRIO 以基本块(basic block)为单位,其中基本块是指控制 转移类指令(Control Transfer Instruction,CTI,如直接跳转,条件跳转,返回,函数 调 用指令)结束后的
一段指令序列
7.在每个基本块的末尾,程序的执行状态会被保存起来,透过cntext switch 可以反回到 dynamorio中,并可进行下次基本块的拷贝
沒有留言:
張貼留言