摘要:0x00前言 函数作用关闭当前路径中的任何打开的图形,并使用当前笔刷和多边形填充模式填充路径的内部。 0x01分析 NtGdiFillPath会直接调用EPATHOBJ::bStrokeAndOrFill 进行当前画笔填充路径的内部 EPATHOBJ::bStrokeAndOrFill(&ppo, 阅读全文
摘要:0x00前言 分析文件是win11 21h2 的win32kbase.sys 驱动里面的NtGdiPolyPolyDraw 内核函数 0x01NtGdiPolyPolyDraw流程 NtGdiPolyPolyDraw 一共接收5个参数 __int64 __fastcall NtGdiPolyPoly 阅读全文
摘要:绘制一条或多条直线 它的函数原型 BOOL PolylineTo( [in] HDC hdc,//设备上下文的句柄。 [in] const POINT *apt,//指向包含线的顶点的POINT结构数组的指针,以逻辑单位表示。 [in] DWORD cpt//数组中的点数。 ); 这里主要看内核实现 阅读全文
摘要:分析的时windows 10 21h2 CreateBitmap 在3环会先调用gdi32.dll 同名函数接着调用 gdi32full.dll 的同名函数->再接着w32u.dll 的NtGdiCreateBitmap 让后进入内核 __int64 __fastcall NtGdiCreateBi 阅读全文
摘要:0x00前言 socket机制在windwos系统中的实现分为用户空间和内核空间实现,用户空间就是 ws2_32.lib 这个dll 库 系统空间就是afd.sys这个驱动 这里我们就来分析afd.sys驱动 分析文件 windows 11 的afd.sys 驱动文件 0x01DriverEntry 阅读全文
摘要:0x00前言 windows 10 21h2 系统 0x01NtAllocateVirtualMemory分析 NTSTATUS __stdcall NtAllocateVirtualMemory( HANDLE ProcessHandle, // 用户请求内核分配内存空间 PVOID *BaseA 阅读全文
摘要:0x00前言 主要分析mdl结构体创建和应用 0x01分析 函数原型 PMDL __stdcall IoAllocateMdl( PVOID VirtualAddress,//指向 MDL 要描述的缓冲区的基虚拟地址的指针。 ULONG Length,//指定 MDL 要描述的缓冲区的长度(以字节为 阅读全文
摘要:0x00前言 createprocess 创建进程工作是由0环的NtCreateUserProcess函数完成的 这篇文章就来分析NtCreateUserProcess做了什么? 0x01NtCreateUserProcess流程分析 首先是验证从3环传递过来的参数并建立一个内核结构来保存这些信息 阅读全文
摘要:0x00前言 过程比较简单主要是类型的初始化和验证 0x01汇编分析 __int64 __fastcall ObCreateObjectTypeEx( PCUNICODE_STRING SourceString, __int64 a2, __int64 a3, __int16 *a4, __int6 阅读全文
摘要:0x00前言 操作系统:windows 11 工具:vs,IDA,windbg 这是《深入解析Windows Kenrel》系列文章的第3章对象管理 0x01逆向分析 这个函数主要查询指定的目录对象中是否包含某对象 函数原型 __int64 __fastcall ObpLookupDirectory 阅读全文
摘要:0x00前言 windows11是如何创建进程并管理他们的呢?这篇分析CreateProcess在3环用户层做了哪些事情。 操作系统:windows 11 工具:vs,IDA,windbg 这是《深入解析Windows Kenrel》系列文章的第4章 第一篇 0x01CreateProcess第一阶 阅读全文
摘要:0x00基本信息 系统:windows 10 21h2 工具:ida 7.7 , windbg 10 3环写一个win32k 函数 看访问流程 这是《深入解析Windows Kenrel》系列文章的第1章 第一篇 0x01分析 例如:3环函数 FlattenPath(x) 会调用到 win32u.d 阅读全文
摘要:0x00前言 这是《深入解析Windows Kenrel》系列文章的第1章 第三篇 0x01未开启PAE分页模式 cr0 寄存器pg位为1就是开启分页模式之后说有的地址都是虚拟地址 经过换算得到物理地址再去访问 ps=0时 ps=1时 计算方法,这里的pde 是页目录 pte 页表 cr3 是物理地 阅读全文
摘要:0x00前言 这是《深入解析Windows Kenrel》系列文章的第1章 第二篇 0x01原因 分段的产生原属于安全问题。 一个程序可以自由的访问不属于它的内存位置,甚至可以对那些内容进行修改。这也导致安全问题 促使一种内存隔离的手段 分段的产生。 0x02分段原理 处理器要求在加载程序时,先定义 阅读全文
摘要:0x00前言 Windows 操作系统的机理和逆向分析。 0x01第1章-系统结构与机制 ☉KiSystemCall64 win10 21h2函数流程分析 3环到0环 ☉Windows内存管理-分段 ☉Windows内存管理-分页 0x02第2章-内存管理 ☉IoAllocateMdl函数逆向分析 阅读全文
摘要:GS编译选项的文件为gs_support.c 这是源码 /*** *gs_support.c - initialize the global buffer overrun security cookie * * Copyright (c) Microsoft Corporation. All rig 阅读全文

点击右上角即可分享
微信分享提示