- 博客(12)
- 资源 (18)
- 收藏
- 关注
原创 驱动层hook系统函数的时,如何屏蔽掉只读属性?
对于Intel 80486或以上的CPU,CR0的位16是写保护(Write Proctect)标志。当设置该标志时,处理器会禁止超级用户程序(例如特权级0的程序)向只读页面执行写操作;当该位复位时则反之。因此,在写前把设置该位就可以climov eax, cr0and eax, -65537 ; fffeffffHmov cr0, eax
2013-08-17 16:07:07 1134
转载 Rootkit之SSDT hook(通过CR0)
SSDT即System Service Dispath Table,它是一个表,这个表中有内核调用的函数地址。KeServiceDescriptorTable:是由内核(Ntoskrnl.exe)导出的一个表,这个表是访问SSDT的关键,具体结构是typedef struct ServiceDescriptorTable {PVOID ServiceTableBase;PVOID
2013-08-17 15:00:57 1087
原创 #define SYSTEMSERVICE(_func) KeServiceDescriptorTable.ServiceTableBase[ *(PULONG)((PUCHAR)_func+1) 这
这个跟KeServiceDescriptorTable的结构有关下面是KeServiceDescriptorTable的结构定义KeServiceDescriptorTabletypedef struct _KSERVICE_TABLE_DESCRIPTOR { PULONG_PTR Base; PULONG Count; ULONG Limit; PUCHAR Number;} K
2013-08-17 14:15:15 1853
转载 SSDT
2、系统服务调度表SSDT及SSSDT Shadow系统服务:由操作系统提供的一组函数(内核函数),API可以间接或者直接的调用系统服务。操作系统以动态链接库(DLL)的形式提供API。SSDT:系统服务调度表(System Service Dispatch Table),该表可以基于系统服务编号进行索引,来定位函数内存地址。SSPT:系统服务参数表(System Service
2013-08-17 12:31:04 3351
转载 使用Windbg调试内核
Windbg是微软开发的免费源码级调试工具。Windbg可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。1.从http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx下载Install Debugging Tools for Windows 32-bit Version 2.从http:
2013-08-17 11:45:49 958
转载 Zw函数与Nt函数的分别与联系
in ring3:lkd> ? ntdll!ZwOpenProcessEvaluate expression: 2089999739 = 7c92dd7blkd> ?ntdll!NtOpenProcessEvaluate expression: 2089999739 = 7c92dd7b可以看到,在ntdll中,ZwOpenProcess和NtOpenProcess其实是同
2013-08-17 11:36:13 930
原创 SSDT
SSDT就是一张存于系统内核中的一张表。这个表的作用就是指向一些函数的地址。比如我们调用OPENPROCESS,最终会调用SSDT表中的122号服务。哈~~
2013-08-17 10:59:56 688
原创 Rootkit之SSDT hook(通过CR0)
CR0当中有一个写保护位,是保护内存不可写属性的,为了能够写入内核,只能把它的保护给咔嚓掉了,不过……如果做完了手脚但不还原写保护属性的话,极有可能会BOSD.
2013-08-17 10:25:39 1134
原创 直接用编译器按ctrl+F5运行和双击运行结果不一样
是因为进程权限的问题,需要添加下面的代码:BOOL EnableDebugPrivilege(){HANDLE hToken;BOOL fOk=FALSE;if(OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken)){TOKEN_PRIVILEGES tp;tp.Privilege
2013-08-05 16:33:45 1406
原创 驱动编译的时候注意编译工程选项
右键要编译的驱动工程会看到该工程配置的有哪些工程类别,比如WXP checked WNET checked,在编译的时候要选对
2013-08-01 11:40:37 970
原创 'ddkbuild.cmd' 不是内部或外部命令,也不是可运行的程序
把DDKBUILD.bat 和 DDKBUILD.cmd 所在目录添加到path环境变量中安装DDK我的目录是:D:\WINDDK安装DDK后,去http://ddkwizard.assarbad.net/ 下载ddkwizard_setup_v1.2.0a、ddkbuild_bat.zip、ddkbuild_cmd.zip。拷贝 DDKBUILD.bat 和 DDKB
2013-08-01 11:16:40 3643
dotnetfx_cleanup_tool
2015-07-23
error C4996
2015-07-11
解决rdlc报错 An error occurred during local report processing
2015-07-07
VC 常见编译错误.pdf
2015-02-13
ReloadKernel(重载内核全程分析)
2014-02-25
如何HOOK桌面窗口消息
2013-12-26
代码注入的三种方法
2013-12-26
Windows下DNS ID欺骗的原理与实现
2013-11-16
NDIS+IM防火墙安装文件和源代码
2013-07-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人