E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
(ring0)
内核态与用户态
x86处理器包含4个不同的特权等级,分别是
Ring0
~Ring3。
Ring0
下,可以执行特权级指令,对任何I/O设备都有访问权限,Ring3则被限制很多操作。
Qidi_Huang
·
2016-04-15 18:00
linux
内核态
用户态
Windows驱动开发(2) - Windows内存管理
1.2虚拟内存Windows的所有程序(
ring0
,ring3),可以操作的都是虚拟内存。CPU中寄存器CR0一个位PG位来告诉系统是否分页的。1为允
Vinx911
·
2016-04-10 21:23
Win驱动开发
Windows驱动开发(2) - Windows内存管理
1.2虚拟内存Windows的所有程序(
ring0
,ring3),可以操作的都是虚拟内存。CPU中寄存器CR0一个位PG位来告诉系统是否分页的。1为允
u011471873
·
2016-04-10 21:00
windows
驱动开发
GiraffeOS设计与实现(3)-引导CPU1
因为用户态的程序是Ring3的,而我们需要的级别是
Ring0
级别的代码。否则是无法操作APIC的。
borisjineman
·
2016-04-03 15:00
iss
APIC
GiraffeOS
IPI
引导CPU
文件操作->Tesla.Angela教程整理
RING0
操作文件和RING3操作文件在流程上没什么大的区别,也是“获得文件句柄->读/写/删/改->关闭文件句柄”的模式。当然了,只能用内核API,不能用WIN32API。
zhuhuibeishadiao
·
2016-04-02 22:00
编程
函数
文件操作
内核
win10系统调用架构分析
当用户模式调用系统服务时,CPU执行一个特殊的指令以切换到内核模式(
Ring0
),当系统服务调用完成时,操作系统切换回用户模式(Ring3)。
liuyez123
·
2016-03-27 16:40
windows
驱动开发
内核
win10系统调用架构分析
当用户模式调用系统服务时,CPU执行一个特殊的指令以切换到内核模式(
Ring0
),当系统服务调用完成时,操作系统切换回用户模式(Ring3)。Windows与大多数UNIX系统类似,驱动程序代码共享内
liuyez123
·
2016-03-27 16:00
windows
内核
系统调用
win10
架构分析
枚举进程——暴力搜索内存(
Ring0
)
上面说过了隐藏进程,这篇博客我们就简单描述一下暴力搜索进程。 一个进程要运行,必然会加载到内存中,断链隐藏进程只是把EPROCESS从链表上摘除了,但它还是驻留在内存中的。这样我们就有了找到它的方法。在内核中,传入进程ID,通过ZwOpenProcess得到句柄,再传入句柄,通过ObReferenceObjectByHandle,可以获得EPROCESS,既然获得了EPROCESS,问题就迎刃而解
Gotogoo
·
2016-03-09 12:00
72.windbg-命令行选项(command-line options)
-b(仅
ring0
模式)该选项有两个作用:1.调试器在连接到目标机时立即中断它。2.重起
hgy413
·
2016-02-09 16:00
windbg
KVM之初体验——手动及自动化安装KVM脚本
用户模式有自己的ring状态集合,但是特权
ring0
的指令会陷入到管理器(hypervisor)的代码。由于这是一个新的处理器执行模型,代码不需要任何的改动。
zyx1990zm
·
2016-01-26 21:59
Linux
shell
KVM
linux基础操作
KVM之初体验――手动及自动化安装KVM脚本
用户模式有自己的ring状态集合,但是特权
ring0
的指令会陷入到管理器(hypervisor)的代码。由于这是一个新的处理器执行模型,代码不需要任何的改动。
zyx1990zm
·
2016-01-26 21:59
linux
shell
kvm
CPU硬件辅助虚拟化技术
其核心思想都是通过引入新的指令和运行模式,使VMM和GuestOS分别运行在不同模式(ROOT模式和非ROOT模式)下,且GuestOS运行在
Ring0
下。
tasnrh
·
2016-01-20 13:12
技术
硬件
Intel
处理器
计算机系统
CPU硬件辅助虚拟化技术
其核心思想都是通过引入新的指令和运行模式,使VMM和GuestOS分别运行在不同模式(ROOT模式和非ROOT模式)下,且GuestOS运行在
Ring0
下。
tasnrh
·
2016-01-20 13:12
硬件
Intel
技术
虚拟化云计算
说一说golang的协程
操作系统的核心代码运行的
ring0
级别,应用程序的代码运行在ring3级别。
truexf
·
2016-01-13 13:00
golang
协程
Ring3和
Ring0
的通信方法
以前玩应用层和内核层通信的时候模糊记得内核态创建的Event在应用态是可以OpenEvent的但是不能SetEvent,ResetEvent,这样就比较麻烦了,每次都需要发Ioctl下来来进行Event的激活与取消,应用层创建的Event将句柄传入内核态的话,内核态是可以激活和取消激活事件的;本来想总结下自己知道的几种方式,结果网上搜资料的时候搜到了别人总结过的,我知道的几种基本都涵盖了,修改了部
a809146548
·
2015-12-06 01:00
C++
c
api
内核
VC
利用NTLDR进来
RING0
的方法及MGF病毒技术分析
利用NTLDR进入
RING0
的方法及MGF病毒技术分析利用NTLDR进入
RING0
的方法及MGF病毒技术分析 2010年08月02日以前看了莫国防病毒的源代码。摸到了一个进入
RING0
的方法。
a809146548
·
2015-12-06 01:00
C++
c
api
VC
病毒
内核态和用户态的区别
Ring0
级别最高,Ring3最低。 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运行态(或简称为内核态)。此时处理器处于特权级最高的(0级)内核代码中执行。
·
2015-11-13 19:26
区别
使用调用门
描述符的offset指向需要被ring3程序调用的
ring0
函数地址。DPL为3。当然selector权限也需要是3。描述符中的selector应是0x8,说明是
ring0
下code段。
·
2015-11-13 09:37
使用
分页内存与非分页内存导致的蓝屏死机问题
原因是对内核原理的理解太欠缺了,因为驱动运行在
RING0
优先级,开发的时候必须相当注意细节,不然调试的时候会很麻烦(有些时候Dump文件分析出来是错误的)。
·
2015-11-13 09:33
内存
VC:VxD技术及其在实时反病毒中的应用
----Windows9x使用IntelCPU的
Ring0
和Ring3两个保护级。系统进程运行于
Ring0
,因而具有对系统全部资源的访问权和管理权;而
·
2015-11-13 09:18
技术
用户模式与内核模式
blog.csdn.net/yzzm521/archive/2007/05/20/1618026.aspx 用户模式与内核模式 从Intel80386开始,出于安全性和稳定性的考虑,该系列的CPU可以运行于
ring0
·
2015-11-12 20:06
用户
无用的,
ring0
暴力枚举进程模块
////////////////////////////////////////////////////////////////////////// VOID ListModuleThread(PVOID Context) { NTSTATUS ntStatus = STATUS_UNSUCCESSFUL; ULONG StepAddress; ULONG S
·
2015-11-12 17:48
枚举
WindowsNT设备驱动程序开发基础
背景介绍 1.1WindowsNT操作系统的组成1.1.1用户模式(UserMode)与内核模式(KernelMode) 从Intel80386开始,出于安全性和稳定性的考虑,该系列的CPU可以运行于
ring0
·
2015-11-11 13:35
windows
续PhysicalMemory攻击
之前曾讲过通过PhysicalMemory进入
RING0
的一些绕过攻击方式:(http://hi.baidu.com/mj0011/blog/item/1c92ed03bea96d80d53f7c00.
·
2015-11-11 13:27
memory
内核模式下的文件与注册表操作
只不过在
Ring0
下对这些的操作和在Ring3下的操作不同。这里简单介绍下内核模式下文件和注册表的操作。 首先是在驱动中读写文件。首先是打开文件的操作。
·
2015-11-11 10:23
注册表
Zw函数与Nt函数的分别与联系
Ring3中的NATIVE API,和
Ring0
的系统调用,都有同名的Zw和Nt系列函数,一度让初学者感到迷糊。N久前的我,也是相当的迷糊。
·
2015-11-11 05:50
函数
nt内核里的堆管理(2):RtlAllocHeap
ring0
里要操作堆直接调用ntdll.exe里的RtlAllocHeap函数和RtlFreeHeap函数。
·
2015-11-11 02:04
heap
一个处于原型期的debugger的简单分析
让我们直接进
ring0
,看作为一个debugger需要在内核里做什么事情要进
ring0
,一定要写driver,driver的入口多半是Drive
·
2015-11-11 02:57
debugger
邪恶的
RING0
注射ShellCode脆弱的PE加载机制
ZwCreateProcessEx 是个非常非常好的东西,虽然他是个UNDOC.但是如果你仔细阅读过WIN2K的SRC,并且非常了解PE的运行机制,你会发现一些很有趣的东西。 这对目前的所有NT内核的系统来说都是致命的 可以用来做什么? 1. 制造漏洞 2. 提升权限 3. 拿来写病毒 4. 拿来写各种木马 5. 各种ROOTKIT 但是这里我只想很简单的说一下原理。我只希望这样的东西只用来
·
2015-11-10 22:50
shell
ring0
启动一个Win32进程 【译文】
文章原址: http://www.codeproject.com/useritems/KernelExec.asp Download source files - 55 Kb Download demo project - 27 Kb 介绍 在许多不成功的尝试来试图找到一种方式来以核心模式(KernelMode)来启动可运行的Win32进程后,我最终意外的发现了一段有希
·
2015-11-10 22:49
Win32
浅谈NT下Ring3无驱进入
Ring0
的方法
原文链接:浅谈NT下Ring3无驱进入
Ring0
的方法 (测试环境:Windows 2000 SP4,Windows XP SP2.Windows 2003 未测试)  
·
2015-11-09 13:02
方法
丰富中断程序,以及中断与进程运行的关系
中断会读取TSS中
ring0
的esp。该esp指向进程A进程表的regs的最后,并且把进程A运行的cs,eip,ss,sp,eflags等信息压入到esp指向的进程表。
·
2015-11-08 15:16
进程
从
ring0
到ring3再到
ring0
(pmtest5.asm)
; ==========================================; pmtest5.asm; 编译方法:nasm pmtest5.asm -o pmtest5.com; ========================================== %include "pm.inc" ; 常量, 宏, 以及一些说明 org&
·
2015-11-08 15:36
test
RING0
到RING3
在 前一篇文章 里面,我们将了CPU保护模式中的几种特权
RING0
,RING1,RING2,RING3!操作系统通常运行在
RING0
,应用程序通常运行在RING3。
·
2015-11-08 14:20
in
RING3到
RING0
不是所有的指令都能够随时用,比如 ltr指令就不是随便什么时候能用,在保护模式下,如果你不安规则来执行指令,CPU就会抛出异常,比如你在INTEL手册上就能看到如下文本 意思据是说,如果你当前的CPL不是
RING0
·
2015-11-08 14:18
in
探索
ring0
之内核概述
探索
ring0
之内核概述 内核概述 Intel x86系列处理器使用“环”的概念来实施访问控制,共有4个权限级别,由高到低分别为
Ring0
、Ring1、Ring2、Ring3,其中
Ring0
·
2015-11-07 11:58
in
验证驱动的调用者
即存在Ring3恶意调用
Ring0
驱动派遣例程的问题,对于这种调用
Ring0
程序应进行验证和过滤。 作为不够健壮的第三方驱动程序,更容易因为这种恶意调用被干扰,发
·
2015-11-07 11:58
验证
内核环境及其特殊性,驱动编程基础篇
这个可以和CPU的等级联系到一块:
ring0
,ring1,ring2,ring3,特权等级依次降低,最底层
ring0
层拥有最
·
2015-11-05 08:37
编程
用Visual studio2012在Windows8上开发内核驱动监视线程创建
在NT中几乎不太可能进入真正的
ring0
层。 在Windows NT中,存在三种Device Driver: &nbs
·
2015-11-02 09:17
windows
用Visual studio2012在Windows8上开发内核驱动监视进程创建
在NT中几乎不太可能进入真正的
ring0
层。 在Windows NT中,存在三种Device Driver: &nbs
·
2015-11-02 09:17
windows
在
Ring0
下HOOK Ntdll.dll的Nt*函数的方法
typedef struct _SECTION_IMAGE_INFORMATION { PVOID EntryPoint; ULONG StackZeroBits; ULONG StackReserved; ULONG StackCommit; ULONG&nbs
·
2015-11-01 11:49
dll
Windows 注入
接下来讲的注入技术,有ring3层的lld的远程线程和apc注入,还有
ring0
的apc注入,此外还有更为隐蔽的代码注入。 先写最广泛的,也是相
·
2015-11-01 09:26
windows
调用门使代码段从ring3调用到
ring0
再回到ring3的过程
GDT和LDT分别为全局描述表和局部描述表,其中表中每一项又叫做段描述符。段描述符,由段地址,以及段类型,特权级DPL等组成,其中段类型说明此段是代码段还是数据段,还是各种门,还是TSS等。通过GDT访问某个段的时候需要使用段选择符来进行调用。普通调用下,是根据是否是一致代码段进行同级权限代码段之间的调用,或者是低权限向高权限代码的调用,但是CPL不会改变。如果想要从低权限向高权限调用,并且可以改
·
2015-10-31 14:24
代码
内核态和用户态
intel cpu提供Ring0-Ring3三种级别的运行模式,
Ring0
级别最高,Ring3最低。
·
2015-10-31 11:05
用户
ring0
调用ring3-apc
最近一段时间都在解决
ring0
调用ring3函数的问题 因为想在驱动中间实现启动一个应用程序,这个应用程序有可能是exe也有可能是dll,但是在核心层没有像WinExec或者LoadLibrary这样的
·
2015-10-31 11:07
in
retf,call 指令运行的详细情况
retf,call 指令运行的详细情况 call指令的运行情况:(代码段只能从低到高如:ring3到
ring0
(这时特权级转换了,在不同级之间跳转,这是一致代码段情况))  
·
2015-10-31 10:33
call
字符串的处理
Windows 操作系统在
Ring0
层用的都是Unicode 字符集,而且在Visual Studio的开发环境下也是默认的使用Unicode 字符集。
·
2015-10-31 10:50
字符串
ring0
与 ring3 层之间的交互
在进行Windows的
ring0
层开发时,必不可免的要与 ring3 层进行交互。进行数据间的相互传输。可用的方法有DeviceIoCntrol,ReadFile。
·
2015-10-31 10:50
in
驱动层得到进程的完整路径
访问PEB的方法便存在线程靠挂的问题,因为运行于
Ring0
层的线程是无法去访问用户地址空间的,需要将线程暂时靠挂到目标呢进程,进而去访问进程的PEB结构。我一般都采用的访问_FILE_OBJECT
·
2015-10-31 10:50
进程
SSDT HOOK实现内核级保护
SSDT简介 SSDT结构 SSDT HOOK原理 Hook前准备 如何获得SSDT中函数的地址呢 SSDT Hook流程 SSDT Hook实现进程保护 Ring3与
Ring0
·
2015-10-31 08:36
OO
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他