06 2013 档案

摘要:目录SSDT Hook效果图SSDT简介SSDT结构SSDT HOOK原理Hook前准备如何获得SSDT中函数的地址呢SSDT Hook流程SSDT Hook实现进程保护Ring3与Ring0的通信如何安装启动停止卸载服务参考文献源码附件版权SSDT Hook效果图加载驱动并成功Hook NtTerminateProcess函数:当对 指定的进程进行保护后,尝试使用“任务管理器”结束进程的时候,会弹出“拒绝访问”的窗口,说明,我们的目的已经达到:SSDT简介SSDT 的全称是 System Services Descriptor Table,系统服务描述符表。这个表就是一个把 Ring3 的 阅读全文
posted @ 2013-06-29 17:24 曾是土木人 阅读(22665) 评论(1) 推荐(4) 编辑
摘要:为了安全起见,Windows XP及其以后的系统将一些重要的内存页设置为只读属性,这样就算有权力访问该表也不能随意对其修改,例如SSDT、IDT等。但这种方法很容易被绕过,我们只要将这些部分修改为可写属性就可以了,不过当我们的事情做完后记得把它们恢复为只读属性,不然会造成一些很难预料到的后果。 cr0是系统内的控制寄存器之一。控制寄存器是一些特殊的寄存器,它们可以控制CPU的一些重要特性。 控制寄存器最初出现于低级的286处理器中,以前称之为机器状态字(machine status word),在386以后它们被重命名为控制寄存器(control register)。 cr0寄存器直... 阅读全文
posted @ 2013-06-18 13:59 曾是土木人 阅读(5477) 评论(1) 推荐(1) 编辑
摘要:以上有个问题:为什么同样的汇编指令JMP 12345678却对应不同的机器码呢?首先,机器码E9表明这是一个近跳转(Near Jmp)这里需要补充下相关知识:JMP分3种:①短跳转(Short Jmp,只能跳转到256字节的范围内),对应机器码:EB②近跳转(Near Jmp,可跳至同一段范围内的地址),对应机器码:E9③远跳转(Far Jmp,可跳至任意地址),对应机器码: EA短跳转和近跳转指令中包含的操作数都是相对于(E)IP的偏移。远跳转指令中包含的是目标的绝对地址。所以短/近跳转会出现跳至同一目标的指令机器码不同,不仅会不同,而且应该不同。而远跳转中包含的是绝对地址,因此转移到同一地 阅读全文
posted @ 2013-06-18 10:15 曾是土木人 阅读(4486) 评论(2) 推荐(1) 编辑

点击右上角即可分享
微信分享提示