Privileged operation rings

Subversive Technologies & Countermeasures

Jump to: navigation, search
Development
Author Jason Todd
Information Informative article
Maturity Under developed, in need of user contributions
Status No disputes
Legend

The x86 microprocessors contains four hierarchical levels of privileged operation better known as rings. These rings are able to provide a hardware enforced method of segregation for software and memory access.

Contents

[edit] Hardware enforced access

The term x86 is used to refer to the Intel family and compatible microprocessors derived from the 8086 architecture. The CPU is designed to maintain as well as enforce software and memory access between rings. If software in a ring attempts to access data in a lower numbered ring the CPU will throw an interrupt to report the action. How the operating system responds to this interrupt depends on the OS and its configuration.

[edit] Privilege rings of the x86 CPU

Software running in ring 0 typically has full authority to modify, access, or change software or memory in ring 0 or any higher numbered ring. Kernel and other mission critical software will run in ring 0 with other user land and support software usually running in ring 3. This segregation of software allows a protective barrier between software that is considered mission critical to system stability and other noncritical support software. The net effect being that user land software could become corrupted and still be contained without contaminating kernel memory therefore preserving system stability and continued operation. The above is obviously an over simplification to give general concepts of privileged access.

  • Ring 0 - Kernel, device drivers
  • Ring 1 -
  • Ring 2 -
  • Ring 3 - User mode applications

Ring 3 being the least privileged and the most restrictive with ring 0 able to preform any operation on the CPU.

[edit] Security access

An Operating systems kernel uses these rings to enforce software and memory access on the system. The implication here being if software can run from ring 0 it will have the ability to access, modify, or circumvent any other software on the system at kernel level.

[edit] Transcending ring 3

[edit] Appendix

Personal tools