* Windows内核下操作字符串!*/#include #include #define BUFFER_SIZE 1024VOID DriverUnload(IN PDRIVER_OBJECT pDriverObject){ KdPrint(("DriverUnload Load...\n...
最近一直在学习windows内核相关的知识,写一写博客用于备忘。windows系统调用的具体流程在潘爱民老师的《WINDOWS内核原理与实现》中的第8章已经写得很清楚了,先看书中给出的这幅图。以CreateFile为例,在ring3的CreateFile进行了一些参数检查后最终调用的是Ntdll中的...
讲解如何写Hook过滤函数,比如NewZwOpenProcess。打开进程。很多游戏保护都会对这个函数进行Hook。由于我们没有游戏保护的代码,无法得知游戏公司是如何编写这个过滤函数。
我看到很多奇形怪状的Hook过滤函数的写法。看得蛋痛无比。比如:
http://bbs.pediy.com/showthread.php?t=126802
http://bbs.pediy.com/sh...
分类:
其他好文 时间:
2015-07-04 15:39:34
阅读次数:
146
windows内核api就是ntoskrnl.exe导出的函数。我们可以跟调用应用层的api一样,调用内核api。不过内核api需要注意的是,如果函数导出了,并且函数文档化(也就是可以直接在msdn上搜索到)。ExFreePool函数导出,并且文档化,那么我们可以直接调用。导出了未文档化,那么我们就要声明。什么叫文档化和未文档化呢?大家来看一个函数:
UCHAR *PsGetProcessIma...
SSDT 的全称是 System Services Descriptor Table,系统服务描述符表。
这个表就是一个把 Ring3 的 Win32 API 和 Ring0 的内核 API 联系起来。Ring3下调用的所有函数最终都会先进入到ntdll里面的,比如ReadFile,就会进入ntdll的ZwReadFile
SSDT 并不仅仅只包含一个庞大的地址索引表,它还包含着一些其它...
分类:
其他好文 时间:
2015-06-25 14:11:18
阅读次数:
286
此文讲述证书的相关信息,参考文章链接http://www.guokr.com/post/116169/一、 证书的类型 常用的几种证书如下: (1) SSL证书,用于加密HTTP (2) 代码签名证书,用于签名二进制文件,比如Windows内核驱动,Firefox插件,Java代码签名等等。 ...
分类:
Web程序 时间:
2015-06-24 23:51:07
阅读次数:
238
1.Ring0驱动层代码的编写:
//codemsg.h 通信控制码的定义
#ifndef _DEFINE_H_
#define _DEFINE_H_
// _number: 0 -> 2047 : reserved for Microsoft 微软保留
// 2047 -> 4095 : reserved for OEMs 用户自定义
#define ...
分类:
其他好文 时间:
2015-06-24 19:08:01
阅读次数:
136
这篇是计算机中Windows
Mobile/Symbian类的优质预售推荐《Windows内核安全与驱动开发》。
编辑推荐
本书适合计算机安全软件从业人员、计算机相关专业院校学生以及有一定C语言和操作系统基础知识的编程爱好者阅读。
内容简介
本书的前身是《天书夜读——从汇编语言到Windows内核编程》和《寒江独钓——Windows内核安全编程》。与Windows客...
《编程思想之消息机制》一文中我们讲了消息的相关概念和消息机制的模拟,本文将进一步聊聊C++中的消息机制。从简单例子探析核心原理在讲之前,我们先看一个简单例子:创建一个窗口和两个按钮,用来控制窗口的背景颜色。其效果如下:
Windows系统和Windows下的程序都是以消息为基础,以事件为驱动。...
分类:
编程语言 时间:
2015-06-14 22:54:22
阅读次数:
256
概要
当多个任务或线程并行运行时,难以避免的对某些有限的资源进行并发的访问。可以考虑使用信号量来进行这方面的控制(System.Threading.Semaphore)是表示一个Windows内核的信号量对象。如果预计等待的时间较短,可以考虑使用SemaphoreSlim,它则带来的开销更小。
.NetFrameWork中的信号量通过跟踪进入和离开的任务或线程来协调对资源的访问。信号量需要知道...