专栏首页Eureka伽罗的技术时光轴PIN 二进制插桩平台 DynamoRIO与Pintools及Valgrind

PIN 二进制插桩平台 DynamoRIO与Pintools及Valgrind

PIN平台允许你通过添加、修改或者变换指令逻辑来在每一个指令基本块的内部插装单独的指令。

动态插桩软件,前者开源,有时间再研究,先记下了

为了了解动态插桩的原理,找了一段时间,发现这篇论文总结的不错,先记下了:

《支持二进制执行码调试和测试的插装技术研究》

总体感觉,第一种方式和我猜测的差不多,是采用调试的办法,或者使用调试寄存器,或者使用调试API

第二种方式,需要动态的即时编译,这个正是我想了解的,通过学习了解原理,我觉得这也不难实现,毕竟不需要用这些动态插桩软件去处理病毒。

通过了解原理,我觉得这个做的事情可能和以前用过的Pyemu有点相似,不同的是这些工具速度更快

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 截取程序的网络封包(Delphi Hook API)

    有时候我们需要对其它应用程序发送和接收的网络数据进行拦截,比如要对IE发送的**头进行分析,得到请求的地址等.这次我们可以用一些例如WPE, Sniffer之类...

    战神伽罗
  • 初探Windows用户态调试机制

    最近写Named Pipe Server Using Completion Routines 发现在delphi调试器中会阻塞在:

    战神伽罗
  • 如何计算UDP/TCP检验和checksum

    如何计算UDP/TCP检验和checksum 一、下面的图是一个UDP的检验和所需要用到的所有信息,包括三个部分: ...

    战神伽罗
  • 用更优雅的方式写产品文档

    李俊负责 Cloud Studio 的产品规划,对于各种设计、开发工具有比较深的研究,一直在探索如何缩减设计开发之间的协作阻力。

    CODING
  • 什么是计算,什么可以计算?

    大数据文摘
  • 大数据ETL实践探索(4)---- 搜索神器Elastic search

    本系列文章主要针对ETL大数据处理这一典型场景,基于python语言使用Oracle、aws、Elastic search 、Spark 相关组件进行一些基本的...

    流川疯
  • IIS各种问题汇总

    1.不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(overrideModeDefault="Deny"),或者是通过...

    用户1055830
  • 人才稀缺的区块链,程序员转型入门必看这四项技能

    区块链大本营
  • JDK源码分析-AbstractQueuedSynchronizer(1)

    前文「JDK源码分析-Lock&Condition」简要分析了 Lock 接口,它在 JDK 中的实现类主要是 ReentrantLock (可译为“重入锁”)...

    WriteOnRead
  • VList data structures in C#

    VLIST数据结构是由Phil Bagwell设计的,它作为在函数式编程语言单链表的替代品。它可以被认为是链接列表和动态数组(如.NET Framework的L...

    BAStriver

扫码关注云+社区

领取腾讯云代金券