探索ring0之内核概述
2011-07-11 19:19
92 查看
探索ring0之内核概述
内核概述Intel x86系列处理器使用“环”的概念来实施访问控制,共有4个权限级别,由高到低分别为Ring0、Ring1、Ring2、Ring3,其中Ring0权限最高,Ring3权限最低。Windows(从NT开始)和Linux等多数操作系统在Intel x86处理器上只使用了Ring0和Ring3,其中内核态对应着Ring0,用户态对应着Ring3。两个特权级足以实现操作系统的访问控制,况且之前支持的有些硬件体系结构(比如Compaq
Alpha和Silicon Graphics MIPS)只实现了两个特权级。本篇所讨论的内核程序漏洞特指Ring0程序中的能被利用的bug或缺陷。
一般地,操作系统的内核程序、驱动程序等都是在Ring0级别上运行的。此外,很多安全软件、游戏软件、工具软件等第三方驱动程序,也会通过系统服务的方式在Ring0级别上运行。越来越多的病毒、木马、后门、恶意软件也有自己的驱动程序,想方设法的进入Ring0,以求提高自身的运行权限,与安全软件进行对抗。
时至今日,Ring0上运行的程序已经不再是单纯的系统内核,内核漏洞也不再是操作系统专属的问题,而是很多安全软件、游戏软件、工具软件等软件厂商共同需要面对的问题。
随着操作系统和安全软件的日益完善,在普通溢出漏洞难以奏效的情况下,容易被人忽略的内核漏洞往往可以作为突破安全防线的切入点。如果病毒木马加载了驱动或进入了Ring0,是否还能够实施有效的防御呢?这是一个很有趣的问题,因为对抗的双方都处在系统最高权限,我们称之为“内核PK”,也许这种PK能成为今后的一个研究热点。
研究内核漏洞,需要首先掌握一些内核基础知识,例如内核驱动程序的开发、编译和运行,内核中重要的数据结构等,后面几节将对这些内容做简单的介绍。
本文节选自《0day安全:软件漏洞分析技术(第2版)》一书。
图书详细信息: /article/5162595.html
相关文章推荐
- 探索ring0之内核概述
- 探索ring0之内核概述
- PHP内核探索:变量概述
- PHP内核探索 —— 变量概述:变量在PHP的内部如何实现
- PHP内核探索:变量概述
- PHP内核探索:变量概述
- 18.PHP内核探索:变量概述
- PHP内核探索:PHP脚本的执行细节
- PHP内核探索 —— 如何执行PHP脚本:Zend引擎是如何解释PHP脚本的
- PHP内核探索 —— 预定义变量:PHP脚本运行前将一些特殊变量加到符号表
- SQLSERVER内核架构剖析 (来探索数据库的架构思想)
- PHP内核探索之变量(6)- 后续内核探索系列大纲备忘
- php内核探索笔记-内存的申请与释放
- 探索Oracle之数据库升级一 升级补丁修复概述
- 探索WebKit内核(三)------ WebSocket
- 使用.NET进行高效率互联网敏捷开发的思考和探索【一、概述】
- [PHP内核探索]PHP中的哈希表
- Linux内核跟踪之ring buffer的实现
- Linux内核探索之路——关于方法
- PHP内核探索:Apache模块介绍