系统底层
_KaQqi
你猜
展开
-
C/C++用户模式下改写硬盘主引导记录(MBR)
CPU一共有四种权限级别:ring0 ring1 ring2 ring3Windows只是用了ring0和ring3我们在使用电脑时,一般在ring3模式下工作。在ring3模式下,我们无法使用CPU特权指令in和out。对系统所属的数据,地址空间以及硬件也是有严格的限制的。原创 2015-12-12 16:14:11 · 7075 阅读 · 6 评论 -
WRMSR--写MSR
WRMSR--写MSR WRMSR将寄存器EDX:EAX的内容写到64位由ECX寄存器指定的MSR(model specific register,模式指定寄存器)中(在支持intel64架构的处理器中RCX的高32位忽略。)。EDX寄存器内容拷贝至选定的MSR的高32位,EAX内容拷贝至选定的MSR的低32位(在支持intel64架构的处理器中RDX和RAX的高32位忽略)。MS转载 2016-07-30 14:57:42 · 688 阅读 · 0 评论 -
SYSEXIT——快速系统调用的快速返回
SYSEXIT——快速系统调用的快速返回 SYSEXIT用来快速调用返回至3层的用户代码。SYSEXIT是SYSENTER的同伴指令。该指令经过了优化,它可以使将由操作系统或执行程序(运行在0层)至用户代码(运行在3层)的返回发挥最大的性能。该指令只能在0层的权限执行。 在调用SYSEXIT指令前,软件必须通过MSR寄存器和通用寄存器,指定3层的代码段和代码指针,3层的堆栈段和堆栈转载 2016-07-30 14:57:18 · 494 阅读 · 0 评论 -
SYSENTER——快速系统调用
SYSENTER——快速系统调用 SYSENTER用来快速调用一个0层的系统过程。SYSENTER是SYSEXIT的同伴指令。该指令经过了优化,它可以使将由用户代码(运行在3层)向操作系统或执行程序(运行在0层)发起的系统调用发挥最大的性能。 在调用SYSENTER指令前,软件必须通过下面的MSR寄存器,指定0层的代码段和代码指针,0层的堆栈段和堆栈指针:1. IA转载 2016-07-30 14:56:28 · 319 阅读 · 0 评论 -
sysenter HOOK反OD调试
sysenter指令:SYSENTER用来快速调用一个0层的系统过程。SYSENTER是SYSEXIT的同伴指令。该指令经过了优化,它可以使将由用户代码(运行在3层)向操作系统或执行程序(运行在0层)发起的系统调用发挥最大的性能。 在调用SYSENTER指令前,软件必须通过下面的MSR寄存器,指定0层的代码段和代码指针,0层的堆栈段和堆栈指针:1. IA32_SYS原创 2016-05-12 20:01:08 · 2134 阅读 · 0 评论 -
C语言简易的硬盘操作器
用C语言写的小软件 大神勿喷原创 2015-12-26 14:19:37 · 1685 阅读 · 0 评论 -
C/C++用户模式下备份并改写MBR
原理已经说过了,不想再说了。其实用API备份修改硬盘那么复杂。。。我只是想说:库函数也可以打开硬盘。。。。。原创 2015-12-19 13:40:40 · 2056 阅读 · 0 评论 -
DLL劫持技术
DLL劫持技术不想再说了,具体的可以百度。。。。先简单的说一句。。。运行一个PE文件,WINDOWS会首先在当前目录下寻找要用的DLL,如果找不到就上其他地方找,一直到系统目录。。。然后想干嘛就干嘛了。。。首先得伪造,别告诉我随便找个PE文件然后改一下名字就是伪造了。。。。怎么伪造呢?当然是伪造导入表。原创 2016-01-18 20:03:29 · 4563 阅读 · 3 评论 -
MFC清除CMOS密码
这个只是根据昨天的清除CMOS密码的驱动程序对应的一个SDK原创 2015-11-28 11:08:52 · 512 阅读 · 0 评论 -
汇编清除CMOS密码
代码很精简的,不要不相信!原创 2015-11-27 19:48:02 · 839 阅读 · 0 评论 -
RDMSR--读MSR
RDMSR--读MSR RDMSR将64位由ECX寄存器指定的MSR(model specific register,模式指定寄存器)的内容读出至寄存器EDX:EAX中(在支持intel64架构的处理器中RCX的高32位忽略)。MSR的高32位内容存放在EDX寄存器中,MSR的低32位内容存放在EAX寄存器中(在支持intel64架构的处理器中RDX和RAX的高32位忽略)。如果M转载 2016-07-30 14:58:09 · 4871 阅读 · 0 评论