自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (3)
  • 收藏
  • 关注

原创 APC机制

    APC(Asynchronous Procedure Call)异步过程调用。NtQueueApcThread()这个系统调用把一个”用户APC请求”挂入目标线程的APC队列。KTHREAD数据结构中APCState指向线程的APC队列(用户APC和内核APC。     一般来说,只有把APC请求挂入队列,就不再需要触发,而只是等待执行的时机。对于用户APC请求,该时机同样也是目标线程从

2010-01-28 17:09:00 3032

原创 枚举进程

    前面看到用PspCidTable可以枚举所有进程,今天又看到系统中有个全局变量PsActiveProcessHead保存所有进程。通过这个全局变量也可以枚举所有进程。当然这种方法的原理同EPROCESS遍历是一样的。PsActiveProcessHead队列其实是保存 EPROCESS->ActiveProcessLinks LIST_ENTRY数据结构的。 void DisplayL

2010-01-27 10:48:00 2484

原创 关闭其它进程的已打开对象

    NtClose()只能关闭本进程的已打开对象,而关闭其他进程的已打开对象的方法:      打开目标进程;      调用NtDuplicateObject(),把参数Options中的标志位DUPLICATE_CLOSE_SOURCE设成1,并把参数TargetProcessHandle设成0.      用这种方法可不可以关闭杀软的进程呢?以后有时间了研究研究

2010-01-20 16:24:00 2275

原创 fs:[124]

    反汇编内核函数的时候经常会看到mov eax, fs:[124].一直没弄清楚fs寄存器在ring0存放的是什么。今天查了下资料。     fs寄存器在Ring0中指向一个称为KPCR的数据结构,即FS段的起点与KPCR结构对齐。而在Ring0中fs寄存器一般为0x30。     这样看KPCR的数据结构: nt!_KPCR +0x000 NtTib :

2010-01-20 15:42:00 3680

原创 《Windows内核情景分析》常用内核函数

1.ObReferenceObjectByHandle()     Handle->Object的过程。具体的查找过程是由ExpLookupHandleTableEntry函数实现的。具体过程(bla bla一堆)还是看别人的吧。http://www.debugman.com/read.php?tid=830&page=1&toread=1 2. ObReferenceObjectByName

2010-01-15 16:22:00 2465

原创 《Windows内核情景分析》对象管理

    对象的数据结构都是由对象头和具体对象类型的数据结构两部分组成。对象头OBJECT_HEADER在下,它的上方是具体对象类型的数据结构本身。 nt!_OBJECT_HEADER +0x000 PointerCount : Int4B +0x004 HandleCount : Int4B +0x004 NextToFree : Pt

2010-01-13 20:08:00 2274

原创 《Windows内核情景分析》系统空间缓冲区管理

    用户空间是从“堆(heap)”分配缓冲区的,内核中是从“池(pool)”中分配的。     用户空间的堆是属于进程的,而内核中的池则是全局的,属于整个系统。内核中池有两种:PagedPool,所占页面可以倒换的,NonPagedPool,所占页面是不可倒换的,每个页面都占着物理内存。 ntdll!_POOL_TYPE NonPagedPool = 0 PagedPo

2010-01-11 20:11:00 2684

原创 《Windows内核情景分析》内存区间的动态分配

    物理页面是以PHYSICAL_PAGE代表的。MmPageArray指向PHYSICAL_PAGE的数组(MS是在ReactOS中是这样,真正Windows内核找不到PHYSICAL_PAGE结构,不知道是未公开还是策略不一样)    物理内存有三种   1.已分配的内存队列:存放正在被使用的内存   2.待清理的内存队列:存放已被释放的内存,但是这些内存未被清零   3.空闲队列

2010-01-08 10:57:00 2710

HideFromDebugger

通过NtSetInformationThread来隐藏调试器,使程序无法调试

2009-09-14

KerneExec 在内核中创建一个进程

在ring0中创建一个进程,不需要ring3交互

2009-05-06

MiniWeb代码——WebServer实现

实现的WebServer的TCP/IP协议栈

2009-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除