首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
windows 钩子
2024-09-04
《windows核心编程系列》十八谈谈windows钩子
windows应用程序是基于消息驱动的.各种应用程序对各种消息作出响应从而实现各种功能. windows钩子是windows消息处理机制的一个监视点,通过安装钩子能够达到监视指定窗体某种类型的消息的功能.所谓的指定窗体并不局限于当前进程的窗体,也能够是其它进程的窗体.当监视的某一消息到达指定的窗体时,在指定的窗体处理消息之前,钩子函数将截获此消息,钩子函数既能够加工处理该消息,也能够不作不论什么处理继续传递该消息.使用钩子是实现dll注入的方法之中的一个.其它经常使用的方法有:注冊表注入,远程线
[转]Windows钩子
Windows钩子 Windows应用程序的运行模式是基于消息驱动的,任何线程只要注册了窗口类就会有一个消息队列来接收用户的输入消息和系统消息.为了取得特定线程接收或发送的消息,就要 Windows提供的钩子. 钩子的概念 钩子(Hook)是Windows消息处理机制中的一个监视点,应用程序可以在这里安装一个子程序(钩子函数)以监视指定窗口某种类型的消息,所监视的窗口可以是其他进程创建的.当消息到达后,在目标窗口处理函数处理之前,钩子机制允许应用程序截获它进行处理. 钩
windows钩子函数
一 什么时候用到钩子?(when)Windows操作系统是建立在事件驱动的消息处理机制之上,系统各部分之间的沟通也都是通过消息的相互传递而实现的.通常情况下,应用程序只能处理当前进程的消息,如果需要对其它进程的消息进行拦截处理就必须采钩子技术.二 什么是钩子?(what)钩子实际上是一段用以处理系统消息的程序(钩子函数),通过系统调用,将其挂入到系统.每当特定的消息发出,在没有到达目标窗口前,钩子程序就先捕获该消息,即钩子函数先得到控制权.在钩子函数中,可以加工处理(改变)该消息,也可以不作处理
windows钩子(转)
1. 消息钩子 提示: 如果要设置系统级钩子, 钩子函数必须在 DLL 中. SetWindowsHookEx( idHook: Integer; {钩子类型} lpfn: TFNHookProc; {函数指针} hmod: HINST; {包含钩子函数的模块(EXE.DLL)句柄; 一般是 HInstance; 如果是当前线程这里可以是 0} dwThreadId: DWORD {关联的线程; 可用 GetCurrentThreadId 获取当前线程; 0 表示是
windows钩子 Hook示例
1.首先编写一个 win32 dll工程. #include "stdafx.h" int WINAPI add(int a,int b) { return a+b; } BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return TRUE; } 在def文件添加显式导出: (没找到def文件需要添加) LIBRARY DESCRIPTION "AD
Windows环境下32位汇编语言程序设计(典藏版)
Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 756页 16开 编辑推荐 畅销10年,经典再现! 本书第1版出版至今已经10年多了,第3版出版至今也已经3年多了,期间笔者收到了大量的读者来信,对本书提出了各种意见和建议,综合各方面的考虑,典藏版做了以下改进. ● 对第3版中已知的错误进行了修正,包括一些排版错误.错别字和例子中的Bug. ●
Windows API 的数据类型与 Delphi 数据类型对照表
Windows 数据类型 Delphi 数据类型 描述 LPSTR PAnsiChar 字符串指针 LPCSTR PAnsiChar 字符串指针 DWORD LongWord 整数 BOOL LongBool 布尔型 PBOOL ^BOOL 指向布尔值的指针 PByte ^Byte 指向字节值的指针 PINT ^Integer 指向整数值的指针 PSingle ^Single 指向单精度浮点值的指针 PWORD ^Word 指向16位值的指针 PDWORD ^DWORD 指向32位值的指针 LP
基于HOOK和MMF的Windows密码渗透技术
随着计算机与网络的普及,信息安全越来越成为人们所普遍关心的大事.密码的渗透与反渗透在此领域表现的愈演愈烈.本文深入分析了各个版本Windows密码的特点,尤其是针对windws2K/XP安全性提高的情况下,提出了获取windows密码的关键技术及方法.并进一步分析了windows钩子(Hook)和内存映像文件(MMF)的技术细节.在基于MMF的核心类CIPC中为钩子句柄在内存中的共享提供了方法,并且解决了线程间的同步问题.然后深入讨论了WM_COPYDATA消息的特点.接着分析了实例程序重要代码
Windows Hook技术
0x01 简介 有人称它为“钩子”,有人称它为“挂钩”技术.谈到钩子,很容易让人联想到在钓东西,比如鱼钩就用于钓鱼.编程技术的钩子也是在等待捕获系统中的某个消息或者动作.钩子的应用范围非常广泛,比如输入监控.API拦截.消息捕获.改变程序执行流程等方面.杀毒软件会用Hook技术钩住一些API函数,比如钩住注册表读写函数,从而防止病毒对注册表进行写入:病毒使用Hook技术有针对性的捕获键盘的输入,从而记录用户的密码等敏感信息:文件加密系统通过Hook技术在不改变用户操作的情况下对用户的文件进行透明
Windows系统中监控文件复制操作的几种方式
http://blog.sina.com.cn/s/blog_4596beaa0100lp4y.html 1. ICopyHook 作用: 监视文件夹和打印机移动,删除, 重命名, 复制操作. 可以得到源和目标文件名. 可以控制拒绝操作. 缺点: 不能对文件进行控制. 只对Shell文件操作有效, 对原生Api MoveFile, CopyFile之类的操作无效. 用法: 从ICopyHook派生一个COM对象, 重载CopyCallbackA和CopyCallbackW, 然后把COM注册到H
Windows环境下32位汇编语言程序设计(典藏版)
<Windows环境下32位汇编语言程序设计(典藏版) > 基本信息 作者: 罗云彬 出版社:电子工业出版社 ISBN:9787121207594 上架时间:2013-7-8 出版日期:2013 年7月 开本:16开 页码:756 版次:1-1 所属分类:计算机 更多关于 >>><Windows环境下32位汇编语言程序设计(典藏版)> 内容简介 计算机书籍 windows环境下32位汇编语言是一种全新的编程语言.它使用与c++语言相同的api接口,不仅可以开发出大
写给VC++ Windows开发的初学者 一片不错的博文
不知不觉2010年都过了半年了,想来我学C语言已经12个年头了(从1998年开始),用VC++也有11年了,最早使用Turbo C2.0 ,也学过汇编,后来使用Borland C++3.0 .Microsoft C++7.0.VC++5.0.VC++6.0.VS2003.VS2005.VS2008,当然这只是个表面的历程,并不能说明其它的什么,只是个光阴的故事. 十多年来,我也被迫用过PowerBuilder.用过Foxpro.甚至用过C#.net,但我始终坚持着VC++不放弃,开始的时候看书学
【转载】Windows api数据类型
最近在接触windows api函数,看到了很多之前没有看到过的数据类型,发现“个人图书馆”中有个帖子说的挺详细的,特地搬运过来 Windows 数据类型 Delphi 数据类型 描述 LPSTR PAnsiChar 字符串指针 LPCSTR PAnsiChar 字符串指针 DWORD LongWord 整数 BOOL LongBool 布尔型 PBOOL ^BOOL 指向布尔值的指针 PByte ^Byte 指向字节值的指针 PINT ^Integer 指向整数值的指针 PSingle ^Si
windows hook + pyhook3 + python win32api hook + C 键盘hook
安装pyhook3见:https://www.cnblogs.com/lqerio/p/12096710.html 使用见:https://www.cnblogs.com/lqerio/p/12106771.html 下面是自己学的时候查到的东西的一些整理, ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
WPFの三种方式实现快捷键
最近,对wpf添加快捷键的方式进行了整理.主要用到的三种方式如下: 一.wpf命令: 资源中添加命令 <Window.Resources> <RoutedUICommand x:Key="ToolCapClick" Text="截屏快捷键" /> </Window.Resources> 输入命令绑定 <Window.InputBindings> <KeyBinding Gesture="Ctrl+Alt
第22章 DLL注入和API拦截(3)
22.6 API拦截的一个例子 22.6.1 通过覆盖代码来拦截API (1)实现过程 ①在内存中对要拦截的函数(假设是Kernel32.dll中的ExitProcess)进行定位,从而得到它的内存地址. ②把这个函数的起始的几个字节保存在我们自己的内存中. ③用CPU的一条JUMP指令来覆盖这个函数起始的几个字节,这条JUMP指令用来跳转到我们替代函数的内存地址.当然,我们的替代函数的函数签名必须与要拦截的函数的函数签名完全相同,即所有的参数必须相同,返回值必须相同,调用约定也必须相同. ④现
第22章 DLL注入和API拦截(1)
22.1 注入的一个例子(跨进程子类化窗口) ①子类化窗口可以改变窗口的行为,让发往该窗口的消息重新发到我们指定的过程来处理.但这种行为只能在本进程中(如A),对于从一个进程(如B)去子类化另一个进程(如A)时,会遇到无法跨越进程地址空间的边界问题. ②上图,进程B试图调用SetWindowLongPtr将进程A中的hWnd窗口过程,重新指定为MySubClassProc来处理(注意,MySubClassProc在进程B的地址空间中),而不是hWnd窗口的标准窗口处理过程.但因该行为是跨进程的,
WinAPI【远程注入】三种注入方案【转】
来源:http://www.cnblogs.com/okwary/archive/2008/12/20/1358788.html 导言: 我 们在Code project(www.codeproject.com)上可以找到许多密码间谍程序(译者注:那些可以看到别的程序中密码框内容的软件),他们都依赖 于Windows钩子技术.要实现这个还有其他的方法吗?有!但是,首先,让我们简单回顾一下我们要实现的目标,以便你能弄清楚我在说什么. 要 读取一个控件的内容,不管它是否属于你自己的程序,一般来说需要
2013年国庆节前51Aspx源码发布详情
Sky软件公司网站修正版源码 2013-9-30 [VS2010]源码描述:针对Sky软件公司网站源码进行修正.修改ckeditor引用问题,发布样式错误问题.vs2010直接编译.发布成功. 网站已经配置html伪静态,方便收录前台展示信息有:产品与服务,解决方案,新闻中心,下载中心,成功案例代理加盟,关于我们后台可以管理:网站基本信息,管理员设置,产品与服务管理,解决方案管理新闻中心管理,下载中心管理,成功案例管理,代理加盟管理关于我们管理,友情链接管理 GL教师信息管理系统源码 201
Hook入门
Hook入门 2014-07-24 基本概念 Windows消息机制 Hook(钩子) 运行机制 核心函数 C# hook示例 基本概念[1] Windows消息机制[5] Windows操作系统是建立在事件驱动机制之上的,系统各部分之间的沟通也都是通过消息的相互传递而实现的.但在通常情况下,应用程序只能处理来自进程内部的消息或是从其他进程发过来的消息(借助进程间通信技术,如剪贴板,管道等). 图1 Windows应用程序消息处理机制 (1)操作系统接收到应用程序的窗口消息,将消息投递到该应用程
热门专题
自动划分训练集和测试集csv
thinkphp 极光标签推送
vscode拉代码一直要输入用户名密码
idea 逼死强迫症
linux安装串口驱动
备份oracle数据库脚本
Linux mysql5.7 客户端输入不了中文
VUE3 IIS api反向代理
saltstack 批量安装软件
unity 元素层级无效
数结构 后台 转换成list
spark sql替换string_agg函数
bat启动java程序后关闭CMD
“cxgrid 单元格 变色”
在控制台中pip list可以用但在pycharm中不能用
composer 刷新
python怎么解析python字符串
制作地块边界矢量文件
select默认选中无效
java 子类强转父类 方法重写