我们要先看看微软官方的著名HOOK库:

Detours Professional 3.0

售价:US$9,999.95

功能列表:

Detours 3.0 includes the following new features over Detours 2.x:

  • Support for 64-bit code on x64 and IA64 processors (Professional Edition only).

  • Support for all Windows processors (Professional Edition only).

  • Removed requirement for including detoured.dll in processes.

  • Compatibility improvements for detouring APIs used by managed-code (MSIL) programs, especially on x64 processors.

  • Addition of APIs to enumerate PE binary Imports and to determine the module referenced by a function pointer.

从上面我们可以看到 功能着实强大啊,对64位以及64相关进程甚至全部WINDOWS进程均可以HOOK,基本上可以称之为牛逼库。

实际上使用过免费版的知道,基本上Detours还能分析PE结构,导入表和导出表修改等。

本次我要介绍的是像我这种穷人屌丝才能用得起的,EASYHOOK。

我们来看看EASYHOOK的介绍:

EasyHook的口号:

EasyHook Continuing Detours

我们可以理解为它就是Detours的替代品,用于替代那些买不起昂贵微软产品的屌丝们。

OK我们再来看看它的强大:

  • 首先他支持C#语言(此处已超越Detours),拥有C# Wapper

  • 与Detours的收费版本一致的是,支持全部类型的进程

  • 完美支持64位进程以及目标

  • 已经持续更新很久,并且拥有强大的支持。

  • 著名游戏引擎UNREAL在使用该系统,虽然我没注意过在哪里使用过。

  • 支持托管以及非托管级别的代码调用以及HOOK

  • 开放全部源码,可以学习修改,提取甚至静态编译

  • 超级简单的注入远程DLL至对方进程,这点比Detours要简单的多。

  • 强大的接口文档,这个写的非常详细了

  • 驱动级选项,认真读文档会知道他可以选择性的使用驱动程序来提升本身的权限

  • 拥有强大的API可以检测到目标进程或系统进程是否为64位

  • 注入时可针对64位和32位做不同的接口

缺点是 有C++的接口,只是需要提炼和编译一下,研究成本明显略高。

官方主页:http://easyhook.codeplex.com/

丢弃昂贵的Detours Professional 3.0,使用免费强大的EasyHook的更多相关文章

  1. ChemOffice Professional 16.0新增了哪些功能

    ChemOffice Professional 16.0是为终极化学和生物组件设计,可满足化学家和生物学家的需求.ChemOffice Professional帮助科学家有效地检索数据库,包括SciF ...

  2. 对ChemDraw Professional 16.0你了解多少

    ChemDraw Professional 16.0组件为科学家提供了最新的科学智能应用程序组件,绘制化学结构图和分析生物路径图.  ChemDraw Professional 16.0 ChemDr ...

  3. Xcode 7.0 官方免费的真机开发

    Xcode 7.0 官方免费的真机开发 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转 ...

  4. 使用 Apache James 3.3.0(开源免费) 搭建外网电子邮件服务器(基于 Windows + Amazon Corretto 8)

    对于邮件服务器的安装,请先参阅: 使用 Apache James 3.3.0(开源免费) 搭建内网电子邮件服务器(基于 Windows + Amazon Corretto 8) https://www ...

  5. 文本编辑简体中文专业版EmEditor Professional v12.0.8(12/27/2012更新)姓名+注册码

    这是一个简单好用的文本编辑器,支持多种配置,自定义颜色.字体.工具栏.快捷键设置,可以调整行距,避免中文排列过于紧密,具有选择文本列块的功能(按ALT 键拖动鼠标),并允许无限撤消.重做,总之功能多多 ...

  6. UltraEdit for mac 3.2.0.10免费破解版下载!!

    http://www.mactech.cn/a/108.html UltraEdit for mac 3.2.0.10破解版下载地址 看很多朋友不知道算号器的使用方法,分享如下: 1. 解压Ultra ...

  7. 使用 Apache James 3.3.0(开源免费) 搭建内网电子邮件服务器(基于 Windows + Amazon Corretto 8)

    电子邮件服务器,对于很多公司,都是需要的. 虽然现在很多人,使用 QQ .微信进行一对一的工作沟通,使用QQ 群.微信群进行多人沟通,但这些即时聊天工具,与电子邮件相比,仍有很多不足: a. 电子邮件 ...

  8. GitHub自动化部署(CD) asp.net core 5.0 项目(免费空间)

    这里我简单介绍一下使用Github自动化部署自己项目到Heroku云服务器上,Heroku竟然是一个很非常老牌的云平台服务商,竟然还没听说过,网上一查2010被Salesforce收购,网上有很多关于 ...

  9. 0元免费领《JAVA日志》教程,天啦噜!

    天啦,老码疯了!辛辛苦苦,费心费力准备的<java日志实战及解析>教程真的不要钱了吗? 作为添物网的小编,每天看着老码为了给大家录制课程,加班加点的做课件,为了保证课程的质量,老码一遍又一 ...

随机推荐

  1. linux centos6.5 安装gcc-c++时出现 yum install gcc-c++ cannot find a valid baseurl for repo...

    1.输入命令:cd /etc/sysconfig/network-scripts/ 2.ls查看该文件夹下 3.vi ifcfg-eth0 按i进行编辑,添加如下两行后,esc →shift+:→wq ...

  2. jfrog artifactory docker 安装试用

    预备环境(docker 安装模式,使用的免费版本): docker-ce (启用镜像加速) 1. 镜像拉取 docker.bintray.io/jfrog/artifactory-oss 2. 启动 ...

  3. UGUI 分页渐变居中效果

    代码相当冗长,仅作自己记录 在此分页上修改的https://blog.csdn.net/qinyuanpei/article/details/49781133 using UnityEngine;us ...

  4. 初上dubbo

    编译异常 no groovy library is defined for module http://blog.csdn.net/lu_wei_wei/article/details/7601968 ...

  5. CentOS7上部署https

    目前很多浏览器都加强了html都安全性,要求配置https. 下面都例子是在CentOS7上的Apache配置https都过程. 一.生成证书 用OpenSSL生成key和证书: mkdir /etc ...

  6. 第三章 深入分析Java Web中的中文编码问题

    3.1 几种常见的编码格式 3.1.1 为什么要编码 一个字节 byte只能表示0~255个符号,要表示更多的字符,需要编码. 3.1.2 如何翻译 ASCII码:有128个,用一个字节的低7位表示. ...

  7. C++面试题(三)

    1 什么是函数对象?有什么作用? 函数对象却具有许多函数指针不具有的有点,函数对象使程序设计更加灵活,而且能够实现函数的内联(inline)调用,使整个程序实现性能加速. 函数对象:这里已经说明了这是 ...

  8. 虚拟机如何设置外网ip

    实例: 在数据中心机房的一台服务器上安装虚拟机,并在该虚拟机上安装一个操作系统.给该虚拟机配置公网IP,让外网能直接访问到该虚拟上的应用. 这个问题最初觉得简单,不就是桥接嘛,要只让其上网NAT就可以 ...

  9. java成神之——线程操作

    线程 Future CountDownLatch Multithreading synchronized Thread Producer-Consumer 获取线程状态 线程池 ThreadLocal ...

  10. selenium webdriver 的事件处理

    package www.zr.com; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; imp ...