编译环境:delphi 2010+windows 7 u ,用途读取其他程序中readprocessmemory和writeprocessmemory的参数,但不知读取偏移即a+($b),b是怎么读的

一 、用hook全局钩子 线程钩子:已实现 使用INLINE hookapi,CriticalSection临界区,dll分为动态loadlibry和静态加载

问题1:对多线程目标程序HOOK 卸载时会出现错误,应该是线程不断读写内存函数READPROCESSMEMORY,但钩子正在卸载没有改回正确的地址就被目标程序读取,导致目标程序处理错误的API地址而出错,如果不是不停读写 卸载不会出现错误?不知是不是

问题2:使用INLINE HOOK目标程序多线程读取内存,程序在卸载钩子时有时会出错,可能跟问题一 一样。使用CreateRemoteThread远程注入是否会有此问题,应该没有吧!

问题3:自己的替代函数中使用记录日志可能不响应,为什么?

问题4:使用临界区后没出现EXPLORER的问题,也可能是逻辑代码问题,有待研究。

备注:

windows核心编程中的 IAT Hook 是否存在线程问题??

1 : Hook LoadLibrary*后, 若两线程同时调用LoadLibrary, 可能同时修改同一个模块的IAT表, 可能存在访问冲突(此问题可以用临界区解决)
2 : Hook LoadLibrary*后, 他对本进程所有模块的的IAT表都进行修改(使用WriteProcessMemory), 某线程可能此时访问正在被修改中的IAT表, 可能call 到其它地址去。(若真存在多线程问题, 此问题就有点麻烦)。似乎是说多线程下同时写入读写东西时,还没修复回IAI就被其他线程调用,程序会出错。

2009-10-0515:14:29

源码在此 !

HOOK api readprocessmemory and writeprocessmemory相关推荐

  1. Ring3下Inline Hook API

    用CreateFile为例子,讲解一下Ring3下的Inline Hook API,基本原理很简单 1.获取CreateFile函数的地址 2.读取CreateFile函数的前8个字节 3.将Crea ...

  2. 汇编Ring 3下实现 HOOK API

    [文章标题]汇编ring3下实现HOOK API [文章作者]nohacks(非安全,hacker0058) [作者主页]hacker0058.ys168.com [文章出处]看雪论坛(bbs.ped ...

  3. Windows下Hook API技术小结 (转)

    1.基本概念 钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的.当消息到达后,在目标窗口处理函数之前 ...

  4. [检测过检测] 重写 ReadProcessMemory 、WriteProcessMemory

    一.本文大纲 系统调用的两种方式:中断门和快速调用 _KUSER_SHARED_DATA 结构 使用 cpuid 指令判断当前CPU是否支持快速调用 3环进0环需要更改的4个寄存器 以 ReadPro ...

  5. Windows下Hook API技术

    Windows下Hook API技术 什么叫Hook API?所谓Hook就是钩子的意思,而API是指Windows开放给程序员的编程接口,使得在用户级别下可以对操作系统进行控制,也就是一般的应用程序 ...

  6. 西裤哥的 Hook Api Lib 0.2 For C

    标 题: [分享]西裤哥的 Hook Api Lib 0.2 For C 作 者: 海风月影 时 间: 2007-03-21,15:11:30 链 接: http://bbs.pediy.com/sh ...

  7. 关于HOOK API Lib 0.1 For Delphi

    标 题: HOOK API Lib 0.1 For Delphi 作 者:xIkUg my周未一个朋友要求用Delphi做了一个东西,用到了API HOOK,于是写了个简单的 SetOnBefore把 ...

  8. 通过Hook API调用打造进程监控程序

    *(收藏)http://hi.baidu.com/linuxetc/blog/item/1b91c813b017e4035baf53a7.html Hook(钩子)是Windows消息处理过程中的一个 ...

  9. 从龙之谷双开领悟出的——HOOK API

    第一部分--限制程序多开方法 这里有一篇文章讲得很详细了,http://wenku.baidu.com/view/ac9d0215a2161479171128af.html 龙之谷使用的是互斥体方法, ...

最新文章

  1. mysql 去重求总数_Mysql获取去重后的总数
  2. nodejs里fs.readFile的相对路径转绝对路径问题
  3. openwrt是嵌入式linux,非常方便的OpenWrt的嵌入式Linux开发环境
  4. revit如何根据坐标进行画线_生物水处理专用消泡剂是如何根据生物水处理工艺原理进行消泡的?...
  5. 2017 开源软件排行_2017年面向设计师和艺术家的顶级开源解决方案
  6. python 中的 [-1::1] 啥意思
  7. java基本操作-2
  8. MDT修改部署时的背景图
  9. 双击java安装包没有反应_win7系统双击JeR安装包没有任何反应的解决方法
  10. 中科大 EPC课程 爬虫(最新,效果良好)
  11. android屏幕内容实时传输,在设备之间无缝传输内容
  12. 【常用 JS 插件】jQuery TreeTable 树表格插件
  13. 湖南职称计算机英语,湖南职称计算机考试哪里考,A,B,C,D各级别是怎么划分的...
  14. 用Python爬取东方财富网上市公司财务报表
  15. 中国最美滴100首古诗
  16. 文件不能设置默认打开方式怎么办?
  17. 基于蜜蜂优化算法优化的卷积神经网络(CNN)图像分类——附代码
  18. 【python】查找array中非零元素的横纵坐标
  19. js encodeuricomponent php解码,JS中encodeURIComponent函数用php 解码
  20. JavaWeb中点赞功能的实现及完整实例

热门文章

  1. Poj·Accumulation Degree
  2. 安科瑞能效管理系统在地下污水处理厂中的应用
  3. kuix教程1:我的第一Kuix应用
  4. 让电商运营10倍提效的自动化工具,你get了吗?
  5. 大工16计算机应用基础2,大工20秋《计算机应用基础》在线测试2
  6. 软件测试自动化验证码,自动化测试如何解决验证码的问题
  7. 【收藏版】Linux常用命令大全
  8. 计算机技术专插本考什么科目,2021专插本考试,你的专业要考什么科目?
  9. 防静电手环在计算机中的功能,无线静电手环是怎样防静电的原理是什么
  10. 前端常见的6种HTML5错误用法