fedora iot · moving to api for management, management apps/daemons will move to containers...

23
Peter Robinson Fedora IoT Overview of Security Direction Presented by Principal IoT Architect CC-BY-CA

Upload: others

Post on 17-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Peter Robinson

Fedora IoTOverview of Security Direction

Presented by

Principal IoT Architect

CC-BY-CA

Page 2: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Why are we different?

Minimal OS and Standard Enterprise practices

Userspace security tech - SELinux

OCI Containers

Secure-boot / TPM2

Secure credential storage

Integrity Measurement Architecture

Future enhancements overview

Overview

Page 3: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Why are we different?

Page 4: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

The devices look like enterprise devices

Need data centre level security without the DC

Real pirates are a real problem in IoT

Devices WILL be stolen, mitigate and minimize risk

All the security tech will be (is?) wanted in the data centre too, just not as high a priority as the latest Kubernetes

IoT should be driving security, not trailing it!

Why are we different?

Page 5: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Minimised OS

Page 6: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Reduced size Fedora using rpm-ostree

Ostree provides read-only root filesystem with atomic upgrades (and roll-back if necessary)

Not yet minimal enough

Work ongoing to untangle dependencies

Minimise the footprint you minimise the attack surface

Moving to API for management, management apps/daemons will move to containers

Minimised OS

Page 7: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Standard Enterprise practices

Page 8: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Use existing Enterprise understanding of Linux

Similar process for security management

Enterprise measures work fine

Expanded for IoT use cases and scale

Firmware updates via LVFS and fwupdmgr

“Keep the baby when discarding the bath water”

Standard practices

Page 9: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Userspace security technologies

Page 10: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

SELinux

Seccomp – enhancing ssh and others

CGroups – Moving to version 2 for F-31

namespaces

Systemd – using namespaces, seccomp etc to limit access, in some cases limiting or eliminating entire classes of vulnerabilities

Userspace security tech

Page 11: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

OCI Containers

Page 12: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

A means of containment

One troublesome or compromised application shouldn’t affect others

Update each app stack independently

Update base OS independently

Containers

Page 13: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Secure-boot / TPM2

Page 14: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Secure boot ensures trusted software is booted by the firmware in the boot chain

UEFI Secure boot ensures roll-back protection

TPM2 part of TSS 2.0 spec from Trusted Computing Group

TPM2 used to measure boot, store credentials

Both hardware and firmware implementations

Secure-boot / TPM2

Page 15: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Secure credential storage

Page 16: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Using TPM2 to store credentials in hardware

Encrypt root file system using clevis and tpm2* stack

Store network credentials in TPM2

Store random other credentials in TPM2 using clevis

Secure credential storage

Page 17: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Integrity Measurement Architecture

Page 18: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Integrity management architecture

Part of Linux kernel with user space tools

Initial IoT enforcing policy coming with F-31

Measures the userspace binaries and files for change

Attesting the boot and bits haven’t changed

Remote attestation that the bits haven’t changed

IMA

Page 19: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Future enhancements

Page 20: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Improvements to secure-boot

Enhancements for credential storage

Improved IMA policies and remote attestation

Run-time integrity and confidentiality of apps ensuring secure connectivity:

Enarx: now part of Confidential Computing Consortium, along side MS OpenEnclave

Announced today at Linux Security Summit

https://confidentialcomputing.io

Future enhancements

Page 21: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

https://xkcd.com/2166/

Secure apps in Enclaves

Page 22: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

http://enarx.io/

What is Enarx?

Page 23: Fedora IoT · Moving to API for management, management apps/daemons will move to containers Minimised OS. Standard Enterprise practices. Use existing Enterprise understanding of Linux

Questions?

CC-BY-SA

[email protected]: