【实例简介】截取IE11浏览器WSASend实例

【实例截图】

【核心代码】

.版本 2

.程序集 hook, , 公开

.程序集变量 函数地址, 整数型

.程序集变量 dtgesxt, 整数型

.程序集变量 原字节, 字节集

.程序集变量 sr5h6bdfd, 字节集

.程序集变量 原指针地址, 整数型

.子程序 取地址, 整数型, 公开, 取原始数据地址,回调原指针时使用

返回 (原指针地址)

.子程序 安装, 逻辑型, 公开, 安装APIHOOK

.参数 动态链接库路径, 文本型, , 欲截获的函数名所在动态链接库的路径

.参数 函数名, 文本型, , 欲截获的函数名

.参数 新函数地址, 整数型, , 回调子程序指针地址.可以用 到整数(子程序指针) 获得

.局部变量 模块句柄, 整数型

.如果真 (函数地址 ≠ 0)

返回 (真)

.如果真结束

模块句柄 = GetModuleHandleA (动态链接库路径)

.如果真 (模块句柄 = 0)

模块句柄 = LoadLibraryA (动态链接库路径)

.如果真结束

.如果真 (模块句柄 = 0)

返回 (假)

.如果真结束

函数地址 = GetProcAddress (模块句柄, 函数名)  ' 获取API函数地址

.如果真 (函数地址 = 0)

返回 (假)

.如果真结束

.如果真 (VirtualProtect (函数地址, 5, 64, dtgesxt) = 假)

返回 (假)

.如果真结束

原字节 = 指针到字节集 (函数地址, 5)  ' 保存API入口前5个字节

sr5h6bdfd = { 233 } + 到字节集 (到整数 (新函数地址 - (函数地址 + 5)))

写到内存 (sr5h6bdfd, 函数地址, 5)  ' 修改API入口前5字节

原字节 = 原字节 + { 233, 0, 0, 0, 0 }

原指针地址 = _取指针_字节集 (原字节, 原字节, 0)

写到内存 (到整数 (函数地址 + 5 - (原指针地址 + 10)), 原指针地址 + 6, 4)

FreeLibrary (模块句柄)

返回 (真)

java hook api 实现封包截取_hook 封包 截取WSASend实例相关推荐

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

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

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

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

  3. Windows下Hook API技术

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

  4. Java的API及Object类、String类、字符串缓存区

    Java 的API(API: Application(应用) Programming(程序) Interface(接口)) Object:Object类是Java语言中的根类,即所有类的父类. equ ...

  5. flask与js交互的示例代码_Frida Java Hook 详解(安卓9):代码及示例(上)

    Frida Java Hook 详解(安卓9):代码及示例(上) 前言 1.1 FRIDA SCRIPT的"hello world" 1.1.1 "hello world ...

  6. Java的API(Scanner\Object\Date区\Math\Random\Arrays\String区\regex\包装类...)一般是parse(String)

    Java 的API(API: Application(应用) Programming(程序) Interface(接口)) Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了 ...

  7. Java 学习API(一)

    文章目录 前言 API 文档注释 String类 创建字符串 拼接字符串 格式化字符串 String方法 substring() indexOf() charAt() trim() startsWit ...

  8. android hook api

    搞了好几个星期,终于有点头绪,欢迎交流.转载请注明出处http://blog.csdn.net/lingfong_cool/article/details/8109290. android安全可以从三 ...

  9. Java | Java常用API方法总结

    Java常用API方法总结 常用API JavaAPI 1 java.lang String StringBuilder Integer parseXxx Math Object System Thr ...

  10. Java 常用API

    Java 常用API JFC(Java类库) 是系统提供的已实现的标准类的集合,是Java编程的API(Application Program Interface) 可帮助开发者方便.快捷地进行软件开 ...

最新文章

  1. 深度优先遍历_二叉树的深度优先遍历,理解框架真的能够套用题目吗?不了解执行过程可能很难。...
  2. 商人过河 java_商人过河问题(二)java实现
  3. mysql 显示用户_在Mysql中如何显示所有用户?
  4. golang string切片解析json
  5. cms和mysql区别_CMS不要让MySQL为你流泪
  6. 【转】一篇文章读懂人力资源三支柱体系(COE・BP・SSC)
  7. IntelliJ idea 给git下来的项目配置python环境(Anaconda)
  8. 【吉比特】G-bits2017技术类岗位编程题
  9. jzoj100046-收集卡片【暴力】
  10. 谈判高手子贡---引导“用户”的专家
  11. 为什么劝你放弃Maven?看看Gradle的这些优点就知道了
  12. 【C语言】两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单,a说他不和x比,c说他不和x,z比,编写程序找出三对赛手名单。...
  13. mysql怎么用sb文件_初识mysql数据库
  14. 关于Metropolis-Hasting采样的两个注意事项
  15. pbr材质系统和vray材质系统有什么不同
  16. 23Exchange Server 2010跨站点部署-公网邮箱系统配置及公网记录
  17. 参考线平滑-FemPosDeviation-SQP
  18. c51语言访问绝对地址的方法,51单片机绝对地址访问的两种方法
  19. php输出白天时间,php 判断白天黑夜
  20. 10+ 张图来探究 Linux 内核,以及如何高效学习

热门文章

  1. 怎么用一套键鼠控制两个电脑
  2. PLC可编程控制实验装置及单片机综合实验台
  3. 计算机或可编程控制器,浅谈可编程控制器的应用
  4. 定义幂函数C语言,【知识点】幂函数定义与性质
  5. 设计模式---原型模式
  6. 黑苹果E430c, 安装过程
  7. USB3.0:VL817Q7-C0的LAYOUT指南(三)
  8. [美国]《冰雪奇缘》[BD-RMVB.720p.中英双字][2013年高分获奖][奥斯卡提名动画片]
  9. 我们什么都没有,只有爱
  10. myeclipse设置黑色主题