Using kernel hypervisors to secure applications
📜 Abstract
The paper describes an approach for selectively controlling COTS components to provide robustness and security. Using the concept of a loadable module, “kernel hypervisors” have been implemented on a Linux kernel. These kernel hypervisors provide unbypassable security wrappers for application specific security requirements and can be used to provide replication services as well. A framework has been developed based on a master kernel hypervisor whose job is to coordinate installation and removal of individual client kernel hypervisors and to provide a means for management of these clients. The framework allows client kernel hypervisors to be stacked so that a variety of application specific policies can be implemented, each by means of its own kernel hypervisor. The hypervisors run in the kernel, but since they are loadable modules, they do not require that the kernel be modified. Kernel hypervisors have a number of potential applications, including protecting user systems from malicious active content downloaded via a Web browser and wrapping servers and firewall services for limiting possible compromises.
✨ Summary
The paper introduced a Linux loadable-module mechanism for enforcing application-specific security policies through kernel-resident, non-bypassable wrappers. Its documented influence is primarily within subsequent research on software wrappers, sandboxing, and kernel-level security mediation. The work was cited as a precursor to generic software wrappers for hardening commercial off-the-shelf software, and the same research line was later extended in work on Linux kernel loadable wrappers. (researchgate.net) Later security research continued to cite the kernel-hypervisor approach when discussing kernel-level confinement and protection of applications from malicious or untrusted code. (scitepress.org)