PIN平台允许你通过添加、修改或者变换指令逻辑来在每一个指令基本块的内部插装单独的指令。
动态插桩软件,前者开源,有时间再研究,先记下了
为了了解动态插桩的原理,找了一段时间,发现这篇论文总结的不错,先记下了:
《支持二进制执行码调试和测试的插装技术研究》
总体感觉,第一种方式和我猜测的差不多,是采用调试的办法,或者使用调试寄存器,或者使用调试API
第二种方式,需要动态的即时编译,这个正是我想了解的,通过学习了解原理,我觉得这也不难实现,毕竟不需要用这些动态插桩软件去处理病毒。
通过了解原理,我觉得这个做的事情可能和以前用过的Pyemu有点相似,不同的是这些工具速度更快