基本方法还是啊帅的5.8,只是SXE6.1修正了内核驱动的捆绑,为什么结束了线程10打不开CS?因为CS跟系统内核ntdll.dll捆绑,而SXE也调用这个内核程序,这个可以用ICEWORD内核项中看到,我不多说,大家可以自己看到,所以问题的关键就在ntdll.dll上了,我想我不必多说了吧,大家知道怎么做了吧.该文件存放在C:/WINDOWS/SYSTEM32里.
[【疑问求助】] SXE6.1不要再开贴了,由我终结,申精,置顶!!!
阅读:2002回复:46
-
本人经无数次蓝屏,无数次重启,无数次呕心沥血的测试,终于找到问题所在.
基本方法还是啊帅的5.8,只是SXE6.1修正了内核驱动的捆绑,为什么结束了线程10打不开CS?因为CS跟系统内核ntdll.dll捆绑,而SXE也调用这个内核程序,这个可以用ICEWORD内核项中看到,我不多说,大家可以自己看到,所以问题的关键就在ntdll.dll上了,我想我不必多说了吧,大家知道怎么做了吧.该文件存放在C:/WINDOWS/SYSTEM32里. - 倒序阅读 只看楼主
-
-
-
-
-
-
-
-
-
-
-
-
-
XP最核心的dll——NTDLL.dll
User32.dll,kernel32.dll,shell32.dll,gdi32.dll,rpcrt4.dll,comctl32.dll,advapi32.dll,version.dll等dll代表了Win32 API的基本提供者。Win32 API中的所有调用最终都转向了ntdll.dll,再由它转发至ntoskrnl.exe。ntdll.dll是本机 API用户模式的终端。真正的接口在ntoskrnl.exe里完成。事实上,内核模式的驱动大部分时间调用这个模块,如果它们请求系统服务。Ntdll.dll的主要作用就是让内核函数的特定子集可以被用户模式下运行的程序调用。Ntdll.dll通过软件中断int 2Eh进入ntoskrnl.exe,就是通过中断门切换CPU特权级。比如kernel32.dll导出的函数DeviceIoControl()实际上调用ntdll.dll中导出的NtDeviceIoControlFile(),反汇编一下这个函数可以看到,EAX载入magic数0x38,实际上是系统调用号,然后EDX指向堆栈。目标地址是当前堆栈指针ESP+4,所以EDX指向返回地址后面一个,也就是指向在进入NtDeviceIoControlFile()之前存入堆栈的东西。事实上就是函数的参数。下一个指令是int 2Eh,转到中断描述符表IDT位置0x2E处的中断处理程序。 -
-
-
-
-

