Windows系统原理
文章平均质量分 63
开发随笔
如果你厌倦了眼前的一切,要么离开,要么改变它
展开
-
关于Hook (转)
关于Hook 一、基本概念: 钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。 钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗转载 2010-04-01 17:21:00 · 369 阅读 · 0 评论 -
createremotethread讲解(转)
要实现线程的远程注入必须使用Windows提供的CreateRemoteThread函数来创建一个远程线程该函数的原型如下:HANDLE CreateRemoteThread( HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_R转载 2010-04-14 21:05:00 · 790 阅读 · 0 评论 -
Windows应用程序启动函数
Windows应用程序必须有一个在程序启动时调用的进入入口函数。可以使用的函数有四个:main()wmain()winmain()wwinmain()函数的具体定义可以查阅MSDN。但是在使用VC++编译连接程序的时候,IDE还会在入口函数之前加一个文件启动函数。与上面相对应的启动函数是mainCRTStartup()wmainCRTSartup()winm转载 2010-04-09 12:41:00 · 650 阅读 · 0 评论 -
SSDT HOOK中的几个宏
SSDT HOOK中的几个宏#define GetSystemFunc(FuncName) KeServiceDescriptorTable.ServiceTableBase[*(PULONG)((PUCHAR)FuncName+1)]#define GetIndex(_Function) *(PULONG)((PUCHAR)_Function+1)#define HookOn(_Old, _New) / (PVOID) InterlockedExchange( (PLONG) &Mapped原创 2010-08-09 00:20:00 · 796 阅读 · 0 评论 -
【转帖】一个函数通解WINDOWS原理.
标 题: 【原创】一个函数通解WINDOWS原理.作 者: qiyewenjie时 间: 2010-10-10,19:00:39链 接: http://bbs.pediy.com/showthread.php?t=121973PS:感谢qiyewenjie这么详细的分析这是本人第一篇论文,称不上什么技术论文,都是关于windows xp的一些理论知识。由于学习编程没多久,本篇都是参考网上资料,MSDN,并结合自己的理解写下,本人知识有限,难免会有很多错误和不全面的地方,大牛们勿笑话...,虽然这些东西在网上转载 2011-02-10 17:08:00 · 1062 阅读 · 0 评论 -
Windows驱动启动类型
<br />StartType=start-codeSpecifies when to start the driver as one of the following numerical values, expressed either in decimal or, as shown here, in hexadecimal notation.0x0 (SERVICE_BOOT_START)Indicates a driver started by the operating system loader.转载 2011-03-31 01:02:00 · 1656 阅读 · 0 评论 -
Windows 进程APC学习笔记
学习Windows进程,APC肯定少不了啦。PS:由于本人才疏智浅,本文仅为个人学习笔记,如有错误,希望大牛不吝赐教。下面是我学习APC的一点笔记。1、什么是APCAPC就是异步过程调用的所写。据说PE格式DLL映像的装入和动态连接就是由ntdll.dll中的原创 2011-09-01 00:16:06 · 2237 阅读 · 0 评论 -
Windows LPC
昨天心血来潮看了下LPC,查了些资料,发现涉及到的东西真不少,先记录下吧,研究清楚了再继续。LPC通信的基本步骤大概如下:1. NtCreatePort 来创建一个命名端口,这个端口叫连接端口。2.服务器通过NtListenPort来监听这个连接端口以获得新的通信请求原创 2011-08-24 01:27:28 · 2622 阅读 · 0 评论 -
记录两个函数
直接贴WRK的源码吧,包括注释NTSTATUSIoGetDeviceObjectPointer( IN PUNICODE_STRING ObjectName, IN ACCESS_MASK DesiredAccess, OUT PFILE_O原创 2011-08-29 22:55:03 · 495 阅读 · 0 评论