精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● 计算机安全>>◇技术资料◇>>操作系统>>部分未公开的Windows 2000核心功能调用

主题:部分未公开的Windows 2000核心功能调用
发信人: wangyilcm()
整理人: williamlong(2002-12-03 21:10:10), 站内信件


   这些未公开的Windows 2000核心功能调用(Windows NT 4.0一般也可以调用)是针对Intel 80386(I386)以上CPU的,没有移植性,可能是微软公司不公开这些调用的原因。 
这些调用一般以Ke386 或者KeI386开头,部分调用相当有用,笔者只分析了一部分调用的函数原型,以后再分析余下的调用。 

1、Ke386SetIoAccessMap 

函数原型:void Ke386SetIoAccessMap(int, IOPM *); 
引出符号:_Ke386SetIoAccessMap@8 

2、Ke386QueryIoAccessMap 

函数原型:void Ke386QueryIoAccessMap(int, IOPM *); 
引出符号:_Ke386QueryIoAccessMap@8 

3、Ke386IoSetAccessProcess 

函数原型:void Ke386IoSetAccessProcess(PEPROCESS, int); 
引出符号:_Ke386IoSetAccessProcess@8 

以上3个调用可以让NT/2000像Windows 95/98一样在Ring 3随意通过in/out指令实现硬件I/O,具体使用方法笔者将在后续文章中说明。 

4、Ke386CallBios 

函数原型:不详 
引出符号:_Ke386CallBios@8 
调用功能:可能是BIOS功能调用 

5、KeI386SetGdtSelector 

函数原型:NTSTATUS KeI386SetGdtSelector(IN ULONG sels, IN PVOID desc); 
引出符号:_KeI386SetGdtSelector@8 
调用功能:设置一个全局描述符 

6、KeI386ReleaseLid 

函数原型:不详 
引出符号:_KeI386ReleaseLid@8 
调用功能:不详 

7、KeI386ReleaseGdtSelectors 

函数原型:NTSTATUS KeI386ReleaseGdtSelectors(OUT PUSHORT SelArray, 
IN int NumOfSelectors); 
引出符号:_KeI386ReleaseGdtSelectors@8 
调用功能:释放一个全局描述符 

8、KeI386MachineType 

函数原型:不详 
引出符号:_KeI386MachineType 
调用功能:可能是取得计算机(CPU)的类型 

9、KeI386GetLid 

函数原型:不详 
引出符号:_KeI386GetLid@20 
调用功能:不详 

10、KeI386FlatToGdtSelector 

函数原型:不详 
引出符号:_KeI386FlatToGdtSelector@12 
调用功能:可能与内存地址变换有关 

11、KeI386Call16BitFunction 

函数原型:不详 
引出符号:_KeI386Call16BitFunction@4 
调用功能:可能与调用16位代码有关 

12、KeI386Call16BitCStyleFunction 

函数原型:不详 
引出符号:_KeI386Call16BitCStyleFunction@16 
调用功能:可能与调用16位代码有关 

13、KeI386AllocateGdtSelectors 

函数原型:NTSTATUS KeI386AllocateGdtSelectors(OUT PUSHORT SelArray, 
IN int NumOfSelectors); 
引出符号:_KeI386AllocateGdtSelectors@8 
调用功能:分配一个全局描述符 

该功能与KeI386SetGdtSelector功能、KeI386ReleaseGdtSelectors功能配合使用,可以修改GDT,从而可以定义自己的调用门,进入真正的NT Ring 0层,从而可以直接修改GDT、IDT、LDT,直接访问全部内存和全部硬件,功能极其强大。 

14、KeI386AbiosCall 

函数原型:不详 
引出符号:_KeI386AbiosCall@16 
调用功能:可能与BIOS功能调用有关 

15、Kii386SpinOnSpinLock 

函数原型:不详 
引出符号:Kii386SpinOnSpinLock@8 
调用功能:不详 

16、Kei386EoiHelper 

函数原型:不详 
引出符号:Kei386EoiHelper@0 
调用功能:可能与中断处理有关 


[关闭][返回]