微软库 Detour

提供API劫持的一套开源库
Detour必须运行在发布模式下

劫持简单实例:

    #include <windows.h>#include "detours.h"#pregma comment(lib, "detours")int (*poldsystem)(const char * _Command) = system; //存放system函数地址//新的SYSTEM函数,把字符串输出int newsystem(const char * _Command){char str[1024] = {0};sprintf(str, "echo %s", _Command);system(str);}void hook(){DetourRestoreAfterWith(); //恢复之前状态,避免反复拦截DetourTransactionBegin(); //开始劫持DetourUpdateThread(GetCurrentThread()); //刷新当前进程DetourAttach((void **)&poldsystem), newsystem); //劫持DetourTransactionConmit(); //立即执行}

反劫持简单实例:

    void unhook(){//DetourRestoreAfterWith();DetourTransactionBegin();开始操作DetourUpdateThread(GetCurrentThread());//刷新当前进程DetourDetach((void **)&poldsystem), newsystem); //解除劫持DetourTransactionCommit(); //立刻生效}

微软库 Detour相关推荐

  1. 微软研究院Detour开发包之API拦截技术

    我们截获函数执行最直接的目的就是为函数增添功能,修改返回值,或者为调试以及性能测试加入附加的代码,或者截获函数的输入输出作研究,破解使用.通过访 问源代码,我们可以轻而易举的使用重建(Rebuildi ...

  2. [导入]微软研究院Detour开发包之API拦截技术

    Detours是一个在x86平台上截获任意Win32函数调用的工具库.中断代码可以在运行时动态加载.Detours使用一个无条件转移指令来替换目标函数的最初几条指令,将控制流转移到一个用户提供的截获函 ...

  3. java调用微软语音库,程序员罗杰-.NET C# 语音合成源码(TTS)微软库

    应表哥要求,写一个简单的TTS软件,他们单位上用于广播通知用.源码如下: 简单说明: public partial class frmMain : Form { public frmMain() { ...

  4. 划入 .NET 6版本目标,微软鼓励开发人员信任第三方库

    喜欢就关注我们吧! 鉴于许多 .NET 社区的开发人员都不愿意使用非微软官方打造的库,近日,微软 .NET Framework 团队的项目经理 Immo Landwerth 发布了一个名为" ...

  5. 图解Detour安装及简单使用实例(Win7+VC6)

    相关下载: http://pan.baidu.com/s/1o7OEMc6 detour6.rar是本文工程 DetoursExpress30是微软下载的detour安装文件 detoured是编译好 ...

  6. autoHotkey进阶 --- 用于访问窗口对象-acc库的简单配置

    文章目录 autoHotkey进阶 --- 用于访问窗口对象-acc库的简单配置 引言 配置过程 资源 函数列表 autoHotkey进阶 - 用于访问窗口对象-acc库的简单配置 引言 access ...

  7. 一种在注入进程中使用WTL创建无焦点不在任务栏出现“吸附”窗口的方法和思路

    最近一直在做沙箱项目,在项目快接近结尾的时候,我想给在我们沙箱中运行的程序界面打上一个标记--标识其在我们沙箱中运行的.我大致想法是:在被注入程序的顶层窗口上方显示一个"标题性"窗 ...

  8. 阻止SPY++类似的程序捕捉软件窗口

    我以前用Spy++能轻易捕捉360软件界面,除了一些应用DHTML制作的窗体.昨天我再用Spy++捕捉的时候捕捉不到了,甚至连最外围的对话框都捕捉不到,显然是做了类似拦截API的处理.下面我也模拟一下 ...

  9. Windows 软件安全---注入安全

    在Windows软件中,绝大多数软件都是exe文件,然后有很多动态链接库dll构成.所以很多黑客就可以通过dll注入的形式入侵软件,达到入侵甚至盗取密码的功能,接下来本人介绍一种方法,可以防止非法dl ...

最新文章

  1. python获取ftp所有文件名_在Python中获取最新的FTP文件夹名称
  2. python教程视频在线-微软再推免费在线Python教程 包含20个视频
  3. [转]毕业五年决定你的命运-----值得所有不甘平庸的人看看
  4. python中cock什么意思_[转载]原创脚本逐步实现Autodcock-Vina的虚拟筛选及筛选后分析...
  5. CodeBlocks问题解决
  6. excel制作跨职能流程图_用Excel规划求解工具,实现组合投资优化
  7. 微软:SolarWinds 供应链攻击事件幕后黑手攻击全球24国政府
  8. 计算机科学与技术专业导论_“课程思政”建设经验分享 | 王振武:专业导论(计算机科学与技术)...
  9. Python深度学习基础(四)——损失函数
  10. python-网易云音乐搜索下载脚本
  11. 如何优化项目进度管理
  12. Ubuntu 中文目录改为英文目录
  13. java8 时间加一秒_都9012了,Java8中的日期时间API你还没有掌握?
  14. 提升自己的认知-思维模型
  15. 常见面试题及解答|计算机网络
  16. java设计最简单记账本_家庭记账本小程序之前端页面设计(java web基础版一)
  17. win2008系统 安装hplaserj1010打印机驱动程序
  18. nginx设置cookie
  19. 使用css将彩色图片转换为黑白图片
  20. android 11 移除桌面搜索栏

热门文章

  1. redis(2):redis简介
  2. Linux基础篇--shell脚本编程基础
  3. 移动端WEB开发之-响应式布局
  4. java swing弹窗_java Swing实现弹窗效果
  5. 【我的物联网成长记6】由浅入深了解NB-IoT
  6. php sentry,sentry使用
  7. 夜风中的百合 (诗)
  8. 在Linux系统上用nmap扫描SSL漏洞的方法
  9. 『-琼海-』人生感悟四则(转载)
  10. Webpage not available err_cleartext_not_permitted