Salus: Kernel Support for Secure Process Compartments

Consumer devices are increasingly being used to perform security and privacy critical tasks. The software used to perform these tasks is often vulnerable to attacks, due to bugs in the application itself or in included software libraries. Recent work proposes the isolation of security-sensitive part...

Full description

Bibliographic Details
Main Authors: Raoul Strackx, Pieter Agten, Niels Avonds, Frank Piessens
Format: Article
Language:English
Published: European Alliance for Innovation (EAI) 2015-01-01
Series:EAI Endorsed Transactions on Security and Safety
Subjects:
Online Access:http://eudl.eu/doi/10.4108/sesa.2.3.e1
id doaj-e67f242c53a946ef8045216cbc66894f
record_format Article
spelling doaj-e67f242c53a946ef8045216cbc66894f2020-11-24T21:36:15ZengEuropean Alliance for Innovation (EAI)EAI Endorsed Transactions on Security and Safety2032-93932015-01-012311610.4108/sesa.2.3.e1Salus: Kernel Support for Secure Process CompartmentsRaoul Strackx0Pieter Agten1Niels Avonds2Frank Piessens3iMinds-DistriNet - KU Leuven, Celestijnenlaan 200A, 3001 Heverlee, Belgium; raoul.strackx@cs.kuleuven.beiMinds-DistriNet - KU Leuven, Celestijnenlaan 200A, 3001 Heverlee, BelgiumiMinds-DistriNet - KU Leuven, Celestijnenlaan 200A, 3001 Heverlee, BelgiumiMinds-DistriNet - KU Leuven, Celestijnenlaan 200A, 3001 Heverlee, BelgiumConsumer devices are increasingly being used to perform security and privacy critical tasks. The software used to perform these tasks is often vulnerable to attacks, due to bugs in the application itself or in included software libraries. Recent work proposes the isolation of security-sensitive parts of applications into protected modules, each of which can be accessed only through a predefined public interface. But most parts of an application can be considered security-sensitive at some level, and an attacker who is able to gain inapplication level access may be able to abuse services from protected modules. We propose Salus, a Linux kernel modification that provides a novel approach for partitioning processes into isolated compartments sharing the same address space. Salus significantly reduces the impact of insecure interfaces and vulnerable compartments by enabling compartments (1) to restrict the system calls they are allowed to perform, (2) to authenticate their callers and callees and (3) to enforce that they can only be accessed via unforgeable references. We describe the design of Salus, report on a prototype implementation and evaluate it in terms of security and performance. We show that Salus provides a significant security improvement with a low performance overhead, without relying on any non-standard hardware support.http://eudl.eu/doi/10.4108/sesa.2.3.e1Privilege separationprinciple of least privilegemodularization
collection DOAJ
language English
format Article
sources DOAJ
author Raoul Strackx
Pieter Agten
Niels Avonds
Frank Piessens
spellingShingle Raoul Strackx
Pieter Agten
Niels Avonds
Frank Piessens
Salus: Kernel Support for Secure Process Compartments
EAI Endorsed Transactions on Security and Safety
Privilege separation
principle of least privilege
modularization
author_facet Raoul Strackx
Pieter Agten
Niels Avonds
Frank Piessens
author_sort Raoul Strackx
title Salus: Kernel Support for Secure Process Compartments
title_short Salus: Kernel Support for Secure Process Compartments
title_full Salus: Kernel Support for Secure Process Compartments
title_fullStr Salus: Kernel Support for Secure Process Compartments
title_full_unstemmed Salus: Kernel Support for Secure Process Compartments
title_sort salus: kernel support for secure process compartments
publisher European Alliance for Innovation (EAI)
series EAI Endorsed Transactions on Security and Safety
issn 2032-9393
publishDate 2015-01-01
description Consumer devices are increasingly being used to perform security and privacy critical tasks. The software used to perform these tasks is often vulnerable to attacks, due to bugs in the application itself or in included software libraries. Recent work proposes the isolation of security-sensitive parts of applications into protected modules, each of which can be accessed only through a predefined public interface. But most parts of an application can be considered security-sensitive at some level, and an attacker who is able to gain inapplication level access may be able to abuse services from protected modules. We propose Salus, a Linux kernel modification that provides a novel approach for partitioning processes into isolated compartments sharing the same address space. Salus significantly reduces the impact of insecure interfaces and vulnerable compartments by enabling compartments (1) to restrict the system calls they are allowed to perform, (2) to authenticate their callers and callees and (3) to enforce that they can only be accessed via unforgeable references. We describe the design of Salus, report on a prototype implementation and evaluate it in terms of security and performance. We show that Salus provides a significant security improvement with a low performance overhead, without relying on any non-standard hardware support.
topic Privilege separation
principle of least privilege
modularization
url http://eudl.eu/doi/10.4108/sesa.2.3.e1
work_keys_str_mv AT raoulstrackx saluskernelsupportforsecureprocesscompartments
AT pieteragten saluskernelsupportforsecureprocesscompartments
AT nielsavonds saluskernelsupportforsecureprocesscompartments
AT frankpiessens saluskernelsupportforsecureprocesscompartments
_version_ 1725942246418677760