
Windows Kernel
VHeroin
这个作者很懒,什么都没留下…
展开
-
Mini-filter driver 读写文件
在kernel中读写文件要比在应用层麻烦一些,但是基本思路大体上还是一致的。在内核中,也有很多相关的读写文件的API,本文只对FltCreateFileExFltReadFileFltWriteFile进行简单说明。这三个API和应用层的API CreateFileEx,ReadFile和WriteFile相对应。其作用分别是打开文件,从文件中读取数据和将数据写入文件。下面这个函数实现了文件拷贝操作,即将FullFileName的文件内容拷贝到FullFileName2中。NTS转载 2021-03-27 14:43:20 · 1164 阅读 · 3 评论 -
LPC 通讯完整代码及学习心得
LPC即是”本地过程调用(Local Procedure Call)”。"LPC的优势: NO.1:微软未公开文档自己用的东西,传输速度不快能行么? NO.2:由于LPC本身实现了数据读写的同步处理"这几天学习了一下Windows下的LPC通讯。学习心得:1、NtListenPort是多余的;2、NtAcceptConnectPort和NtCompleteConnectPort操作之后获得了一个连接句柄,并用它建立子线程,数据不能接收,必须在当前线程并且此句柄完全可以不使...原创 2021-03-21 12:54:28 · 1303 阅读 · 0 评论 -
解决WSL2的服务在别的机器不能访问的问题
HOWTO patch:extract wslhost.exe to C:\Windows\System32\lxss\----------What's diff:patch for the port forwarding(old 127.0.0.1,new 0.0.0.0): only change 2 byte(7f==>00,01==>00)----------if you want to do it yourself~~~~~>cd C:\Windows\Sy原创 2020-06-28 23:40:04 · 6286 阅读 · 2 评论 -
翻译《文件系统取证分析》第13章
第13章 NTFS 数据结构这是关于NTFS的第三章亦是最后一章,这里我们将分析它的数据结构。前两章写了它的基本概念和怎么去解析它。对许多人来说,目前为止所涉及的知识已经足够了,但我们中的其他人想知道更加多的知识。本章的组织方式是我们先了解数据结构的基础元素,与其他的文件系统章节不同, 本章的编写是为了在章节11“NTFS 概念”和章节12“NTFS 解析”之后阅读。章节的第一部分可以同时于章...原创 2020-03-17 21:32:29 · 1566 阅读 · 0 评论 -
NTFS文件系统详解
原文地址:http://blog.youkuaiyun.com/enjoy5512/article/details/50935972注:本文参考博客地址NTFS (New Technology File System),是 WindowsNT 环境的文件系统。新技术文件系统是Windows NT家族(如,Windows 2000、Windows XP、Windows Vista、W转载 2017-11-24 21:55:49 · 2143 阅读 · 1 评论 -
MiniFilter文件系统学习
原文地址: https://blog.youkuaiyun.com/zhuhuibeishadiao/article/details/51229122Minfilter与legacy filter区别比sfilter加载顺序更易控制. altitude被绑定到合适的位置。 Minfilter在注册表服务项中有一项Altitude值此值越高位置越靠前 (待考证每一个minifilter驱动必须有一个叫做alti...转载 2018-05-26 07:34:15 · 1710 阅读 · 0 评论 -
【windows内核驱动开发】文件系统微过滤驱动Minifilter——绑定指定的卷(磁盘分区)
原文地址: https://blog.youkuaiyun.com/zcr214/article/details/53380315作者:zcr214 时间:2016/4/21 在编写文件系统微过滤驱动minifilter的时候,很有可能我们只对某一个特定的磁盘分区感兴趣,而其他的如系统盘的很多IRP对于我们要编写的驱动可能是不关注的,所以有必要使得我们的驱动只绑定指定的这个卷,从而减少其他的IRP带来的干扰,...转载 2018-06-10 11:02:31 · 1091 阅读 · 0 评论 -
获取单个进程CPU使用率
原文地址: https://blog.youkuaiyun.com/wanfustudio/article/details/1555682via windows: 通过NtQuerySystemInfomation Native API 实现 Sample: Header: Cpu.h#include <stdio.h>#include <windows.h> #define STAT...转载 2018-06-10 11:19:07 · 1673 阅读 · 0 评论 -
PE文件格式详解(下)
原文地址: https://blog.youkuaiyun.com/feidegengao/article/details/16966357 预定义段 一个Windows NT的应用程序典型地拥有9个预定义段,它们是.text、.bss、.rdata、.data、.rsrc、.edata、.idata、.pdata和.debug。一些应用程序不需要所有的这些段,同样还有一些应用程序为了自己特殊的...转载 2018-07-28 21:58:38 · 912 阅读 · 0 评论 -
拦截进程创建(不会卡死桌面)
原文地址: https://bbs.pediy.com/thread-128733.htmbycon 2011-1-28 16:44 18658菜鸟作品,大牛请无视。如有错误或纰漏,望指出之前看过很多关于进程创建的拦截,都是勾在NtCreateProcess或者NtCreateSection上,拦截到的往往都是Explorer进程中的线程,此时如果将线程卡在内核中,就会导致桌面卡死。这...转载 2018-08-16 16:46:30 · 1247 阅读 · 0 评论 -
EnumProcessThread(枚举进程线程)
原文地址: https://blog.youkuaiyun.com/qq125096885/article/details/75045032 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/qq125096885/article/details/75045032 #pragma once #ifndef MA...转载 2018-09-15 11:44:12 · 1586 阅读 · 0 评论 -
NTFS文件系统详解(一)之硬盘基本信息
原文地址: http://blog.youkuaiyun.com/enjoy5512/article/details/50954180本文参考自博客一般硬盘正面贴有产品标签,主要包括厂家信息和产品信息,如商标、型号、序列号、生产日期、容量、参数和主从设置方法等。这些信息是正确使用硬盘的基本依据,下面将逐步介绍它们的含义。硬盘主要由盘体、控制电路板和接口部件等组成,如图1-1转载 2017-11-24 21:33:39 · 1276 阅读 · 0 评论 -
NTFS文件系统详解(二)之MBR(EBR)基本信息
原文地址: http://blog.youkuaiyun.com/enjoy5512/article/details/50954315经过上一篇文章对硬盘的基本结构的详细介绍后,我们再来看看MBR和EBR的结构MBR(Main Boot Record 主引导记录区)位于整个硬盘的0磁道0柱面1扇区。不过,在总共512字节的主引导扇区中,MBR只占用了其中的446个字节,另外的64个转载 2017-11-24 13:44:52 · 1335 阅读 · 0 评论 -
NTFS文件系统详解(三)之NTFS元文件解析
原文地址: http://blog.youkuaiyun.com/enjoy5512/article/details/50966009在NTFS中,所有存储在卷上的数据都包含在文件中,包括用来定位和获取文件的数据结构,引导程序和记录这个卷的记录(NTFS元数据)的位图,这体现了NTFS的原则:磁盘上的任何事物都为文件。在文件中存储一切使得文件系统很容易定位和维护数据,而在NTFS中,卷中所转载 2017-11-24 07:14:17 · 2551 阅读 · 0 评论 -
在NT中直接访问物理内存
原文地址:http://blog.youkuaiyun.com/bhw98/archive/2004/04/28/19683.aspx 我们知道,在NT/2K/XP中,操作系统利用虚拟内存管理技术来维护地址空间映像,每个进程分配一个4GB的虚拟地址空间。运行在用户态的应用程序,不能直接访问物理内存地址;而运行在核心态的驱动程序,能将虚拟地址空间映射为物理地址空间,从而访问物理内存地址。如果要在转载 2017-06-17 10:25:09 · 1780 阅读 · 0 评论 -
实战DeviceIoControl 之七:在Windows 9X中读写磁盘扇区
实战DeviceIoControl 共7篇,这是我在两年前看到的文章,很不错,现在想把它转载过来。原作者和其博客的地址是:http://blog.youkuaiyun.com/bhw98他博客里的这些序列文章的格式更好看,如果你觉得这些文章好,不妨去他的博客看,格式比我的随便粘贴好多了 :) 在Windows NT/2K/XP中,直接用CreateFile打开名称类似于"//./A:"的”文件转载 2017-06-17 10:26:56 · 472 阅读 · 0 评论 -
实战DeviceIoControl 之六:访问物理端口
Q 在NT/2000/XP中,如何读取CMOS数据?Q 在NT/2000/XP中,如何控制speaker发声?Q 在NT/2000/XP中,如何直接访问物理端口?A 看似小小问题,难倒多少好汉!NT/2000/XP从安全性、可靠性、稳定性上考虑,应用程序和操作系统是分开的,操作系统代码运行在核心态,有权访问系统数据和硬件,能执行特权指令;应用程序运行在用户态,能够使用的接口和访问系转载 2017-06-17 10:28:44 · 431 阅读 · 0 评论 -
实战DeviceIoControl 之五:列举已安装的存储设备
Q 前几次我们讨论的都是设备名比较清楚的情况,有了设备名(路径),就可以直接调用CreateFile打开设备,进行它所支持的I/O操作了。如果事先并不能确切知道设备名,如何去访问设备呢?A 访问设备必须用设备句柄,而得到设备句柄必须知道设备路径,这个套路以你我之力是改变不了的。每个设备都有它所属类型的GUID,我们顺着这个GUID就能获得设备路径。GUID是同类或同种设备的全球唯一识别码,转载 2017-06-17 10:30:06 · 403 阅读 · 0 评论 -
实战DeviceIoControl 之四:获取硬盘的详细信息
Q 用IOCTL_DISK_GET_DRIVE_GEOMETRY或IOCTL_STORAGE_GET_MEDIA_TYPES_EX只能得到很少的磁盘参数,我想获得包括硬盘序列号在内的更加详细的信息,有什么办法呀?A 确实,用你所说的I/O控制码,只能得到最基本的磁盘参数。获取磁盘出厂信息的I/O控制码,微软在VC/MFC环境中没有开放,在DDK中可以发现一些线索。早先,Lynn McGuire转载 2017-06-17 10:31:16 · 1348 阅读 · 0 评论 -
实战DeviceIoControl 之三:制作磁盘镜像文件
Q DOS命令DISKCOPY给我很深的印象,现在也有许多“克隆”软件,可以对磁盘进行全盘复制。我想,要制作磁盘镜像文件,DeviceIoControl应该很有用武之地吧?A 是的。这里举一个制作软盘镜像文件,功能类似于“DISKCOPY”的例子。本例实现其功能的核心代码如下:// 打开磁盘HANDLE OpenDisk(LPCTSTR filename){ HANDLE转载 2017-06-17 10:32:17 · 366 阅读 · 0 评论 -
实战DeviceIoControl 之二:获取软盘/硬盘/光盘的参数
Q 在MSDN的那个demo中,将设备名换成“A:”取A盘参数,先用资源管理器读一下盘,再运行这个程序可以成功,但换一张盘后就失败;换成“CDROM0”取CDROM参数,无论如何都不行。这个问题如何解决呢?A 取软盘参数是从软盘上读取格式化后的信息,也就是必须执行读操作,这一点与硬盘不同。将CreateFile中的访问方式改为GENERIC_READ就行了。IOCTL_DISK_GET_D转载 2017-06-17 10:33:12 · 458 阅读 · 0 评论 -
实战DeviceIoControl 之一:通过API访问设备驱动程序
实战DeviceIoControl 共7篇,这是我在两年前看到的文章,很不错,现在想把它转载过来。原作者和其博客的地址是:http://blog.youkuaiyun.com/bhw98他博客里的这些序列文章的格式更好看,如果你觉得这些文章好,不妨去他的博客看,格式比我的随便粘贴好多了 :) Q 在NT/2000/XP中,我想用VC编写应用程序访问硬件设备,如获取磁盘参数、读写绝对扇区数转载 2017-06-17 10:34:51 · 961 阅读 · 0 评论 -
用DeviceIoControl获取系统磁盘信息
原文地址:http://www.cppblog.com/dingding/archive/2008/09/23/62570.html代码:#include #include using namespace std;int main(){ SECURITY_ATTRIBUTES secStru; secStru.bInheritHandle=0;转载 2017-06-28 09:17:44 · 3031 阅读 · 0 评论 -
32位和64位下,SYSTEM_THREADS与SYSTEM_PROCESSES结构体
32位的没有什么好说的,关键是64位的资料比较少。这个结构体,网上有说,但是不太准确,测试发现前半部分对了,后半部分不对(获取线程信息的时候不对)。最后结合一些例子和计算,整出来了.typedef struct _SYSTEM_THREADS{ LARGE_INTEGER KernelTime; LARGE_INTEGER UserTime; LARGE_INT原创 2017-08-01 19:04:20 · 1513 阅读 · 2 评论 -
VS2015+WDK10+Win10 Win7以上系统驱动发开环境搭建
2016年8月6日 bymyCode·5 Comments文本主要介绍 Win10 系统下安装 VS2015 及 WDK10 驱动开发环境的搭建,搭建完成后可通过 VS2015 直接新建驱动项目并编译通过后可在 Win7 以上系统运行。无需自己制作模版等繁琐步骤(其实早在 VS2013+WDK8.1 的时候就已经支持直接从 IDE 中新建项目)。以下是相关截图:可直接通过转载 2017-07-27 07:20:14 · 11967 阅读 · 3 评论 -
应用层下基于异常行为的未知勒索软件检测
原地址: http://blog.youkuaiyun.com/d_r_l_t/article/details/78433995近年勒索软件形式愈演愈烈,尤其是 WannaCry 让人印象深刻。近期 Badrabbit 又肆虐欧洲。目前云主机上的防护大多是云厂商自研的防护软件。企业内部终端安全防护,鉴于信息安全的需要,也不会直接使用个人PC上流行的防护软件。在这些防护软件上,对使用内核模块转载 2017-11-14 16:18:46 · 498 阅读 · 0 评论 -
NTFS 文件系统解析
原文地址: https://www.cnblogs.com/mwwf-blogs/archive/2015/05/04/4467687.html1. windows 下磁盘文件读写下面是读取D:\磁盘上的第0扇区 512 BytesCreateFile()打开磁盘,获取文件句柄;SetFilePointer()设置读写的位置;ReadFile()读取磁盘扇区数据转载 2017-11-22 22:00:44 · 7670 阅读 · 2 评论 -
获得进程的EPROCESS
原文地址:http://www.xfocus.net/articles/200406/706.html创建时间:2004-06-01文章属性:原创文章提交:MustBE (zf35_at_citiz.net)By [I.T.S]SystEm32Welcome to our web site http://itaq.ynpc.com/itsbbs/转载 2017-04-24 16:27:25 · 1019 阅读 · 0 评论