windows驱动学习
feng_blog6688
这个作者很懒,什么都没留下…
展开
-
<转>HOOK SSDT相关文章
请转到以下链接使用 ???????? :SSDT Hook 之内核函数ZwTerminateProcess实现监控结束进程???? :SSDT Hook 之内核函数ZwC...转载 2020-08-04 17:36:48 · 125 阅读 · 0 评论 -
WinDbg下载符号文件
文章目录一、符号文件的用处二、下载符号文件(微软官方符号服务器无法访问)三、加载用户层的符号文件参考资料一、符号文件的用处...转载 2020-07-28 13:53:06 · 5738 阅读 · 0 评论 -
四、文件 注册表 多线程
文件 注册表 多线程1、文件操作,内核模式下打开、创建、拷贝文件#include <ntddk.h>VOID DriverUnload(PDRIVER_OBJECT pDriverObject){ KdPrint(("驱动成功卸载\n"));}void MyCopyFile(HANDLE source, HANDLE dest){ NTSTATUS status; PVOID buffer = NULL; LARGE_INTEGER offset = { 0 };原创 2020-07-03 18:06:14 · 321 阅读 · 0 评论 -
三、字符串操作
1、UNICODE_STRING windows内核编码字符集采用unicode字符集,字符串处理使用UNICODE_STRING,是一个结构体,定义如下:typedef struct _UNICODE_STRING { USHORT Length; USHORT MaximumLength;#ifdef MIDL_PASS [size_is(MaximumLength / 2), length_is((Length) / 2) ] USHORT * Buffer;#els原创 2020-07-03 13:54:39 · 314 阅读 · 0 评论 -
二、内核编程环境
1、内核编程的环境 32位系统的进程可访问的内存大小是4G,低位2G是用户空间,高位2G是内核空间。应用程序运行在用户态,进程空间是相互独立的,不必担心进程间访问同一地址空间出错,但是如果如果内核空间获取的信息肯定是一样的。内核模式也被称为内核态,x86架构下R0层的代码才可以访问内核空间,普通应用程序编译出来都运行在R3层,R3层的代码如果要调用R0层的功能,需要通过系统提供的入口来实现,调用内核API.内核模块也代表实际的驱动程序,内核空间是所有进程所共享的,系统进程一般是一个名为“system原创 2020-07-03 09:53:26 · 201 阅读 · 0 评论 -
Win API使用记录--RtlCopyMemory与RtlMoveMemory区别
1、RtlCopyMemory与RtlMoveMemory 这两个函数是内核函数api,对应Win32 API是CopyMemory和MoveMemory。都能实现内存块的复制,两者的区别在于CopyMemory是非重叠内存区域的复制,MoveMemory可以不考虑是否重叠,都可以安全复制。CopyMemory实现如下:void *memmcpy(void *dest , const void *src , size_t count) { assert( (dest ...原创 2020-07-02 10:11:08 · 3334 阅读 · 0 评论 -
DebugView使用说明
简介DebugView是一个系统调试信息捕获工具,如果在程序中使用用户模式使用OutputDebugString,或者内核模式使用Out_Debug_String,DbgPrint ,_Debug_Printf_Service,编译程序选择Debug版本,然后打开debugview,运行程序后就可以看到相应的输出信息,内核模式需要勾选Capture kernel,应用模式需要勾选Caputer Win32.设置说明如果设置没有问题,但是Debugview无法捕获输出信息,这个时候可以查看注册表是否原创 2020-07-01 16:00:02 · 1669 阅读 · 0 评论 -
windbg调试方法以及应用与驱动交互
windbg调试方法1、网络连接 两台pc通过网络连接,我们把驱动测试的主机称为目的机,把运行windbg进行远程调试的主机称为host主机,首先设置目的机与host主机连接的ip端口以及key信息,已管理员权限运行CMD,输入以下命令:bcdedit /dbgsettings net hostip:192.168.6.14 port:50000 key:1.2.3.4开机目的机的调试模式:bcdedit /set {default} DEBUG YES禁用驱动程序签名:bcdedit原创 2020-07-01 11:11:25 · 469 阅读 · 0 评论 -
五、应用程序与驱动程序交互(缓冲模式)
新建exe控制台程序#include "pch.h"#include <windows.h>#include <iostream>#include <WinIoCtl.h>#include "ctl_code.h"using namespace std;#pragma warning(disable: 4789)int add(HANDL...原创 2019-12-04 11:30:31 · 408 阅读 · 0 评论