SlideShare a Scribd company logo
SCONE
Secure CONtainer Environment
Christof Fetzer, TU Dresden, Germany
CC0
1
MOTIVATION
application
serviceprovider
client client
Prevent unauthorized access 2
hardware
old days
firewall
data center
OBJECTIVE: PROTECT CONFIDENTIALITY & INTEGRITY
application
serviceprovider
client client
Prevent unauthorized access
3
hardware
today
application
cloud
client client
data center
ONLY ACADEMIC ISSUE?
https://arstechnica.com/security/2017/03/hack-that-escapes-vm-by-exploiting-edge-browser-fetches-105000-at-pwn2own/
windows

VMWare

hypervisor
bug in Windows 10
bug in VMware

Workstation
2017 hacking contest
application
Linux

4
GENERAL APPROACH
➤ „Firewall“ around the
application
➤ application-oriented
security
➤ Cloud-Native Applications
➤ set of microservices
5
APPROACH: APPLICATION-ORIENTED SECURITY
µservice … µservice µservice … µservice…
(cloud native) application
serviceprovider
client client
➤ Protect application
➤ integrity
➤ confidentiality
6
External API
DEFENDER’S DILEMMA
➤ Attackers:
➤ success by exploiting a
single vulnerability
➤ Defender:
➤ must protect against every
vulnerability
➤ not only in application
➤ millions of lines of source
code
CC0
cloud software stack
Hypervisor
Operating system
Application CloudStack
System libraries
Application libraries
MaaS
node
…
7
CLOUD SOFTWARE STACK
➤ Applications run on top of
software stack
➤ millions of lines of code
➤ Cloud stack consists of
➤ VM/container engine
➤ operating system
➤ hypervisor
➤ node management service
Linux: > 20 millions line
StefanPohl, CC0, https://commons.wikimedia.org/w/index.php?curid=41549243
https://www.openhub.net/p/openstack/analyses/latest/languages_summary
OpenStack
8
VULNERABILITIES
➤ Coverity reports:
➤ 1 defect per 1700 lines of code
➤ Kernel self protection project:
➤ 500 security bugs fixed in Linux during the last 5 years
➤ each bug stayed about 5 years inside kernel
➤ Coverity:
➤ quality of closed source software is not better than open
source software
[Coverity] Open Source Report 2014 - Coverity, go.coverity.com/rs/157-LQW.../2014-Coverity-Scan-Report.pdf
[KSPP] Kees Cook, The State of Kernel Self Protection Project, Linux Security Summit (LSS), 2016
9
APPLICATION-ORIENTED SECURITY
µservice µservice µservice … µservice
cloud-native application
trusted
client client
host
Operating system
Container Engine
Hypervisor
10
external API
internal API
µservice
host …
untrusted
APPLICATION PROTECTION
➤ Intel SGX protects
application’s
➤ confidentiality
➤ integrity
➤ by preventing accesses to
➤ application state
➤ encrypting main memory
Application
System libraries
Application libraries
Intel SGX enclave
ContainerEngine
SGX protects application from accesses

from outside
host
Operating system
Container Engine
Hypervisor
11
SGX PERFORMANCE
CPU
core core
core core
cache
plain text
Extended Page

Cache (EPC)
encrypted
90 MB
cache line cache line
page
main memory
encrypted
page
8MB
native speed slower slow!
paging
load
encrypted
12
SAME PROBLEM: BUGS!
➤ SGX:
➤ prevent accesses via
privileged / other software
➤ Smart adversary:
➤ will exploit bugs inside
application code
TEE
application
secret
external API
same address space
13
USE OF MICROSERVICES
14
µservice µservice
µservice µservice
µservice µservice
µservice µservice
µservice µservice
TEE
service
secretsecret
access only through
internal API
external API external API
same address space separate address spaces
PROTECTING MICROSERVICE APIS
µservice
external API
+type-safe programming languages
+ extra protection against attacks
secret
µservice
secret
internal API
+no access to internal APIs
+ intrusion detection by monitoring internal and external APIs
15
SCONE-BASED CLOUD-NATIVE APPLICATIONS
16
µ-service
closed membership
µ-service
cloud-native application
µ-service µ-service
TLS
client client
encrypted
file
encrypted
file
encrypted
file
encrypted
file
TLS
encrypted

files
TLS
external API
internal API
client client
TLS
HYBRID APPLICATIONS
17
µ-service
closed membership
µ-service
cloud-native application
µ-service µ-service
TLS
client client
encrypted
file
encrypted
file
encrypted
file
encrypted
file
TLS
encrypted

files
TLS
external API
internal API
client client
TLS
not all microservices are critical
standard container
secure container
CONTAINER WORKFLOW
- ease of use! -
CC0
18
CONTAINER WORKFLOW
19
service provider
extended

Dockerfile
custom
microservice
image
build
secure container
image
CONTAINER WORKFLOW
➤ SCONE cross compilers:
➤ C, C++
➤ Rust
➤ GO
➤ (Fortran)
➤ Docker
➤ to build, ship and deploy images
service provider
extended

Dockerfile
custom
microservice
image
build
SCONE cross
compiler
image
uses
secure container
image
20
CONTAINER WORKFLOW
microservice,
libraries
config files
build
curated
microservice
image
image curator
build
service provider
extended

Dockerfile
custom
microservice
image
21
DOCKER HUB
22
hub.docker.com/explore
…
SCONE CURATED IMAGES (WORK IN PROGRESS)
23
nginx SCONE image
hub.docker.com/explore
…
redis SCONE image
mysql SCONE image
mongo SCONE image
SCONE images are shielded and tuned for SGX
CONTAINER WORKFLOW
microservice,
libraries
config files
build
curated
microservice
image
image curator
24
service provider
extended

Dockerfile
custom
microservice
image
container
container
container
container
containersecure
container
application
service provider stack file
deploy
==
customize
build
development
operations
SERVICE PROVIDER VS CLOUD PROVIDER
25
Operating system
µ-service
SGX
microservices deployed inside of secure containers
host/VM
Operating system
host/VM
Operating system
host/VM
…
…
MaaS/ 

IaaS
CaaS
Container Engine Container Engine Container Engine
…
Container Swarm
untrusted
cloudproviderserviceprovider
untrusted
µ-service
SGX
cloud-native applicationintegrity & confidentiality
µ-service
SGX
… µ-service
SGX
availability
COMPOSE EXAMPLE
26
HOW TO DISTRIBUTE SECRETS?
➤ State of the art:
➤ put passwords in stack /
compose file
➤ Problem:
➤ Docker engine is not
trusted
mysql-master:
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: messenger
tty: true
tty-key: mysecret
image: mysql
MRENCLAVE: 0x3394940494
FSPFKEY: topsecret
stdin_open: true
Bad practice to put secrets in compose file! 27
EXAMPLE: MYSQL
mysql-master:
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: messenger
tty: true
tty-key: mysecret
image: mysql
MRENCLAVE: 0x3394940494
FSPFKEY: topsecret
stdin_open: true
mysql-master:
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: messenger
tty-key: mysecret
MRENCLAVE: 0x3394940494
FSPFKEY: topsecret
mysql-master:
environment:
APPID: 012345
tty: true
image: mysql
stdin_open: true
secrets
no-secrets
split
DOCKER
SCONE
SCONE: SPLIT STACK / COMPOSE FILE
container
containersecure
container
service
stack file
deploy
==
29
split
secure config
stack file
secrets
no secrets
get(sig_CPU)
CAS
Configuration & Attestation
Service
configurationTLS
PROBLEMS?
➤ Stack file
➤ secrets are in the clear
➤ Problems:
➤ service administrators
might leave company
➤ access to secrets by root
➤ Approach:
➤ delegate keys to key store
like vault
mysql-master:
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: messenger
tty: true
tty-key: mysecret
image: mysql
MRENCLAVE: 0x3394940494
FSPFKEY: topsecret
stdin_open: true
30
APPROACH: RETRIEVE SECRETS FROM VAULT
container
containersecure
container
service
stack file
deploy
==
31
split
secure config
stack file
secrets
no secrets
pull
CAS
pull
Vault
HashiCorp’s
enclaved
enclaved
EXAMPLE: INTEGRATION WITH VAULTmysql-master:
environment:
MYSQL_ROOT_PASSWORD: $mysql_root_pw
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: $messenger_pw
tty: true
tty-key: $tty_key
image: mysql
MRENCLAVE: 0x3394940494
FSPFKEY: $fspfkey
secrets:
mysql_root_pw:
vault: ascii
messenger_pw:
vault: ascii
tty_key:
vault: AES256
fspfkey:
vault: AES256
mysql-master:
environment:
APPID: 012345
tty: true
image: mysql
no secrets
no-secrets
environment:
MYSQL_ROOT_PASSWORD: xU0932hd…
MYSQL_DATABASE: messenger
MYSQL_USER: messenger
MYSQL_PASSWORD: 9S3jDh1…
tty-key: 0AF1B…
MRENCLAVE: 0x3394940494
FSPFKEY: 3HDJejh… secrets
split
extended stack file
config file
DOCKER
PERFORMANCE
SGX impact
CC0
33
SCONE
➤ Performance optimisations:
➤ asynchronous interface: minimise enclave exits
➤ syscalls executed by external threads
➤ TLS extensions (new)
➤ support pre-encrypted memory blocks
➤ Autotuner (new)
➤ find „optimal“ values for tuning parameters
34
Memcached Throughput
35
Latency(milliseconds)
0
0,75
1,5
2,25
3
Throughput (operations / second)
0 75000 150000 225000 300000
glibc + stunnel
async
sync
inline encryption has less
overhead than TLS proxy
1.2×
•YCSB workload A (50/50)
•Data fits into EPC
TLS API
Memcached CPU
36
CPUUtilization(%)
0
200
400
600
800
Throughput (operations / second)
0 75000 150000 225000 300000
glibc + stunnel
async
sync
TLS API
Redis Throughput
37
Latency(milliseconds)
0
1
2
3
4
Throughput (operations / second)
0 50000 100000 150000 200000
glibc + stunnel
async
sync 0.2×
0.6×
TLS API
Performance Overview
38
Application Throughput w.r.t. native
async (%) sync (%)
Memcached 120 113
Apache 80 70
NGINX 80 36
Redis 60 20
inline encryption
has less overhead
inline encryption
hurts performance
with single thread
Performance Improvement
39
Application Throughput w.r.t. native
async (%) sync (%)
Memcached 120 113
Apache 80 70
NGINX 80 36
Redis >80? 20
current work:
TLS offloading
SCONE SUMMARY
➤ ease of use:
➤ look and feel like Docker
➤ security:
➤ based on Intel SGX
➤ compiler extensions (bounds checker, limit accesses)
➤ performance reasonable (as long as microservice fits in EPC)
➤ combine with horizontal scaling if needed
➤ practical approach
➤ note: Intel SGX EPC will increase next year…
40
ADVERTISEMENT
➤ If you want to evaluate SCONE:
➤ now: SCONE cross compilers
➤ June: extended Docker compose
➤ I’m looking
➤ for PhD students and PostDocs
➤ for developers who want to join a SCONE startup
➤ Check out the SCONE documentation
41
➤ christof.fetzer@gmail.com
docker	pull	sconecuratedimages/sconedocu	
docker	run	-d	-p	8080:80		sconecuratedimages/sconedocu	
open	http://127.0.0.1:8080
CC0
docker	pull	sconecuratedimages/sconedocu	
docker	run	-d	-p	8080:80		sconecuratedimages/sconedocu	
open	http://127.0.0.1:8080
42

More Related Content

What's hot

Content Security Policy - Lessons learned at Yahoo
Content Security Policy - Lessons learned at YahooContent Security Policy - Lessons learned at Yahoo
Content Security Policy - Lessons learned at Yahoo
Binu Ramakrishnan
 
A Scalable Client Authentication & Authorization Service for Container-Based ...
A Scalable Client Authentication & Authorization Service for Container-Based ...A Scalable Client Authentication & Authorization Service for Container-Based ...
A Scalable Client Authentication & Authorization Service for Container-Based ...
Binu Ramakrishnan
 
Getting Single Page Application Security Right
Getting Single Page Application Security RightGetting Single Page Application Security Right
Getting Single Page Application Security Right
Philippe De Ryck
 
TRITON: The Next Generation of ICS Malware
TRITON: The Next Generation of ICS MalwareTRITON: The Next Generation of ICS Malware
TRITON: The Next Generation of ICS Malware
Thomas Roccia
 
The Unexpected Attack Vector: Software Updaters
The Unexpected Attack Vector: Software UpdatersThe Unexpected Attack Vector: Software Updaters
The Unexpected Attack Vector: Software Updaters
Priyanka Aash
 
Avoiding damage, shame and regrets data protection for mobile client-server a...
Avoiding damage, shame and regrets data protection for mobile client-server a...Avoiding damage, shame and regrets data protection for mobile client-server a...
Avoiding damage, shame and regrets data protection for mobile client-server a...
Stanfy
 
BlueHat v17 || Mitigations for the Masses: From EMET to Windows Defender Exp...
BlueHat v17 ||  Mitigations for the Masses: From EMET to Windows Defender Exp...BlueHat v17 ||  Mitigations for the Masses: From EMET to Windows Defender Exp...
BlueHat v17 || Mitigations for the Masses: From EMET to Windows Defender Exp...
BlueHat Security Conference
 
Understanding Windows Access Token Manipulation
Understanding Windows Access Token ManipulationUnderstanding Windows Access Token Manipulation
Understanding Windows Access Token Manipulation
Justin Bui
 
BlueHat v17 || Securing Windows Defender Application Guard
BlueHat v17 || Securing Windows Defender Application Guard BlueHat v17 || Securing Windows Defender Application Guard
BlueHat v17 || Securing Windows Defender Application Guard
BlueHat Security Conference
 
SVILUPPO WEB E SICUREZZA NEL 2014
SVILUPPO WEB E SICUREZZA NEL 2014SVILUPPO WEB E SICUREZZA NEL 2014
SVILUPPO WEB E SICUREZZA NEL 2014
Massimo Chirivì
 
Adaptive Defense - Understanding Cyber Attacks
Adaptive Defense - Understanding Cyber AttacksAdaptive Defense - Understanding Cyber Attacks
Adaptive Defense - Understanding Cyber Attacks
Jermund Ottermo
 
SSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOSSSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOS
Anant Shrivastava
 
Online Authentication
Online AuthenticationOnline Authentication
Online Authentication
Marc-Andre Heroux
 
Testing Android Security Codemotion Amsterdam edition
Testing Android Security Codemotion Amsterdam editionTesting Android Security Codemotion Amsterdam edition
Testing Android Security Codemotion Amsterdam edition
Jose Manuel Ortega Candel
 
Securing the Web @DevDay Da Nang 2018
Securing the Web @DevDay Da Nang 2018Securing the Web @DevDay Da Nang 2018
Securing the Web @DevDay Da Nang 2018
Sumanth Damarla
 
What's New in Kubernetes 1.18 Webinar Slides
What's New in Kubernetes 1.18 Webinar SlidesWhat's New in Kubernetes 1.18 Webinar Slides
What's New in Kubernetes 1.18 Webinar Slides
Mirantis
 
What you need to know about ExPetr ransomware
What you need to know about ExPetr ransomwareWhat you need to know about ExPetr ransomware
What you need to know about ExPetr ransomware
Kaspersky
 
Securing TodoMVC Using the Web Cryptography API
Securing TodoMVC Using the Web Cryptography APISecuring TodoMVC Using the Web Cryptography API
Securing TodoMVC Using the Web Cryptography API
Kevin Hakanson
 
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
Igalia
 
Developer's Guide to JavaScript and Web Cryptography
Developer's Guide to JavaScript and Web CryptographyDeveloper's Guide to JavaScript and Web Cryptography
Developer's Guide to JavaScript and Web Cryptography
Kevin Hakanson
 

What's hot (20)

Content Security Policy - Lessons learned at Yahoo
Content Security Policy - Lessons learned at YahooContent Security Policy - Lessons learned at Yahoo
Content Security Policy - Lessons learned at Yahoo
 
A Scalable Client Authentication & Authorization Service for Container-Based ...
A Scalable Client Authentication & Authorization Service for Container-Based ...A Scalable Client Authentication & Authorization Service for Container-Based ...
A Scalable Client Authentication & Authorization Service for Container-Based ...
 
Getting Single Page Application Security Right
Getting Single Page Application Security RightGetting Single Page Application Security Right
Getting Single Page Application Security Right
 
TRITON: The Next Generation of ICS Malware
TRITON: The Next Generation of ICS MalwareTRITON: The Next Generation of ICS Malware
TRITON: The Next Generation of ICS Malware
 
The Unexpected Attack Vector: Software Updaters
The Unexpected Attack Vector: Software UpdatersThe Unexpected Attack Vector: Software Updaters
The Unexpected Attack Vector: Software Updaters
 
Avoiding damage, shame and regrets data protection for mobile client-server a...
Avoiding damage, shame and regrets data protection for mobile client-server a...Avoiding damage, shame and regrets data protection for mobile client-server a...
Avoiding damage, shame and regrets data protection for mobile client-server a...
 
BlueHat v17 || Mitigations for the Masses: From EMET to Windows Defender Exp...
BlueHat v17 ||  Mitigations for the Masses: From EMET to Windows Defender Exp...BlueHat v17 ||  Mitigations for the Masses: From EMET to Windows Defender Exp...
BlueHat v17 || Mitigations for the Masses: From EMET to Windows Defender Exp...
 
Understanding Windows Access Token Manipulation
Understanding Windows Access Token ManipulationUnderstanding Windows Access Token Manipulation
Understanding Windows Access Token Manipulation
 
BlueHat v17 || Securing Windows Defender Application Guard
BlueHat v17 || Securing Windows Defender Application Guard BlueHat v17 || Securing Windows Defender Application Guard
BlueHat v17 || Securing Windows Defender Application Guard
 
SVILUPPO WEB E SICUREZZA NEL 2014
SVILUPPO WEB E SICUREZZA NEL 2014SVILUPPO WEB E SICUREZZA NEL 2014
SVILUPPO WEB E SICUREZZA NEL 2014
 
Adaptive Defense - Understanding Cyber Attacks
Adaptive Defense - Understanding Cyber AttacksAdaptive Defense - Understanding Cyber Attacks
Adaptive Defense - Understanding Cyber Attacks
 
SSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOSSSL Pinning and Bypasses: Android and iOS
SSL Pinning and Bypasses: Android and iOS
 
Online Authentication
Online AuthenticationOnline Authentication
Online Authentication
 
Testing Android Security Codemotion Amsterdam edition
Testing Android Security Codemotion Amsterdam editionTesting Android Security Codemotion Amsterdam edition
Testing Android Security Codemotion Amsterdam edition
 
Securing the Web @DevDay Da Nang 2018
Securing the Web @DevDay Da Nang 2018Securing the Web @DevDay Da Nang 2018
Securing the Web @DevDay Da Nang 2018
 
What's New in Kubernetes 1.18 Webinar Slides
What's New in Kubernetes 1.18 Webinar SlidesWhat's New in Kubernetes 1.18 Webinar Slides
What's New in Kubernetes 1.18 Webinar Slides
 
What you need to know about ExPetr ransomware
What you need to know about ExPetr ransomwareWhat you need to know about ExPetr ransomware
What you need to know about ExPetr ransomware
 
Securing TodoMVC Using the Web Cryptography API
Securing TodoMVC Using the Web Cryptography APISecuring TodoMVC Using the Web Cryptography API
Securing TodoMVC Using the Web Cryptography API
 
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
HTTPS: Achievements, Challenges, and Epiphany (Web Engines Hackfest 2015)
 
Developer's Guide to JavaScript and Web Cryptography
Developer's Guide to JavaScript and Web CryptographyDeveloper's Guide to JavaScript and Web Cryptography
Developer's Guide to JavaScript and Web Cryptography
 

Viewers also liked

DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der SoftwareentwicklungDevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
DevDay Dresden
 
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay Dresden
 
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
DevDay Dresden
 
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
DevDay Dresden
 
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuernDevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
DevDay Dresden
 
DevDay 2017: Daniel Meixner - Von 0 auf DevOps
DevDay 2017: Daniel Meixner - Von 0 auf DevOpsDevDay 2017: Daniel Meixner - Von 0 auf DevOps
DevDay 2017: Daniel Meixner - Von 0 auf DevOps
DevDay Dresden
 
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
DevDay Dresden
 
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay Dresden
 
DevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend MonolithDevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend Monolith
DevDay Dresden
 

Viewers also liked (9)

DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der SoftwareentwicklungDevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
DevDay 2017: Ulrich Deiters - Empathie und Sympathie in der Softwareentwicklung
 
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
DevDay 2017: Johannes Nicolai - How GitHub uses GitHub to design, develop and...
 
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
DevDay 2017: Karen Otte - Augmented Medicine - On Using Kinect and Hololens i...
 
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
DevDay 2017: Daniel Trautmann - Mythos DevOps: Development versus Operations?
 
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuernDevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
DevDay 2017: Marc Rohlfs - Maven-Projekte mit Gitflow über Jenkins steuern
 
DevDay 2017: Daniel Meixner - Von 0 auf DevOps
DevDay 2017: Daniel Meixner - Von 0 auf DevOpsDevDay 2017: Daniel Meixner - Von 0 auf DevOps
DevDay 2017: Daniel Meixner - Von 0 auf DevOps
 
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
DevDay 2017: Andreas Reischuck - Benutzbare & Sichere Kommunikation für die v...
 
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
DevDay 2017: Ralf Knobloch - "Einfacher leben mit DevOps bei der MMS !!" - De...
 
DevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend MonolithDevDay 2017: Bert Radke - Der Frontend Monolith
DevDay 2017: Bert Radke - Der Frontend Monolith
 

Similar to DevDay 2017: Christof Fetzer - SCONE: Secure Linux Container Environments with Intel SGX

Secure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous DeliverySecure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous Delivery
Tim Mackey
 
Secure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous DeliverySecure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous Delivery
Black Duck by Synopsys
 
Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018
Paula Januszkiewicz
 
Sharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8sSharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8s
Jose Manuel Ortega Candel
 
Serverless security: defense against the dark arts
Serverless security: defense against the dark artsServerless security: defense against the dark arts
Serverless security: defense against the dark arts
Yan Cui
 
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
Soya Aoyama
 
Secure coding presentation Oct 3 2020
Secure coding presentation Oct 3 2020Secure coding presentation Oct 3 2020
Secure coding presentation Oct 3 2020
Moataz Kamel
 
stackconf 2022: Minimum Viable Security for Cloud Native Stacks
stackconf 2022: Minimum Viable Security for Cloud Native Stacksstackconf 2022: Minimum Viable Security for Cloud Native Stacks
stackconf 2022: Minimum Viable Security for Cloud Native Stacks
NETWAYS
 
Internal penetration test_hitchhackers_guide
Internal penetration test_hitchhackers_guideInternal penetration test_hitchhackers_guide
Internal penetration test_hitchhackers_guide
Darin Fredde
 
Ransomware: Mitigation Through Preparation
Ransomware: Mitigation Through PreparationRansomware: Mitigation Through Preparation
Ransomware: Mitigation Through Preparation
Hostway|HOSTING
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
Black Duck by Synopsys
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
Tim Mackey
 
Trend Micro VForum Agentless Scanning Presentation
Trend Micro VForum Agentless Scanning PresentationTrend Micro VForum Agentless Scanning Presentation
Trend Micro VForum Agentless Scanning PresentationGraeme Wood
 
Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!
Michael Man
 
BYOIDaaS - Automating IAM Infrastructure & Operations
BYOIDaaS - Automating IAM Infrastructure & OperationsBYOIDaaS - Automating IAM Infrastructure & Operations
BYOIDaaS - Automating IAM Infrastructure & Operations
Jon Lehtinen
 
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
MSHOWTO Bilisim Toplulugu
 
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdftheVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
Gabriel Mathenge
 
F-Secure E-mail and Server Security
F-Secure E-mail and Server SecurityF-Secure E-mail and Server Security
F-Secure E-mail and Server Security
F-Secure Corporation
 
What is needed in the next generation cloud trusted platform ?
What is needed in the next generation cloud trusted platform ?What is needed in the next generation cloud trusted platform ?
What is needed in the next generation cloud trusted platform ?
Priyanka Aash
 
CredHub and Secure Credential Management
CredHub and Secure Credential ManagementCredHub and Secure Credential Management
CredHub and Secure Credential Management
VMware Tanzu
 

Similar to DevDay 2017: Christof Fetzer - SCONE: Secure Linux Container Environments with Intel SGX (20)

Secure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous DeliverySecure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous Delivery
 
Secure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous DeliverySecure Application Development in the Age of Continuous Delivery
Secure Application Development in the Age of Continuous Delivery
 
Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018Gartner Security & Risk Management Summit 2018
Gartner Security & Risk Management Summit 2018
 
Sharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8sSharing secret keys in Docker containers and K8s
Sharing secret keys in Docker containers and K8s
 
Serverless security: defense against the dark arts
Serverless security: defense against the dark artsServerless security: defense against the dark arts
Serverless security: defense against the dark arts
 
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
An inconvenient truth: Evading the Ransomware Protection in windows 10 @ Hack...
 
Secure coding presentation Oct 3 2020
Secure coding presentation Oct 3 2020Secure coding presentation Oct 3 2020
Secure coding presentation Oct 3 2020
 
stackconf 2022: Minimum Viable Security for Cloud Native Stacks
stackconf 2022: Minimum Viable Security for Cloud Native Stacksstackconf 2022: Minimum Viable Security for Cloud Native Stacks
stackconf 2022: Minimum Viable Security for Cloud Native Stacks
 
Internal penetration test_hitchhackers_guide
Internal penetration test_hitchhackers_guideInternal penetration test_hitchhackers_guide
Internal penetration test_hitchhackers_guide
 
Ransomware: Mitigation Through Preparation
Ransomware: Mitigation Through PreparationRansomware: Mitigation Through Preparation
Ransomware: Mitigation Through Preparation
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
 
Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...Using hypervisor and container technology to increase datacenter security pos...
Using hypervisor and container technology to increase datacenter security pos...
 
Trend Micro VForum Agentless Scanning Presentation
Trend Micro VForum Agentless Scanning PresentationTrend Micro VForum Agentless Scanning Presentation
Trend Micro VForum Agentless Scanning Presentation
 
Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!Continuous Security: From tins to containers - now what!
Continuous Security: From tins to containers - now what!
 
BYOIDaaS - Automating IAM Infrastructure & Operations
BYOIDaaS - Automating IAM Infrastructure & OperationsBYOIDaaS - Automating IAM Infrastructure & Operations
BYOIDaaS - Automating IAM Infrastructure & Operations
 
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
Windows Server 2016 ile İşlerinizi Daha Güvenli Gerçekleştirin!
 
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdftheVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
theVIVI-AD-Security-Workshop_AfricaHackon2019.pdf
 
F-Secure E-mail and Server Security
F-Secure E-mail and Server SecurityF-Secure E-mail and Server Security
F-Secure E-mail and Server Security
 
What is needed in the next generation cloud trusted platform ?
What is needed in the next generation cloud trusted platform ?What is needed in the next generation cloud trusted platform ?
What is needed in the next generation cloud trusted platform ?
 
CredHub and Secure Credential Management
CredHub and Secure Credential ManagementCredHub and Secure Credential Management
CredHub and Secure Credential Management
 

More from DevDay Dresden

The Architecture of Uncertainty - Kevlin Henney
The Architecture of Uncertainty - Kevlin HenneyThe Architecture of Uncertainty - Kevlin Henney
The Architecture of Uncertainty - Kevlin Henney
DevDay Dresden
 
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - AnwendungsmodernisierungDev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
DevDay Dresden
 
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-ProjektenTobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
DevDay Dresden
 
Andreas Roth - GraphQL erfolgreich im Backend einsetzen
Andreas Roth - GraphQL erfolgreich im Backend einsetzenAndreas Roth - GraphQL erfolgreich im Backend einsetzen
Andreas Roth - GraphQL erfolgreich im Backend einsetzen
DevDay Dresden
 
Alexander Reelsen - Seccomp for Developers
Alexander Reelsen - Seccomp for DevelopersAlexander Reelsen - Seccomp for Developers
Alexander Reelsen - Seccomp for Developers
DevDay Dresden
 
DevDay 19 Accessibility: Praxistipps für Entwickler
DevDay 19 Accessibility: Praxistipps für EntwicklerDevDay 19 Accessibility: Praxistipps für Entwickler
DevDay 19 Accessibility: Praxistipps für Entwickler
DevDay Dresden
 
Dev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
Dev Day 2019: Phillip Krenn – Aggregierte Logging PatternsDev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
Dev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
DevDay Dresden
 
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
DevDay Dresden
 
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
DevDay Dresden
 
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
DevDay Dresden
 
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
DevDay Dresden
 
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
DevDay Dresden
 
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
DevDay Dresden
 
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
DevDay Dresden
 
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-TeamsDev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
DevDay Dresden
 
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den RadverkehrDev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
DevDay Dresden
 
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
DevDay Dresden
 
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
DevDay Dresden
 
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
DevDay Dresden
 
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
DevDay Dresden
 

More from DevDay Dresden (20)

The Architecture of Uncertainty - Kevlin Henney
The Architecture of Uncertainty - Kevlin HenneyThe Architecture of Uncertainty - Kevlin Henney
The Architecture of Uncertainty - Kevlin Henney
 
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - AnwendungsmodernisierungDev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
 
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-ProjektenTobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
Tobias Nebel - Herausforderungen und Changen in Full-Stack-IoT-Projekten
 
Andreas Roth - GraphQL erfolgreich im Backend einsetzen
Andreas Roth - GraphQL erfolgreich im Backend einsetzenAndreas Roth - GraphQL erfolgreich im Backend einsetzen
Andreas Roth - GraphQL erfolgreich im Backend einsetzen
 
Alexander Reelsen - Seccomp for Developers
Alexander Reelsen - Seccomp for DevelopersAlexander Reelsen - Seccomp for Developers
Alexander Reelsen - Seccomp for Developers
 
DevDay 19 Accessibility: Praxistipps für Entwickler
DevDay 19 Accessibility: Praxistipps für EntwicklerDevDay 19 Accessibility: Praxistipps für Entwickler
DevDay 19 Accessibility: Praxistipps für Entwickler
 
Dev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
Dev Day 2019: Phillip Krenn – Aggregierte Logging PatternsDev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
Dev Day 2019: Phillip Krenn – Aggregierte Logging Patterns
 
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
Dev Day 2019: Mirko Seifert – Next Level Integration Testing mit Docker und T...
 
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
Dev Day 2019: Nathan Mattes – Kommunikation ist wichtig, scheiße wichtig und ...
 
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
Dev Day 2019: Stephan Birnbaum – Die Glaskugel hat ausgedient, wir machen Sof...
 
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
Dev Day 2019: Markus Winand – Die Mutter aller Abfragesprachen: SQL im 21. Ja...
 
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
Dev Day 2019: Kay Grebenstein – Wie wir müssen das noch testen? - design for ...
 
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
Dev Day 2019: Kathrin Friedrich/Michael Kunze – Design better together - Styl...
 
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
Dev Day 2019: Benjamin Wolf – "Some fixes" - Commit Message 101
 
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-TeamsDev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
Dev Day 2019: Lucas Fiedler – DevOps-Dashboard: Transparenz für DevOps-Teams
 
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den RadverkehrDev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
Dev Day 2019: Ulrich Deiters – Offene Daten und IT-Lösungen für den Radverkehr
 
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
Dev Day 2019: Alexander Lichter - JAMstack - Eine neuartige Webanwendungs-Arc...
 
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
Dev Day 2019: Martin Schurz - Manual Work Is A Bug!
 
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
Dev Day 2019: Stefan Schleyer: How to build an cloud-based IoT application“
 
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
Dev Day 2019: Mirko Zeibig – "Hallo " <> "Elixir"
 

Recently uploaded

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
Srikant77
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
IES VE
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 

Recently uploaded (20)

May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
RISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent EnterpriseRISE with SAP and Journey to the Intelligent Enterprise
RISE with SAP and Journey to the Intelligent Enterprise
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 

DevDay 2017: Christof Fetzer - SCONE: Secure Linux Container Environments with Intel SGX

  • 1. SCONE Secure CONtainer Environment Christof Fetzer, TU Dresden, Germany CC0 1
  • 2. MOTIVATION application serviceprovider client client Prevent unauthorized access 2 hardware old days firewall data center
  • 3. OBJECTIVE: PROTECT CONFIDENTIALITY & INTEGRITY application serviceprovider client client Prevent unauthorized access 3 hardware today application cloud client client data center
  • 5. GENERAL APPROACH ➤ „Firewall“ around the application ➤ application-oriented security ➤ Cloud-Native Applications ➤ set of microservices 5
  • 6. APPROACH: APPLICATION-ORIENTED SECURITY µservice … µservice µservice … µservice… (cloud native) application serviceprovider client client ➤ Protect application ➤ integrity ➤ confidentiality 6 External API
  • 7. DEFENDER’S DILEMMA ➤ Attackers: ➤ success by exploiting a single vulnerability ➤ Defender: ➤ must protect against every vulnerability ➤ not only in application ➤ millions of lines of source code CC0 cloud software stack Hypervisor Operating system Application CloudStack System libraries Application libraries MaaS node … 7
  • 8. CLOUD SOFTWARE STACK ➤ Applications run on top of software stack ➤ millions of lines of code ➤ Cloud stack consists of ➤ VM/container engine ➤ operating system ➤ hypervisor ➤ node management service Linux: > 20 millions line StefanPohl, CC0, https://commons.wikimedia.org/w/index.php?curid=41549243 https://www.openhub.net/p/openstack/analyses/latest/languages_summary OpenStack 8
  • 9. VULNERABILITIES ➤ Coverity reports: ➤ 1 defect per 1700 lines of code ➤ Kernel self protection project: ➤ 500 security bugs fixed in Linux during the last 5 years ➤ each bug stayed about 5 years inside kernel ➤ Coverity: ➤ quality of closed source software is not better than open source software [Coverity] Open Source Report 2014 - Coverity, go.coverity.com/rs/157-LQW.../2014-Coverity-Scan-Report.pdf [KSPP] Kees Cook, The State of Kernel Self Protection Project, Linux Security Summit (LSS), 2016 9
  • 10. APPLICATION-ORIENTED SECURITY µservice µservice µservice … µservice cloud-native application trusted client client host Operating system Container Engine Hypervisor 10 external API internal API µservice host … untrusted
  • 11. APPLICATION PROTECTION ➤ Intel SGX protects application’s ➤ confidentiality ➤ integrity ➤ by preventing accesses to ➤ application state ➤ encrypting main memory Application System libraries Application libraries Intel SGX enclave ContainerEngine SGX protects application from accesses
 from outside host Operating system Container Engine Hypervisor 11
  • 12. SGX PERFORMANCE CPU core core core core cache plain text Extended Page
 Cache (EPC) encrypted 90 MB cache line cache line page main memory encrypted page 8MB native speed slower slow! paging load encrypted 12
  • 13. SAME PROBLEM: BUGS! ➤ SGX: ➤ prevent accesses via privileged / other software ➤ Smart adversary: ➤ will exploit bugs inside application code TEE application secret external API same address space 13
  • 14. USE OF MICROSERVICES 14 µservice µservice µservice µservice µservice µservice µservice µservice µservice µservice TEE service secretsecret access only through internal API external API external API same address space separate address spaces
  • 15. PROTECTING MICROSERVICE APIS µservice external API +type-safe programming languages + extra protection against attacks secret µservice secret internal API +no access to internal APIs + intrusion detection by monitoring internal and external APIs 15
  • 16. SCONE-BASED CLOUD-NATIVE APPLICATIONS 16 µ-service closed membership µ-service cloud-native application µ-service µ-service TLS client client encrypted file encrypted file encrypted file encrypted file TLS encrypted
 files TLS external API internal API client client TLS
  • 17. HYBRID APPLICATIONS 17 µ-service closed membership µ-service cloud-native application µ-service µ-service TLS client client encrypted file encrypted file encrypted file encrypted file TLS encrypted
 files TLS external API internal API client client TLS not all microservices are critical standard container secure container
  • 18. CONTAINER WORKFLOW - ease of use! - CC0 18
  • 20. CONTAINER WORKFLOW ➤ SCONE cross compilers: ➤ C, C++ ➤ Rust ➤ GO ➤ (Fortran) ➤ Docker ➤ to build, ship and deploy images service provider extended
 Dockerfile custom microservice image build SCONE cross compiler image uses secure container image 20
  • 21. CONTAINER WORKFLOW microservice, libraries config files build curated microservice image image curator build service provider extended
 Dockerfile custom microservice image 21
  • 23. SCONE CURATED IMAGES (WORK IN PROGRESS) 23 nginx SCONE image hub.docker.com/explore … redis SCONE image mysql SCONE image mongo SCONE image SCONE images are shielded and tuned for SGX
  • 24. CONTAINER WORKFLOW microservice, libraries config files build curated microservice image image curator 24 service provider extended
 Dockerfile custom microservice image container container container container containersecure container application service provider stack file deploy == customize build development operations
  • 25. SERVICE PROVIDER VS CLOUD PROVIDER 25 Operating system µ-service SGX microservices deployed inside of secure containers host/VM Operating system host/VM Operating system host/VM … … MaaS/ 
 IaaS CaaS Container Engine Container Engine Container Engine … Container Swarm untrusted cloudproviderserviceprovider untrusted µ-service SGX cloud-native applicationintegrity & confidentiality µ-service SGX … µ-service SGX availability
  • 27. HOW TO DISTRIBUTE SECRETS? ➤ State of the art: ➤ put passwords in stack / compose file ➤ Problem: ➤ Docker engine is not trusted mysql-master: environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: messenger tty: true tty-key: mysecret image: mysql MRENCLAVE: 0x3394940494 FSPFKEY: topsecret stdin_open: true Bad practice to put secrets in compose file! 27
  • 28. EXAMPLE: MYSQL mysql-master: environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: messenger tty: true tty-key: mysecret image: mysql MRENCLAVE: 0x3394940494 FSPFKEY: topsecret stdin_open: true mysql-master: environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: messenger tty-key: mysecret MRENCLAVE: 0x3394940494 FSPFKEY: topsecret mysql-master: environment: APPID: 012345 tty: true image: mysql stdin_open: true secrets no-secrets split DOCKER SCONE
  • 29. SCONE: SPLIT STACK / COMPOSE FILE container containersecure container service stack file deploy == 29 split secure config stack file secrets no secrets get(sig_CPU) CAS Configuration & Attestation Service configurationTLS
  • 30. PROBLEMS? ➤ Stack file ➤ secrets are in the clear ➤ Problems: ➤ service administrators might leave company ➤ access to secrets by root ➤ Approach: ➤ delegate keys to key store like vault mysql-master: environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: messenger tty: true tty-key: mysecret image: mysql MRENCLAVE: 0x3394940494 FSPFKEY: topsecret stdin_open: true 30
  • 31. APPROACH: RETRIEVE SECRETS FROM VAULT container containersecure container service stack file deploy == 31 split secure config stack file secrets no secrets pull CAS pull Vault HashiCorp’s enclaved enclaved
  • 32. EXAMPLE: INTEGRATION WITH VAULTmysql-master: environment: MYSQL_ROOT_PASSWORD: $mysql_root_pw MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: $messenger_pw tty: true tty-key: $tty_key image: mysql MRENCLAVE: 0x3394940494 FSPFKEY: $fspfkey secrets: mysql_root_pw: vault: ascii messenger_pw: vault: ascii tty_key: vault: AES256 fspfkey: vault: AES256 mysql-master: environment: APPID: 012345 tty: true image: mysql no secrets no-secrets environment: MYSQL_ROOT_PASSWORD: xU0932hd… MYSQL_DATABASE: messenger MYSQL_USER: messenger MYSQL_PASSWORD: 9S3jDh1… tty-key: 0AF1B… MRENCLAVE: 0x3394940494 FSPFKEY: 3HDJejh… secrets split extended stack file config file DOCKER
  • 34. SCONE ➤ Performance optimisations: ➤ asynchronous interface: minimise enclave exits ➤ syscalls executed by external threads ➤ TLS extensions (new) ➤ support pre-encrypted memory blocks ➤ Autotuner (new) ➤ find „optimal“ values for tuning parameters 34
  • 35. Memcached Throughput 35 Latency(milliseconds) 0 0,75 1,5 2,25 3 Throughput (operations / second) 0 75000 150000 225000 300000 glibc + stunnel async sync inline encryption has less overhead than TLS proxy 1.2× •YCSB workload A (50/50) •Data fits into EPC TLS API
  • 36. Memcached CPU 36 CPUUtilization(%) 0 200 400 600 800 Throughput (operations / second) 0 75000 150000 225000 300000 glibc + stunnel async sync TLS API
  • 37. Redis Throughput 37 Latency(milliseconds) 0 1 2 3 4 Throughput (operations / second) 0 50000 100000 150000 200000 glibc + stunnel async sync 0.2× 0.6× TLS API
  • 38. Performance Overview 38 Application Throughput w.r.t. native async (%) sync (%) Memcached 120 113 Apache 80 70 NGINX 80 36 Redis 60 20 inline encryption has less overhead inline encryption hurts performance with single thread
  • 39. Performance Improvement 39 Application Throughput w.r.t. native async (%) sync (%) Memcached 120 113 Apache 80 70 NGINX 80 36 Redis >80? 20 current work: TLS offloading
  • 40. SCONE SUMMARY ➤ ease of use: ➤ look and feel like Docker ➤ security: ➤ based on Intel SGX ➤ compiler extensions (bounds checker, limit accesses) ➤ performance reasonable (as long as microservice fits in EPC) ➤ combine with horizontal scaling if needed ➤ practical approach ➤ note: Intel SGX EPC will increase next year… 40
  • 41. ADVERTISEMENT ➤ If you want to evaluate SCONE: ➤ now: SCONE cross compilers ➤ June: extended Docker compose ➤ I’m looking ➤ for PhD students and PostDocs ➤ for developers who want to join a SCONE startup ➤ Check out the SCONE documentation 41 ➤ christof.fetzer@gmail.com docker pull sconecuratedimages/sconedocu docker run -d -p 8080:80 sconecuratedimages/sconedocu open http://127.0.0.1:8080