E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
windows内核SSDT
Windows中系统调用的流程
Windows中系统调用的流程潘爱民,2010.9.24在《
Windows内核
原理与实现》一书,我曾经详细地解析了Windows应用程序发出的系统调用,经过ntdll.dll中的stub函数,再通过sysenter
panaimin
·
2010-09-24 15:00
c
windows
2010
完全用UNIX工作
这篇文章也不是用来比较Linux和
Windows内核
效率,文件系统,网络服务的。我现在是作为
358228677
·
2010-09-23 11:10
windows
unix
职场
休闲
雨林木风
【推荐阅读】机器SID的迷思
Windows内核
大拿MarkKrussinovich好文章(全英文)。
delxu
·
2010-09-17 13:16
windows
职场
sid
休闲
【推荐阅读】机器SID的迷思
Windows内核
大拿MarkKrussinovich好文章(全英文)。
delxu
·
2010-09-17 13:16
windows
职场
sid
休闲
Windows内核
技术的精华站点
Web站点: http://www.osronline.com,技术含量很高的Windows驱动开发站点,该站点的list基本上覆盖了所有Windows驱动开发的常见问题,强烈推荐; http://www.microsoft.com/whdc,微软的驱动开发资源主页,可以获取很多官方资料; http://www.wd-3.com/,该站点收集了一些比较好的Windows驱动开发方面的文章和示例代
·
2010-09-08 16:00
windows
解析Windows2000的IDT扩展机制
前言今天我们谈谈Windows 2000下中断机制的扩展,首先申明本文提到的技术并非本人发现的,只不过是我在学习
Windows内核
过程中的一点心得罢了,目的在于为和我一样刚刚步入Windows底层学习的朋友提供一点实用的资料
tibaloga
·
2010-08-29 19:00
windows
关于
Windows内核
对象句柄在进程空间内的存储
当一个进程被初始化时,系统会为它分配一个句柄表。该句柄表只用于内核对象(简单的说就是由CreateFile,CreateMutex,CreateXXXX这类函数创建的对象),不用于用户对象或GDI对象。下表显示了进程的句柄表的样子,它是个数据结构的数组。每个结构都包含一个指向内核对象的指针、一个访问屏蔽和一些标志。索引内核对象内存块的指针访问屏蔽(标志位的DWORD)标志(标志位的DWORD)10
HarbinZJU
·
2010-08-27 22:00
数据结构
windows
存储
Windows 内核Hook之IOAPIC编程
Windows内核
Hook之IOAPIC编程HOOK系列中,包括应用程序HOOK编程、IDT和IOAPIC编程,其中IOPIC顾名思义I/OADVANCEDPROGRAMMABLEINTERRUPTCONTROLLER
xxxluozhen
·
2010-08-27 21:00
IOCP模型总结
而这些线程都是可运行的,
Windows内核
花费大量的时间在进行线程的上下文切换,并没有多少时间花在线程运行上。再加上创建新线程的开销比较
zhangjingyangguang
·
2010-08-26 10:00
windows
IO
socket
buffer
远程连接
winapi
windbg命令
strcteproce
ssdt
-v-rntdll!_peb(windows2003下改为:dt-v-rnt!
lwglucky
·
2010-08-25 23:46
命令
职场
windbg
休闲
windbg命令
strcteproce
ssdt
-v-rntdll!_peb(windows2003下改为:dt-v-rnt!
lwglucky
·
2010-08-25 23:46
命令
职场
windbg
休闲
张银奎谈软件调试和软件测试
从2005年开始公开讲授“
Windows内核
及高级调试”课程,曾在微软的Webcast和各种技术会议上做过《WindowsVi
张龙
·
2010-08-10 00:00
Win32k.sys 窗口创建漏洞
漏洞介绍: CVEID:CVE-2010-0485由于
Windows内核
模式驱动程序在创建窗口时未正确验证所有参数,因此存在一个特权提升漏洞。
乐园园
·
2010-08-09 20:02
漏洞
窗口
职场
创建
休闲
乐成
win32k.sys
Win32k.sys 窗口创建漏洞
漏洞介绍: CVEID:CVE-2010-0485由于
Windows内核
模式驱动程序在创建窗口时未正确验证所有参数,因此存在一个特权提升漏洞。
乐园园
·
2010-08-09 20:02
漏洞
窗口
职场
创建
休闲
乐成
win32k.sys
研究人员抢先发现微软Windows核心级漏洞
就在微软宣布要修补34个补丁的第二天,安全研究公司Vupen的研究人员发现了一种
Windows内核
级漏洞,这种漏洞允许攻击者提升权限,也可以让他们来远程执行恶意代码,微软操作系统的所有版本都受到影响,其中包括戒备森严的
yangji008
·
2010-08-08 02:08
漏洞
windows
win7
安全
内核
微软
Windows内核
函数的命名
Windows的内核函数在命名上有个很好的特色,就是函数名都按其所在的层次或模块加上了特定的前缀。了解了这些前缀,看到一个函数名就可以大致知道这个函数所属的层次和模块,主要的前缀有:Ex:管理层,Ex是Executive的开头两个字母。Ke:核心层,Ke是Kernel的开头两个字母。Hal:硬件抽象层,Hal是HardwareAbstractionLayer的缩写。Ob:对象管理,Ob是Objec
ZhengZhiRen
·
2010-07-27 21:00
理解
Windows内核
模式与用户模式
内核层次架构windows程序运行分为内核模式和用户模式,内核模式可以访问所有的内存地址空间,并且可以访问所有的CPU指令。一般程序运行在用户模式,通过系统调用切换到内核模式执行系统功能,Windows系统通过这种方式来确保系统的安全和稳定。下面是内核的层次划分:硬件抽象层(HardwareAbstractionLayer)(HAL)(hal.dll)最底层隔离硬件的,底层的第三方驱动程序就运行在
Chinamming
·
2010-07-26 11:00
《
Windows内核
编程》---内核模式下字符串的基本操作
驱动程序中字符串操作涉及到ASCII字符串、宽字符串,还有DDK定义的ANSI_STRING数据结构和UNICODE_STRING数据结构。 1)ASCII字符串和宽字符串 在应用程序中使用两种字符:一是char型字符串,负责记录ANSI字符集,它是指向一个char数组的指针,每个char型变量大小是一个字节,字符串是以0标志字符串结束的;一是wchar_t型的宽字符串,负责描述unico
wapysun
·
2010-07-09 22:00
windows
《
Windows内核
编程》---内核模式下字符串的基本操作
驱动程序中字符串操作涉及到ASCII字符串、宽字符串,还有DDK定义的ANSI_STRING数据结构和UNICODE_STRING数据结构。 1)ASCII字符串和宽字符串在应用程序中使用两种字符:一是char型字符串,负责记录ANSI字符集,它是指向一个char数组的指针,每个char型变量大小是一个字节,字符串是以0标志字符串结束的;一是wchar_t型的宽字符串,负责描述unicode字符集
ACE1985
·
2010-07-09 22:00
数据结构
编程
windows
String
buffer
DDK
关于线程切换与异步调用相关的几句话----摘自《
Windows内核
情景分析》
1,线程调度与线程切换 线程调度发生在核心层内部,而线程切换发生于CPU推出核心层的时候。2,APC(异步过程调用)执行时机 (1)对于用户APC,目标线程从内核返回用户空间时调用; (2)对于内核APC,发生于CPU降低运行级别或者进行线程切换时;3,DPC(延迟过程调用)调用时机 CPU运行级别从DISPATCH——LEVEL或者以上降低到DISPATCH_LEVEL以
smstong
·
2010-07-09 11:00
《
Windows内核
编程》---内存管理基本概念
阅读更多内存管理概念:1)物理内存PC上有三条总线:数据总线、地址总线和控制总线。32位CPU的寻址能力是4GB个字节,用户最多可以使用4GB的真实物理内存。PC中很多设备都提供了自己的设备内存,例如显卡就提供了自己的显存。这部分内存会映射到PC的物理内存上,也就是读写这段物理地址,其实会读写的设备内存地址,而不会读写物理内存地址。2)虚拟内存地址Windows所有程序(包括Ring0层和Ring
wapysun
·
2010-07-08 21:00
《
Windows内核
编程》---内存管理基本概念
内存管理概念: 1)物理内存 PC上有三条总线:数据总线、地址总线和控制总线。32位CPU的寻址能力是4GB个字节,用户最多可以使用4GB的真实物理内存。PC中很多设备都提供了自己的设备内存,例如显卡就提供了自己的显存。这部分内存会映射到PC的物理内存上,也就是读写这段物理地址,其实会读写的设备内存地址,而不会读写物理内存地址。 2)虚拟内存地址 Windows所有程序(包括Ring0
wapysun
·
2010-07-08 21:00
windows
《
Windows内核
编程》---内存管理基本概念
内存管理概念:1)物理内存PC上有三条总线:数据总线、地址总线和控制总线。32位CPU的寻址能力是4GB个字节,用户最多可以使用4GB的真实物理内存。PC中很多设备都提供了自己的设备内存,例如显卡就提供了自己的显存。这部分内存会映射到PC的物理内存上,也就是读写这段物理地址,其实会读写的设备内存地址,而不会读写物理内存地址。 2)虚拟内存地址Windows所有程序(包括Ring0层和Ring3层的
ACE1985
·
2010-07-08 21:00
编程
windows
object
System
磁盘
DDK
《
Windows内核
编程》---语言选择的注意点
调用约定:调用约定指的是函数被调用时,会按照不同规则,翻译成不同的汇编代码。当一个函数被调用时,首先会将返回地址压入堆栈,紧接着会将函数的参数依次压入堆栈。不同的调用约定,会指明不同的参数入栈顺序,还会指明不同的清理堆栈的方法。用C语言或者C++语言编译器编译程序时,会有四种不同的调用约定去编译函数:C语言的调用约定,函数由__cdecl修饰;标准调用约定,函数由__stdcall修饰;快速调用约
ACE1985
·
2010-07-06 21:00
编程
c
windows
语言
编译器
DDK
《
Windows内核
编程》---语言选择的注意点
调用约定: 调用约定指的是函数被调用时,会按照不同规则,翻译成不同的汇编代码。当一个函数被调用时,首先会将返回地址压入堆栈,紧接着会将函数的参数依次压入堆栈。不同的调用约定,会指明不同的参数入栈顺序,还会指明不同的清理堆栈的方法。用C语言或者C++语言编译器编译程序时,会有四种不同的调用约定去编译函数: C语言的调用约定,函数由__cdecl修饰; 标准调用约定,函数由__stdcall修饰
wapysun
·
2010-07-06 21:00
windows
《
Windows内核
编程》---WDM驱动程序的基本结构和实例
WDM驱动的基本结构: WDM驱动模型是建立在NT式驱动程序模型基础之上的。对于WDM驱动程序来说,一般都是基于分层的,即完成一个设备的操作,至少要由两个驱动设备共同完成。 1)物理设备对象和功能设备对象 物理设备对象(Physical Device Object,PDO)和功能设备对象(Function Device Object,FDO)的关系是“附加”与“被附加”的关系。
wapysun
·
2010-07-06 16:00
windows
《
Windows内核
编程》---WDM驱动程序的基本结构和实例
WDM驱动的基本结构:WDM驱动模型是建立在NT式驱动程序模型基础之上的。对于WDM驱动程序来说,一般都是基于分层的,即完成一个设备的操作,至少要由两个驱动设备共同完成。 1)物理设备对象和功能设备对象物理设备对象(PhysicalDeviceObject,PDO)和功能设备对象(FunctionDeviceObject,FDO)的关系是“附加”与“被附加”的关系。当PC插入某个设备时,PDO会自
ACE1985
·
2010-07-06 16:00
编程
windows
object
String
query
extension
《
Windows内核
编程》---NT驱动程序的基本结构和实例
Windows驱动程序分为两类:一类是不支持即插即用功能的NT式驱动程序;另一类是支持即插即用功能的WDM驱动程序。 NT式驱动的基本结构: 1)驱动加载过程与驱动入口函数DriverEntry: 驱动程序入口点函数通常命名为DriverEntry,也可以指定另外的名字,但最好遵循这个名字: DRIVER_INITIALIZE DriverEntry; NTSTATUS
wapysun
·
2010-07-05 22:00
windows
《
Windows内核
编程》---NT驱动程序的基本结构和实例
Windows驱动程序分为两类:一类是不支持即插即用功能的NT式驱动程序;另一类是支持即插即用功能的WDM驱动程序。 NT式驱动的基本结构: 1)驱动加载过程与驱动入口函数DriverEntry:驱动程序入口点函数通常命名为DriverEntry,也可以指定另外的名字,但最好遵循这个名字:DRIVER_INITIALIZEDriverEntry;NTSTATUSDriverEntry( __in
ACE1985
·
2010-07-05 22:00
编程
windows
object
String
struct
extension
再谈UNIX流机制和tty驱动
周末在家调试linux的终端驱动,发现linux并没有按照unix流机制的建议来实现tty驱动,虽然我对
windows内核
理解不如对linux深刻,可是还是略知一二,windows的分层驱动模型倒是和unix
dog250
·
2010-07-03 17:00
linux
windows
unix
File
mfc
终端
再谈UNIX流机制和tty驱动
周末在家调试linux的终端驱动,发现linux并没有按照unix流机制的建议来实现tty驱动,虽然我对
windows内核
理解不如对linux深刻,可是还是略知一二,windows的分层驱动模型倒是和unix
totoxian
·
2010-07-03 17:00
unix
再谈UNIX流机制和tty驱动
周末在家调试linux的终端驱动,发现linux并没有按照unix流机制的建议来实现tty驱动,虽然我对
windows内核
理解不如对linux深刻,可是还是略知一二,windows的分层驱动模型倒是和unix
xitong
·
2010-07-03 17:00
unix
再谈UNIX流机制和tty驱动
周末在家调试linux的终端驱动,发现linux并没有按照unix流机制的建议来实现tty驱动,虽然我对
windows内核
理解不如对linux深刻,可是还是略知一二,windows的分层驱动模型倒是和unix
dog250
·
2010-07-03 17:00
windows
linux
unix
File
mfc
终端
KeServiceDescriptorTable 与 KeServiceDescriptorTableShadow
早先“盗用”过公开的Re
SSDT
的源代码,对
SSDT
多少还是了解些,也Hook过
SSDT
,但一直对另外一个
SSDT
——Shadow
SSDT
不甚了解,只知道它跟GUI调用有莫大的关系,具体怎么联系起来的,
huangyong19870618
·
2010-07-02 09:00
windows
struct
service
table
hook
Descriptor
windbg 命令集 总结
strcteproce
ssdt
-v-rntdll!_peb(windows2003下改为:dt-v-rnt!
laokaddk
·
2010-06-24 20:53
职场
windbg
休闲
命令集
windbg 命令集 总结
strcteproce
ssdt
-v-rntdll!_peb(windows2003下改为:dt-v-rnt!
laokaddk
·
2010-06-24 20:53
职场
windbg
休闲
命令集
Windows内核
常见数据结构
Windows内核
常见数据结构(基本类型) 学内核从基本数据结构开始吧,就像学C语言时从学习int,char开始一样.只列出目前见到和用到的,其它后面再补充~常用数据结构:数字:lkd>dt_ULARGE_INTEGERntdll
laokaddk
·
2010-06-24 20:40
职场
休闲
Windows内核常见数据结构
Windows内核
常见数据结构
Windows内核
常见数据结构(基本类型) 学内核从基本数据结构开始吧,就像学C语言时从学习int,char开始一样.只列出目前见到和用到的,其它后面再补充~常用数据结构:数字:lkd>dt_ULARGE_INTEGERntdll
laokaddk
·
2010-06-24 20:40
职场
休闲
Windows内核常见数据结构
为什么win32k.sys在System进程空间无法访问
为什么win32k.sys在System进程空间无法访问 玩过Shadow
SSDT
Hook的都知道,在System进程中是无法访问win32k.sys的内存空间的,要想访问必须切换到csrss进程或者任意一个
laokaddk
·
2010-06-24 19:36
职场
休闲
win32k.sys
System进程空间
为什么win32k.sys在System进程空间无法访问
为什么win32k.sys在System进程空间无法访问 玩过Shadow
SSDT
Hook的都知道,在System进程中是无法访问win32k.sys的内存空间的,要想访问必须切换到csrss进程或者任意一个
laokaddk
·
2010-06-24 19:36
职场
休闲
win32k.sys
System进程空间
Rootkit Unhooker驱动逆向分析
1.
SSDT
检测这个功能有三个IoControlCode与之对应,他们分别是22000fh(拷贝KeServiceDescriptorTable);220007h(拷贝KeServiceDescriptorTable
lwglucky
·
2010-06-22 15:45
驱动
逆向
休闲
rootkit
Unhooker
Rootkit Unhooker驱动逆向分析
1.
SSDT
检测这个功能有三个IoControlCode与之对应,他们分别是22000fh(拷贝KeServiceDescriptorTable);220007h(拷贝KeServiceDescriptorTable
lwglucky
·
2010-06-22 15:45
驱动
逆向
休闲
rootkit
Unhooker
《
Windows内核
编程》---基本数据结构
驱动对象: 每个驱动程序都会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载时被内核中的对象管理程序所创建的。驱动对象用DRIVER_OBJECT数据结构表示,它作为驱动的一个实例被内核加载,并且内核对一个驱动只加载一个实例。确切地说,是由内核中的I/O管理器负责加载的,驱动程序需要在DriverEntry中初始化。驱动对象的结构定义如下(wdm.h): typedef struct _
wapysun
·
2010-06-19 20:00
windows
《
Windows内核
编程》---基本数据结构
驱动对象:每个驱动程序都会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载时被内核中的对象管理程序所创建的。驱动对象用DRIVER_OBJECT数据结构表示,它作为驱动的一个实例被内核加载,并且内核对一个驱动只加载一个实例。确切地说,是由内核中的I/O管理器负责加载的,驱动程序需要在DriverEntry中初始化。驱动对象的结构定义如下(wdm.h):typedefstruct_DRIVER
ACE1985
·
2010-06-19 20:00
编程
windows
struct
object
alignment
Allocation
《
Windows内核
编程》---系统时间和定时器
内核编程与应用程序编程一个很重要的不同点在于:应用编程中,多数情况下只需考虑单线程就可以;在内核编程中,绝大多数情况下所写的代码都位于多线程环境中。获得当前“滴答数”:获得系统日前和时间往往是为了写日志,获得启动毫秒数则很适合用来做一个随机数的种子。有时也使用时间相关的函数来寻找程序的性能瓶颈。在Win32开发中,我们使用GetTickCount()函数来返回系统自启动之后经历的毫秒数。在驱动开发
ACE1985
·
2010-06-18 10:00
多线程
编程
windows
timer
struct
Integer
《
Windows内核
编程》---系统时间和定时器
内核编程与应用程序编程一个很重要的不同点在于:应用编程中,多数情况下只需考虑单线程就可以;在内核编程中,绝大多数情况下所写的代码都位于多线程环境中。 获得当前“滴答数”: 获得系统日前和时间往往是为了写日志,获得启动毫秒数则很适合用来做一个随机数的种子。有时也使用时间相关的函数来寻找程序的性能瓶颈。 在Win32开发中,我们使用GetTickCount()函数来返回系统自启动之后经历的毫秒数
wapysun
·
2010-06-18 10:00
windows
《
Windows内核
编程》---系统线程和同步事件
系统线程:在驱动中生成的线程一般是系统线程,系统线程所在的进程名为“System”,用到的内核API函数是:NTSTATUSPsCreateSystemThread(OUTPHANDLEThreadHandle,INULONGDesiredAccess,INPOBJECT_ATTRIBUTESobjectAttributesOPTIONAL,INHANDLEProcessHandleOPTIONA
ACE1985
·
2010-06-18 10:00
thread
编程
windows
String
null
delay
《
Windows内核
编程》---系统线程和同步事件
系统线程: 在驱动中生成的线程一般是系统线程,系统线程所在的进程名为“System”,用到的内核API函数是: NTSTATUS PsCreateSystemThread( OUT PHANDLE ThreadHandle, IN ULONG DesiredAccess, IN POBJECT_ATTRIBUTES objectAttributes OPTIONAL, IN HANDL
wapysun
·
2010-06-18 10:00
windows
《
Windows内核
编程》---系统线程和同步事件
系统线程:在驱动中生成的线程一般是系统线程,系统线程所在的进程名为“System”,用到的内核API函数是:NTSTATUSPsCreateSystemThread(OUTPHANDLEThreadHandle,INULONGDesiredAccess,INPOBJECT_ATTRIBUTESobjectAttributesOPTIONAL,INHANDLEProcessHandleOPTIONA
ace1985
·
2010-06-18 10:00
工作在微软
前一段时间应邀写一篇关于
Windows内核
研究方面的文章,发表到MSRA在sina的blog上(http://blog.sina.com.cn/s/blog_4caedc7a0100k8jt.html)
lovnet
·
2010-06-17 00:00
html
windows
工作
Blog
Office
上一页
25
26
27
28
29
30
31
32
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他