SlideShare a Scribd company logo
@estesp
IT’S 2018.
ARE MY CONTAINERS
SECURE YET?!
DevOps Pro Vilnius
@estesp
HELLO!
2
Phil Estes
> Office of the CTO, IBM Cloud
> Docker Captain
> Docker engine contributor
> Containerd and Moby Project
maintainer
@estesp
1.
A BRIEF OVERVIEW
Easing into containers: the what and why of security
3
@estesp
CONTAINERS AREN’T REAL (@jessfraz)
◈ Containers on Linux are an assembly of Linux kernel
isolation features
◈ These features have been developed independently
◈ Significant use and testing has improved these areas
over the past several years, but...
4
CGROUPS + NAMESPACES + SECURITY FEATURES
Memory,
CPU,
Disk
Mount, User,
Network, UTS,
IPC, Cgroup..
AppArmor,
SELinux,
Seccomp, Caps
@estesp
CONTAINERS AREN’T PERFECT
◈ Kernel isolation features continue to have CVEs
◈ Hedging on lightweight virtualization has gained
popularity (e.g. Hyper.sh, Intel Clear Containers)
◈ Docker and Kubernetes have added other elements to
“containers” that require security awareness:
◆ Container Images (mini OS images!)
◆ Container Networking
◆ Storage/Volumes/Secrets
◆ Orchestration/Distributed Systems security
5
@estesp
WHAT DO WE WANT FROM CONTAINERS?
> Isolation from host
> Security from other tenants
> Resource limits
> Secure SW supply chain
> Immutability
> Repeatability/reproducability
6
@estesp
SECURITY HAS IMPROVED SIGNIFICANTLY
◈ Docker focused on security in 2016-2017
◆ Application secrets, better “sane by default” policies
(AppArmor, Seccomp), User namespaces, Swarm mode node
security, image signing, secure image format/protocol
◈ Security vendor offerings around containers has
exploded in the past 24 months
◈ Project Grafaes, Entitlements, Kubernetes security
improvements are all recent advancements
◈ Defense-in-depth model is a valuable approach
7
@estesp
2.
HOST SECURITY
Container runtimes run on a Linux (or Windows) server
8
@estesp
HOST OS SECURITY
◈ Containers use a shared kernel
◆ Escapes through kernel would
affect all containers
◆ --privileged should be used
very sparingly
◈ Root on container runtime most
likely means root on system
◈ Tenancy: single tenancy per
node? Multi-tenancy with VMs?
9
BARE METAL {or} VM
HOST OS/KERNEL
CONTAINER RUNTIME
{ orchestrator }
CTR CTR CTR
Image
Registry
@estesp
3.
CONTENT SECURITY
Containers images are an important part of a security
posture
10
@estesp
CONTAINER IMAGE/CONTENT SECURITY
◈ (Base) Images updated regularly
◆ Use image scanning tools
◆ Don’t treat containers like VMs!
◈ Least privilege mentality:
◆ No root user
◆ Minimal, read-only if possible
◆ Drop privileges
◈ Image signing & provenance
(Docker Content Trust/Notary)
11
BARE METAL {or} VM
HOST OS/KERNEL
CONTAINER RUNTIME
{ orchestrator }
CTR CTR CTR
Image
Registry
@estesp
4.
RUNTIME SECURITY
What security capabilities exist for container runtimes?
12
@estesp
CONTAINER RUNTIME/ORCHESTRATOR SECURITY
◈ Understand deployment choices
◆ RBAC? Who has access to API?
◆ Storage, Network, Volume plugins
◆ Feature switches (e.g. require
image signing)
◈ Will you use lightweight
virtualization to improve
container isolation?
◈ Secrets implementation
13
BARE METAL {or} VM
HOST OS/KERNEL
CONTAINER RUNTIME
{ orchestrator }
CTR CTR CTR
Image
Registry
@estesp
5.
USABLE SECURITY
If security isn’t usable, then it probably won’t be used
14
@estesp
SECURITY WITHOUT USABILITY = NO SECURITY
> Developers will disable
security features if they get in
the way of progress and/or
successful software deployment.
> Developers won’t learn how to
enable security features. They
are too busy. Features must be
enabled with sane defaults.
15
@estesp
THE SECURITY CONUNDRUM
◈ Who will decide what is “secure” for your business?
◆ Myriad of choices require expertise to make decisions
◈ Developers will turn off intrusive security
◈ DevOps implications
◆ CI/CD impact (source/upstream hygiene, image scanning,
provenance/signing, promotion policies)
◆ Security vendors offering UX to bring “manageability” to
help with choices, configuration, auditing
16
@estesp
STEPS ON THE RIGHT PATH
◈ Container runtimes
◆ Out of the box “sane defaults”
◆ Docker (AppArmor, Seccomp profiles built-in)
◆ Kubelet choices: “secure” or “untrusted” container models
◈ An Example: Docker Swarm Mode
◆ Built-in certificate authority deployment, full TLS
intranode encryption, certificate rotation, node secure ID
◆ Kubernetes working on similar improvements, but
componentized model of K8s makes it more challenging
17
@estesp
6.
SECURITY FUTURES
What’s coming next? What improvements will enable better
security for the future?
18
@estesp
NEW PROJECTS AND NEW IDEAS
◈ Project Grafaes (potentially Kritis)
◈ libentitlement (Moby project)
◈ LinuxKit: using image labels (for
defining capabilities/etc.)
◈ Kubernetes runtimes: using
annotations to select trust level of
runtimes
19
@estesp
PROJECT GRAFEAS
> Open, common metadata
server API for representing
vulnerability/incident data for
container images
> Cross-vendor commitment to
publish in Grafeas format
(Google, IBM, Twistlock,
Aqua, Redhat, etc.)
20
https://github.com/grafeas/grafeas
@estesp
MOBY PROJECT: LIBENTITLEMENTS
> Uses concept of Android
permission model
> Developers need to
understand broad container
permission requirements
> Library will translate that to
low-level isolation constructs
21
https://github.com/moby/libentitlement
Android App Permissions:
ACCESS_WIFI_STATE
BLUETOOTH
BLUETOOTH_ADMIN
BROADCAST_STICKY
CHANGE_NETWORK_STATE
CHANGE_WIFI_MULTICAST_STAT
E CHANGE_WIFI_STATE
DISABLE_KEYGUARD
EXPAND_STATUS_BAR
GET_PACKAGE_SIZE
INSTALL_SHORTCUT INTERNET
KILL_BACKGROUND_PROCESSES
MODIFY_AUDIO_SETTINGS
@estesp
ANNOTATIONS: HINTS FOR CONTAINER RUNTIMES
> A Kubernetes CRI implemention can support multiple
underlying container runtimes and use annotations to
decide which one (more secure, less secure) to use
> In this case, cri-o can use lightweight virtualization
(Intel Clear Containers) for better isolation of untrusted
code
22
io.kubernetes.cri-o.TrustedSandbox: “false”Example:
@estesp
LINUXKIT: COMBINING SECURITY CONCEPTS
> Uses image label to specify
runtime config (e.g. security
settings for image)
> Image signing and trust
required (on by default)
> Minimal host OS (tiny
userspace, runs containers for
services)
23
https://github.com/linuxkit/linuxkit
https://github.com/linuxkit/kubernetes
@estesp
7.
SUMMARY
Conclusions on the state of container security
24
@estesp
THE STATE OF CONTAINER SECURITY
◈ Vastly improved from early days of Docker engine
◈ Open source projects have all the right knobs for
securing and isolating containers
◈ Vendors providing turnkey solutions for those who
want a guided UX to security
◈ Work continues to make security more usable, with
sane defaults for your platform
25
@estesp
WHAT CAN YOU DO?
◈ Implement “defense in depth”
◆ If one layer of your protection fails, another one may either
limit blast radius or also defend against the attack
◈ Understand building blocks of container security
◆ Host
◆ Runtime
◆ Image
◆ Platform-provided (Kubernetes, networking, etc.)
26
@estesp
27
THANKS!
@estesp
github.com/estesp
estesp@gmail.com
https://integratedcode.us
Slack/IRC: estesp
DevOps Pro Vilnius
@estesp
CREDITS
Special thanks to all the people who made and
released these awesome resources for free:
◈ Presentation template by SlidesCarnival
28

More Related Content

PDF
CRI Runtimes Deep-Dive: Who's Running My Pod!?
PDF
Docker Engine Evolution: From Monolith to Discrete Components
PDF
Docker Athens: Docker Engine Evolution & Containerd Use Cases
PDF
Whose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
PDF
Embedding Containerd For Fun and Profit
PDF
What's Running My Containers? A review of runtimes and standards.
PDF
An Open Source Story: Open Containers & Open Communities
PDF
Containerd Project Update: FOSDEM 2018
CRI Runtimes Deep-Dive: Who's Running My Pod!?
Docker Engine Evolution: From Monolith to Discrete Components
Docker Athens: Docker Engine Evolution & Containerd Use Cases
Whose Job Is It Anyway? Kubernetes, CRI, & Container Runtimes
Embedding Containerd For Fun and Profit
What's Running My Containers? A review of runtimes and standards.
An Open Source Story: Open Containers & Open Communities
Containerd Project Update: FOSDEM 2018

What's hot (20)

PDF
Containerd Internals: Building a Core Container Runtime
PDF
The State of containerd
PPTX
CRI-containerd
PDF
KubeCon EU 2016: "rktnetes": what's new with container runtimes and Kubernetes
PPTX
LinuxKit
PDF
Continuous integration with Docker and Ansible
PDF
Virtualization inside kubernetes
PDF
Docker London Meetup: Docker Engine Evolution
PPTX
Introduction kubernetes 2017_12_24
PDF
Kubernetes 架構與虛擬化之差異
PDF
KubeCon EU 2016: Killing containers to make weather beautiful
PPTX
Docker e git lab
PDF
Introduction to CRI and OCI
PDF
An introduction to Docker and Project Atomic
PPTX
Moby Summit introduction
PDF
Making kubernetes simple for developers
PDF
Introduction to Atomic: Tailoring a Trusted OS for Containers
PDF
Fabric8 CI/CD
PPTX
Scale out data persistence for all your stateful container needs - Docker Mee...
PPTX
How to Achieve Canary Deployment on Kubernetes
Containerd Internals: Building a Core Container Runtime
The State of containerd
CRI-containerd
KubeCon EU 2016: "rktnetes": what's new with container runtimes and Kubernetes
LinuxKit
Continuous integration with Docker and Ansible
Virtualization inside kubernetes
Docker London Meetup: Docker Engine Evolution
Introduction kubernetes 2017_12_24
Kubernetes 架構與虛擬化之差異
KubeCon EU 2016: Killing containers to make weather beautiful
Docker e git lab
Introduction to CRI and OCI
An introduction to Docker and Project Atomic
Moby Summit introduction
Making kubernetes simple for developers
Introduction to Atomic: Tailoring a Trusted OS for Containers
Fabric8 CI/CD
Scale out data persistence for all your stateful container needs - Docker Mee...
How to Achieve Canary Deployment on Kubernetes
Ad

Similar to It's 2018. Are My Containers Secure Yet!? (20)

PDF
Cloud Native TLV Meetup: Securing Containerized Applications Primer
PDF
Securing Containerized Applications: A Primer
PPTX
Usernetes: Kubernetes as a non-root user
PPTX
Dev opsec dockerimage_patch_n_lifecyclemanagement_
PPTX
Docker Kubernetes Istio
PDF
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?
PPTX
Introduction to openshift
PDF
Let's Try Every CRI Runtime Available for Kubernetes
PDF
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
PDF
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
PDF
Kubernetes for Java Developers
PDF
Docker London: Container Security
PDF
Securing Containerized Applications: A Primer
PDF
The State of Rootless Containers
PDF
Containers in depth – Understanding how containers work to better work with c...
PPTX
Docker and kubernetes
PPSX
Docker Kubernetes Istio
PDF
Rooting Out Root: User namespaces in Docker
PPSX
Containers Docker Kind Kubernetes Istio
PDF
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Cloud Native TLV Meetup: Securing Containerized Applications Primer
Securing Containerized Applications: A Primer
Usernetes: Kubernetes as a non-root user
Dev opsec dockerimage_patch_n_lifecyclemanagement_
Docker Kubernetes Istio
CraftConf 2019: CRI Runtimes Deep Dive: Who Is Running My Pod?
Introduction to openshift
Let's Try Every CRI Runtime Available for Kubernetes
Webinar - Nightmares of a Container Orchestration System - Jorg Schad
Webinar: Nightmares of a Container Orchestration System - Jorg Schad
Kubernetes for Java Developers
Docker London: Container Security
Securing Containerized Applications: A Primer
The State of Rootless Containers
Containers in depth – Understanding how containers work to better work with c...
Docker and kubernetes
Docker Kubernetes Istio
Rooting Out Root: User namespaces in Docker
Containers Docker Kind Kubernetes Istio
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Ad

More from Phil Estes (15)

PDF
Enabling Security via Container Runtimes
PDF
Extended and embedding: containerd update & project use cases
PDF
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
PDF
Giving Back to Upstream | DockerCon 2019
PDF
FOSDEM 2019: A containerd Project Update
PDF
Bucketbench: Benchmarking Container Runtime Performance
PDF
Container Runtimes: Comparing and Contrasting Today's Engines
PDF
AtlanTEC 2017: Containers! Why Docker, Why NOW?
PDF
Quantifying Container Runtime Performance: OSCON 2017 Open Container Day
PDF
Empower Your Docker Containers with Watson - DockerCon 2017 Austin
PDF
Containerize, PaaS, or Go Serverless!?
PDF
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
PDF
Container Security: How We Got Here and Where We're Going
PDF
Devoxx 2016: A Developer's Guide to OCI and runC
PDF
Live Container Migration: OpenStack Summit Barcelona 2016
Enabling Security via Container Runtimes
Extended and embedding: containerd update & project use cases
JAX Con 2019: Containers. Microservices. Cloud. Open Source. Fantasy or Reali...
Giving Back to Upstream | DockerCon 2019
FOSDEM 2019: A containerd Project Update
Bucketbench: Benchmarking Container Runtime Performance
Container Runtimes: Comparing and Contrasting Today's Engines
AtlanTEC 2017: Containers! Why Docker, Why NOW?
Quantifying Container Runtime Performance: OSCON 2017 Open Container Day
Empower Your Docker Containers with Watson - DockerCon 2017 Austin
Containerize, PaaS, or Go Serverless!?
Diving Through The Layers: Investigating runc, containerd, and the Docker eng...
Container Security: How We Got Here and Where We're Going
Devoxx 2016: A Developer's Guide to OCI and runC
Live Container Migration: OpenStack Summit Barcelona 2016

Recently uploaded (20)

PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Online Work Permit System for Fast Permit Processing
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
Introduction to Artificial Intelligence
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
ai tools demonstartion for schools and inter college
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
System and Network Administration Chapter 2
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Understanding Forklifts - TECH EHS Solution
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Which alternative to Crystal Reports is best for small or large businesses.pdf
Online Work Permit System for Fast Permit Processing
How to Choose the Right IT Partner for Your Business in Malaysia
Navsoft: AI-Powered Business Solutions & Custom Software Development
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Introduction to Artificial Intelligence
CHAPTER 2 - PM Management and IT Context
ManageIQ - Sprint 268 Review - Slide Deck
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
ai tools demonstartion for schools and inter college
ISO 45001 Occupational Health and Safety Management System
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
System and Network Administration Chapter 2
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Understanding Forklifts - TECH EHS Solution
How Creative Agencies Leverage Project Management Software.pdf
Adobe Illustrator 28.6 Crack My Vision of Vector Design

It's 2018. Are My Containers Secure Yet!?

  • 1. @estesp IT’S 2018. ARE MY CONTAINERS SECURE YET?! DevOps Pro Vilnius
  • 2. @estesp HELLO! 2 Phil Estes > Office of the CTO, IBM Cloud > Docker Captain > Docker engine contributor > Containerd and Moby Project maintainer
  • 3. @estesp 1. A BRIEF OVERVIEW Easing into containers: the what and why of security 3
  • 4. @estesp CONTAINERS AREN’T REAL (@jessfraz) ◈ Containers on Linux are an assembly of Linux kernel isolation features ◈ These features have been developed independently ◈ Significant use and testing has improved these areas over the past several years, but... 4 CGROUPS + NAMESPACES + SECURITY FEATURES Memory, CPU, Disk Mount, User, Network, UTS, IPC, Cgroup.. AppArmor, SELinux, Seccomp, Caps
  • 5. @estesp CONTAINERS AREN’T PERFECT ◈ Kernel isolation features continue to have CVEs ◈ Hedging on lightweight virtualization has gained popularity (e.g. Hyper.sh, Intel Clear Containers) ◈ Docker and Kubernetes have added other elements to “containers” that require security awareness: ◆ Container Images (mini OS images!) ◆ Container Networking ◆ Storage/Volumes/Secrets ◆ Orchestration/Distributed Systems security 5
  • 6. @estesp WHAT DO WE WANT FROM CONTAINERS? > Isolation from host > Security from other tenants > Resource limits > Secure SW supply chain > Immutability > Repeatability/reproducability 6
  • 7. @estesp SECURITY HAS IMPROVED SIGNIFICANTLY ◈ Docker focused on security in 2016-2017 ◆ Application secrets, better “sane by default” policies (AppArmor, Seccomp), User namespaces, Swarm mode node security, image signing, secure image format/protocol ◈ Security vendor offerings around containers has exploded in the past 24 months ◈ Project Grafaes, Entitlements, Kubernetes security improvements are all recent advancements ◈ Defense-in-depth model is a valuable approach 7
  • 8. @estesp 2. HOST SECURITY Container runtimes run on a Linux (or Windows) server 8
  • 9. @estesp HOST OS SECURITY ◈ Containers use a shared kernel ◆ Escapes through kernel would affect all containers ◆ --privileged should be used very sparingly ◈ Root on container runtime most likely means root on system ◈ Tenancy: single tenancy per node? Multi-tenancy with VMs? 9 BARE METAL {or} VM HOST OS/KERNEL CONTAINER RUNTIME { orchestrator } CTR CTR CTR Image Registry
  • 10. @estesp 3. CONTENT SECURITY Containers images are an important part of a security posture 10
  • 11. @estesp CONTAINER IMAGE/CONTENT SECURITY ◈ (Base) Images updated regularly ◆ Use image scanning tools ◆ Don’t treat containers like VMs! ◈ Least privilege mentality: ◆ No root user ◆ Minimal, read-only if possible ◆ Drop privileges ◈ Image signing & provenance (Docker Content Trust/Notary) 11 BARE METAL {or} VM HOST OS/KERNEL CONTAINER RUNTIME { orchestrator } CTR CTR CTR Image Registry
  • 12. @estesp 4. RUNTIME SECURITY What security capabilities exist for container runtimes? 12
  • 13. @estesp CONTAINER RUNTIME/ORCHESTRATOR SECURITY ◈ Understand deployment choices ◆ RBAC? Who has access to API? ◆ Storage, Network, Volume plugins ◆ Feature switches (e.g. require image signing) ◈ Will you use lightweight virtualization to improve container isolation? ◈ Secrets implementation 13 BARE METAL {or} VM HOST OS/KERNEL CONTAINER RUNTIME { orchestrator } CTR CTR CTR Image Registry
  • 14. @estesp 5. USABLE SECURITY If security isn’t usable, then it probably won’t be used 14
  • 15. @estesp SECURITY WITHOUT USABILITY = NO SECURITY > Developers will disable security features if they get in the way of progress and/or successful software deployment. > Developers won’t learn how to enable security features. They are too busy. Features must be enabled with sane defaults. 15
  • 16. @estesp THE SECURITY CONUNDRUM ◈ Who will decide what is “secure” for your business? ◆ Myriad of choices require expertise to make decisions ◈ Developers will turn off intrusive security ◈ DevOps implications ◆ CI/CD impact (source/upstream hygiene, image scanning, provenance/signing, promotion policies) ◆ Security vendors offering UX to bring “manageability” to help with choices, configuration, auditing 16
  • 17. @estesp STEPS ON THE RIGHT PATH ◈ Container runtimes ◆ Out of the box “sane defaults” ◆ Docker (AppArmor, Seccomp profiles built-in) ◆ Kubelet choices: “secure” or “untrusted” container models ◈ An Example: Docker Swarm Mode ◆ Built-in certificate authority deployment, full TLS intranode encryption, certificate rotation, node secure ID ◆ Kubernetes working on similar improvements, but componentized model of K8s makes it more challenging 17
  • 18. @estesp 6. SECURITY FUTURES What’s coming next? What improvements will enable better security for the future? 18
  • 19. @estesp NEW PROJECTS AND NEW IDEAS ◈ Project Grafaes (potentially Kritis) ◈ libentitlement (Moby project) ◈ LinuxKit: using image labels (for defining capabilities/etc.) ◈ Kubernetes runtimes: using annotations to select trust level of runtimes 19
  • 20. @estesp PROJECT GRAFEAS > Open, common metadata server API for representing vulnerability/incident data for container images > Cross-vendor commitment to publish in Grafeas format (Google, IBM, Twistlock, Aqua, Redhat, etc.) 20 https://github.com/grafeas/grafeas
  • 21. @estesp MOBY PROJECT: LIBENTITLEMENTS > Uses concept of Android permission model > Developers need to understand broad container permission requirements > Library will translate that to low-level isolation constructs 21 https://github.com/moby/libentitlement Android App Permissions: ACCESS_WIFI_STATE BLUETOOTH BLUETOOTH_ADMIN BROADCAST_STICKY CHANGE_NETWORK_STATE CHANGE_WIFI_MULTICAST_STAT E CHANGE_WIFI_STATE DISABLE_KEYGUARD EXPAND_STATUS_BAR GET_PACKAGE_SIZE INSTALL_SHORTCUT INTERNET KILL_BACKGROUND_PROCESSES MODIFY_AUDIO_SETTINGS
  • 22. @estesp ANNOTATIONS: HINTS FOR CONTAINER RUNTIMES > A Kubernetes CRI implemention can support multiple underlying container runtimes and use annotations to decide which one (more secure, less secure) to use > In this case, cri-o can use lightweight virtualization (Intel Clear Containers) for better isolation of untrusted code 22 io.kubernetes.cri-o.TrustedSandbox: “false”Example:
  • 23. @estesp LINUXKIT: COMBINING SECURITY CONCEPTS > Uses image label to specify runtime config (e.g. security settings for image) > Image signing and trust required (on by default) > Minimal host OS (tiny userspace, runs containers for services) 23 https://github.com/linuxkit/linuxkit https://github.com/linuxkit/kubernetes
  • 24. @estesp 7. SUMMARY Conclusions on the state of container security 24
  • 25. @estesp THE STATE OF CONTAINER SECURITY ◈ Vastly improved from early days of Docker engine ◈ Open source projects have all the right knobs for securing and isolating containers ◈ Vendors providing turnkey solutions for those who want a guided UX to security ◈ Work continues to make security more usable, with sane defaults for your platform 25
  • 26. @estesp WHAT CAN YOU DO? ◈ Implement “defense in depth” ◆ If one layer of your protection fails, another one may either limit blast radius or also defend against the attack ◈ Understand building blocks of container security ◆ Host ◆ Runtime ◆ Image ◆ Platform-provided (Kubernetes, networking, etc.) 26
  • 28. @estesp CREDITS Special thanks to all the people who made and released these awesome resources for free: ◈ Presentation template by SlidesCarnival 28