As the operating system is the bottom layer of software supporting all the services used by applications its security is fundamental and a recent paper makes a case for the importance of the OS in a secure system.
As the operating system is the bottom layer of software supporting all the services used by applications its security is fundamental. A recent paper makes a case for the importance of the OS in a secure system [Los00]. Systems architecture Most OSs are built using the multilayer pattern [Bus96]. The lowest level layer is the kernel, which normally includes process and memory management. A security kernel overlaps most of the functions of the OS kernel but includes only security-related functions: • Process creation, destruction, and domain switching • Memory protection • I/O functions A security kernel is a combination of hardware and software that implements the concept of reference monitor [Ame83]. Utilities are usually the weakest parts of the OS. Most of the reported attacks happen there. A good architectural concept to implement isolation is the use of virtual machines [Sum97]. Each VM runs in a virtual copy of the hardware and is separated from other VMs by the hardware. In this way each VM could run a different OS. A Virtual Machine Monitor(VMM) acts as kernel for the complete system and is the only one with access to the real hardware. Privileged instructions in the VMs are intercepted by the VMM, which interprets them according to the OS running in the corresponding VM. User and system authentication This function is normally part of the OS. Typically it is based on passwords, which are considered a relatively weak approach (See Pfleeger, Section 6.5, and [Sta99], Chapter 15). More secure approaches use biometrics (fingerprints, retina scan, face contour, face recognition), which is also a more expensive approach. Authentication between network nodes must use some protocol as discussed in the chapter on network security. Process protection This is performed normally in collaboration with the hardware and we discussed it in Chapter 6.