genode - os security by designgenode.org/files/slides/genode_osio2014_slides.pdf · huge attack...

33
Genode - OS Security By Design Dr.-Ing. Norman Feske <[email protected]>

Upload: others

Post on 23-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Genode - OS Security By Design

Dr.-Ing. Norman Feske<[email protected]>

Page 2: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Outline

1. Introduction

2. Architectural Principles

3. Showcases

4. Current Topics

Genode - OS Security By Design 2

Page 3: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Outline

1. Introduction

2. Architectural Principles

3. Showcases

4. Current Topics

Genode - OS Security By Design 3

Page 4: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Universal Truths

Ease of useSecurity

Utilization

ScalabilityAssurance

Accountability

Genode - OS Security By Design 4

Page 5: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Problem: Complexity

Today’s commodity OSes Exceedingly complex trusted computingbase (TCB)

TCB of an application on Linux:

Kernel + loaded kernel modulesDaemonsX Server + window managerDesktop environmentAll running processes of the user

→ User credentials are exposed to millions of lines of code

Genode - OS Security By Design 5

Page 6: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Problem: Complexity (II)

Implications:

High likelihood for bugs (need for frequent security updates)Huge attack surface for directed attacksZero-day exploits

Genode - OS Security By Design 6

Page 7: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Universal Truths

Ease of useSecurity

Utilization

ScalabilityAssurance

Accountability

Genode - OS Security By Design 7

Page 8: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Problem: Resource management

Pretension of unlimited resourcesLack of accounting→ Largely indeterministic behavior→ Need for complex heuristics, schedulers

Genode - OS Security By Design 8

Page 9: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Universal Truths

Ease of useSecurity

Utilization

ScalabilityAssurance

Accountability

Genode - OS Security By Design 9

Page 10: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Key technologies

Microkernels

Componentization, kernelization

Capability-based security

Virtualization

...but how to compose those?

Genode - OS Security By Design 10

Page 11: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Genode architecture

→ Application-specific TCB

Genode - OS Security By Design 11

Page 12: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Combined with virtualization

Genode - OS Security By Design 12

Page 13: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 13

Page 14: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 14

Page 15: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 15

Page 16: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 16

Page 17: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 17

Page 18: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Components

Genode - OS Security By Design 18

Page 19: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Outline

1. Introduction

2. Architectural Principles

3. Showcases

4. Current Topics

Genode - OS Security By Design 19

Page 20: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Object capabilities

Delegation of authority between components

Each component lives in a virtual environmentA component that possesses a capability can

I Use it (invoke)I Delegate it to acquainted components

Genode - OS Security By Design 20

Page 21: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Recursive system structure

Genode - OS Security By Design 21

Page 22: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Service announcement

Genode - OS Security By Design 22

Page 23: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Session creation

Genode - OS Security By Design 23

Page 24: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Session creation

Genode - OS Security By Design 24

Page 25: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Resource management

Explicit assignment of physical resources to components

Genode - OS Security By Design 25

Page 26: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Resource management (II)

Resources can be attached to sessions

Genode - OS Security By Design 26

Page 27: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Outline

1. Introduction

2. Architectural Principles

3. Showcases

4. Current Topics

Genode - OS Security By Design 27

Page 28: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Faithful Virtualization

User Mode

Privileged ModeNOVA Hypervisor

Core

Init

Resource Multiplexer

UnmodifiedGuest OS

virtual CPU

virtual device

virtual RAM

VMMDevice Driver

Kernel

Genode - OS Security By Design 28

Page 29: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

OS-level Virtualization

Genode - OS Security By Design 29

Page 30: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Rich applications

Loader

Init

AroraWeb

Browser

Init

NitpickerGUI

TCP/IP

Menu

NitpickerGUI

Virtual FramebufferLaunchpad

Testnit

Genode - OS Security By Design 30

Page 31: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Outline

1. Introduction

2. Architectural Principles

3. Showcases

4. Current Topics

Genode - OS Security By Design 31

Page 32: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Current Topics

Eating our own dog food

I Noux (GCC, VIM, bash, coreutils...)I Wireless networking

Capability-based user interface

seL4 kernel as base platform

ARM Virtualization

Package management

Genode - OS Security By Design 32

Page 33: Genode - OS Security By Designgenode.org/files/slides/genode_osio2014_slides.pdf · Huge attack surface for directed attacks Zero-day exploits Genode - OS Security By Design6. Universal

Thank you

Genode OS Frameworkhttp://genode.org

Genode Labs GmbHhttp://www.genode-labs.com

Source code at GitHubhttp://github.com/genodelabs/genode

Genode - OS Security By Design 33