SlideShare a Scribd company logo
Securing the Container Pipeline
Cem
Gürkök
Lead InfoSec Engineer
(NOTE: PASTE IN PORTRAIT AND SEND BEHIND
FOREGROUND GRAPHIC FOR CROP)
Securing the Container Pipeline
Cem Gürkök
Lead InfoSec Engineer
Salesforce
@CGurkok
Agenda
•  Threats
•  Container pipelines and integrity
•  Monitoring containers, hosts, apps, networks
•  Digital Forensics
•  Vulnerability Management
•  Hardening
•  Demo
Threats
Container Threats & Challenges
​ Run-time
• Container exploit and resource exposure (App)
• Breaking out of container
• Cross-container attacks
• Resource overuse (DoS)
​ At-rest or transport
• Tampering of images
• Unpatched OS or applications
Mitigations
“As we know, there are known knowns; there are things we know we
know. We also know there are known unknowns; that is to say we know
there are some things we do not know. But there are also unknown
unknowns—the ones we don’t know we don’t know.”
— Donald Rumsfeld
Securing the Pipeline
Docker
Security
Platform
Security
Access
Controls
Content
Security
Monitoring
and
Response
The Pipeline
Container Pipeline & Security
Base OS
and
Docker
File
Base OS
Image
DEV
Docker
Trusted
Registry +
Notary
Developer
RelEng
Image
DEV
Docker
Trusted
Registry +
Notary
Continuous
Integration
PROD
Docker
Trusted
Registry +
Notary
Running
in PROD
Monitoring in all steps.
1.  Security Review and Hardening
2.  Signing, Authentication, Image
Vulnerability Scans
3.  Authentication, Verification
4.  Signing, Authentication, Image
Vulnerability Scans
5.  Authentication
6.  Authentication, Verification
7.  Authentication, Verification,
Vulnerability Scans
8.  Incident Response, Digital Forensics,
Patching
Access Control: Authentication
•  LDAP over SSL for Docker image transactions:
•  Users (Devs, RelEng)
•  Service accounts
•  Mutual TLS Authentication for registry replication
Dev Systems
Dev Registry
Build & Test
Master Registry
Prod Registry
DMZ Services
TLS
Container Integrity
​ Docker Trusted Registry (DTR)
•  On-premise
•  Authenticated transactions with LDAPS
authentication
•  DEV and PROD user and image separation
•  Users will not be able to disable signing validation
•  Validation will be transparent to the users
Container Integrity
​ Docker Notary
•  Enable Docker Content Trust on consumers
•  Can enable signing checks on every managed host
•  Signature verification transparent to users
Build & Test
Notary Master
DMZ Services
Prod Services
Sign
Validate
Validate
Master Docker
Registry
DEV
DMZ
Notary
Master
LDAPS Auth
Notary Signing
Dev Docker Registry
PROD
Mirrored Read-only
Registry or Caching
Proxy
Docker packaged services
Mutual TLS Auth
HTTPS Pull
Validate
Dev Systems
LDAPS user acct
HTTPS Push to Dev
Authenticated pulls
LDAPS Auth
HTTPS Push
and Sign
HTTPS Pull
Sign
LDAPS Auth
HTTPS Push
Already Signed
Docker packaged
services in DMZ
HTTPS No
Auth Pull
Validate
RelEng
promotes
to DMZ
Release case
* Andrey Falko, Salesforce
Ticketing
System
Hardening
Hardening: Host
•  Frequent patching
•  Install only needed components and libraries (i.e. no
gcc or bash)
•  Grsecurity/PaX for the kernel
•  File system integrity monitoring
•  Leverage Linux isolation capabilities!!
Hardening: Container
•  Base image and app with latest updates/patches
•  Leverage User namespaces (run as low priv user on
host)
•  Install only needed components and libraries (i.e. no
gcc or ssh)
Hardening: Container
•  Avoid using Docker with the --privileged flag
•  Use --read-only when running containers (immutability)
•  Avoid providing access to the docker user and group
•  Limit and/or separate host and kernel device access
Hardening: Docker Bench for Security
•  Docker Bench for Security
to the rescue!
• https://github.com/docker/
docker-bench-security
•  Checks based on best
practices for hosts and
containers
* https://github.com/docker/docker-bench-security
Hardening: Vulnerability Management
​ Image Scans with tools, such as Docker
Security Scanning:
• Operating System
• Application source code and libraries
​ Network Scans with traditional vuln
scanners:
• Discovery
• Exposed services
​ Auto and Manual source code audits
* “Securing the Software Supply Chain with Docker, ” May 2016, Nathan McCauley
Hardening: Vulnerability Management
•  Scanning
•  Docker Images
•  Applications
•  Remediation
•  Prioritization and SLAs for Patching
•  Relaunching containers after patching
Δt
Monitoring
Network Infrastructure
•  Bridged networking on Host
•  Containers assigned VNICs, IP
addresses, and hostnames
•  Containers isolated via VLANs
(i.e. DB, Web App)
•  Tap interface for monitoring
•  Security Policies per VLANs
and Zones
Network Infrastructure
Monitoring: Network
​ Network traffic captured for:
• Inter-container communications
• Host communications
• Resource communications (i.e. DB,
Public Internet)
​ Network traffic sent to:
• IDS (Intrusion Detection System)
• Netflow generator
• Output sent to SIEM for analysis
Monitoring: Hosts
​ Logs:
• All host logs are saved
• SIEM agents consume and forward the logs from hosts
• Monitoring, Dashboarding, Alerting at SIEM
Host SIEM
Monitoring: Containers & Apps
•  Logs are monitored similar to host
•  OS + Application logs
•  Network activity monitoring
•  IP address assignments
•  Netflows
•  IDS (Intrusion Detection System)
•  Raw Network Traffic Capture
Monitoring: Host, Containers & Apps
​ Disk activity monitoring
• File system integrity
• Run time layer monitoring
​ Memory monitoring
• Docker and container process activity
• Process integrity: Engine + Container
Digital Forensics
Digital Forensics
•  Incident Response Plan/Policies
•  Live/Post-mortem Memory Forensics
•  Disk Forensics
•  Network Monitoring/Forensics
Disk Forensics
•  Build supertimeline to have integrated view of events
•  Data Sources:
•  Raw Disk Image
•  Log Files
•  Binaries
•  Tools
•  The Sleuth Kit: File system analysis
•  Plaso: Build supertimeline
•  dd: Raw disk image
dd
Sleuth Kit
Plaso
Memory Forensics
Why Memory Forensics?
• Nothing can hide in memory!
• Faster artifact discovery vs. disk forensics
Memory Forensics
​ Analyze host memory
• Live /dev/*mem
• VM memory file
• Memory dump/sample
​ Tools:
• Analysis (most OS and sample format):
• The Volatility Framework
• Memory sampling on Linux: LiME, linpmem
LiME
linpmem
Memory Forensics: Process Hierarchy
•  pstree_hash [new]: View Docker
processes in a tree view based on
the PID hash table vs. linked list
•  Use case: Detect rogue or injected
child processes/containers
Memory Forensics: Temporary File Systems
•  tmpfs: lists and recovers tmpfs file systems from memory
•  Use case: monitor file systems
Memory Forensics: Loaded Libraries
•  linux_proc_maps: shows process memory maps, their permissions
and original file paths (executable and libraries)
•  Use case: Detect Shared Library Injections
Memory Forensics: Process Integrity
•  process_compare [new]: Detect if user space binary has
been tampered with in memory (in memory binary vs. on
disk) [5]
•  Works when binary symbols can’t be extracted
Summary
Platform
Security
Isolation
Hardening
Best Practices
Vulnerability
Scans
Content
Security
Registry
Notary
Image/Code
Signing
Image/Code
Scanning
Access
Controls
LDAPS
User
Authentication
System
Authentication
Monitoring
and
Response
IR Plan &
Testing
Vulnerability
Management
Network
Logs
Forensics
thank y u
References
1.  “CIS Docker 1.6 Benchmark,” Center for Internet Security
2.  “Introduction to Container Security,” Docker.com
3.  “Understanding and Hardening Linux Containers,” NCC Group
4.  “The Volatility Framework,” https://github.com/volatilityfoundation/volatility
5.  “Identifying the Unknown in User Space Memory,” Andrew White
6.  “LiME,” https://github.com/504ensicsLabs/LiME
7.  “linpmem,” http://www.rekall-forensic.com/docs/Tools/
8.  “The Sleuth Kit,” http://www.sleuthkit.org/
9.  “Plaso,” https://github.com/log2timeline/plaso

More Related Content

PPTX
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
PPTX
Docker for Ops: Docker Storage and Volumes Deep Dive and Considerations by Br...
PDF
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
PDF
Production Ready Containers from IBM and Docker
PDF
Automated hardware testing using docker for space
PDF
Proactive ops for container orchestration environments
PDF
Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov
PDF
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Docker for Ops: Docker Networking Deep Dive, Considerations and Troubleshooti...
Docker for Ops: Docker Storage and Volumes Deep Dive and Considerations by Br...
Journey to Docker Production: Evolving Your Infrastructure and Processes - Br...
Production Ready Containers from IBM and Docker
Automated hardware testing using docker for space
Proactive ops for container orchestration environments
Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer

What's hot (20)

PPTX
Docker for Ops: Operationalize your Docker Built Apps in Production by Evan H...
PDF
Docker on Docker
PDF
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
ODP
Practical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
PDF
Getting Deep on Orchestration: APIs, Actors, and Abstractions in a Distribute...
PDF
You Don't Have to Start Over! A Practical Guide for Adopting Docker in the En...
PDF
DockerCon EU 2015: Monitoring Docker
PDF
Proof of Concept: Serverless with Swarm by Nirmal Mehta, Booz Allen Hamilton
PDF
Tupperware: Containerized Deployment at FB
PPTX
So Easy, A Ten Year Old Can Do It by Zeph Gardler
PPTX
Thinking Inside the Container: A Continuous Delivery Story by Maxfield Stewart
PDF
How to accelerate docker adoption with a simple and powerful user experience
PDF
DockerCon EU 2015: Day 1 General Session
PDF
DCSF19 Container Security: Theory & Practice at Netflix
PDF
DockerCon EU 2015: The Latest in Docker Engine
PPTX
Monitoring docker container and dockerized applications
PPTX
Take an Analytics-driven Approach to Container Performance with Splunk for Co...
PPTX
The Good, the Bad and the Ugly of Networking for Microservices by Mathew Lodg...
PDF
Containerize All the (Multi-Platform) Things! by Phil Estes
PDF
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Docker for Ops: Operationalize your Docker Built Apps in Production by Evan H...
Docker on Docker
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
Practical Container Security by Mrunal Patel and Thomas Cameron, Red Hat
Getting Deep on Orchestration: APIs, Actors, and Abstractions in a Distribute...
You Don't Have to Start Over! A Practical Guide for Adopting Docker in the En...
DockerCon EU 2015: Monitoring Docker
Proof of Concept: Serverless with Swarm by Nirmal Mehta, Booz Allen Hamilton
Tupperware: Containerized Deployment at FB
So Easy, A Ten Year Old Can Do It by Zeph Gardler
Thinking Inside the Container: A Continuous Delivery Story by Maxfield Stewart
How to accelerate docker adoption with a simple and powerful user experience
DockerCon EU 2015: Day 1 General Session
DCSF19 Container Security: Theory & Practice at Netflix
DockerCon EU 2015: The Latest in Docker Engine
Monitoring docker container and dockerized applications
Take an Analytics-driven Approach to Container Performance with Splunk for Co...
The Good, the Bad and the Ugly of Networking for Microservices by Mathew Lodg...
Containerize All the (Multi-Platform) Things! by Phil Estes
Highly Available Persistent Applications in Containers by Kendrick Coleman, E...
Ad

Viewers also liked (20)

PPTX
Overseeing Ship's Surveys and Surveyors Globally Using IoT and Docker by Jay ...
PPTX
Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...
PDF
Docker in Production, Look No Hands! by Scott Coulton
PDF
Build Fast, Deploy Fast: Innovating in the Enterprise by Imran Raja and Andy Lim
PPTX
Using the SDACK Architecture on Security Event Inspection by Yu-Lun Chen and ...
PDF
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
PDF
Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...
PPTX
Netflix0SS Services on Docker
PDF
Deploying Personalized Learning Labs using Docker Swarm by Nate Aune and Bria...
PPTX
Dockerizing Windows Server Applications by Ender Barillas and Taylor Brown
PDF
Efficient Parallel Testing with Docker by Laura Frank
PDF
Docker for Mac and Windows: The Insider's Guide by Justin Cormack
PPTX
Windows Server and Docker - The Internals Behind Bringing Docker and Containe...
PDF
Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish...
PPTX
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
PDF
containerd and CRI
PDF
Driving containerd operations with gRPC
PPTX
Docker Online Meetup: Announcing Docker CE + EE
PPTX
English Nukleus - FUNCTION AND ABILITY
PDF
Using Vault to decouple MySQL Secrets
Overseeing Ship's Surveys and Surveyors Globally Using IoT and Docker by Jay ...
Learning the Alphabet: A/B, CD and [E-Z] in the Docker Datacenter by Brett Ti...
Docker in Production, Look No Hands! by Scott Coulton
Build Fast, Deploy Fast: Innovating in the Enterprise by Imran Raja and Andy Lim
Using the SDACK Architecture on Security Event Inspection by Yu-Lun Chen and ...
Fully Orchestrating Applications, Microservices and Enterprise Services with ...
Use Docker to Deliver Cognitive Services Running Cross Platform and Multi Clo...
Netflix0SS Services on Docker
Deploying Personalized Learning Labs using Docker Swarm by Nate Aune and Bria...
Dockerizing Windows Server Applications by Ender Barillas and Taylor Brown
Efficient Parallel Testing with Docker by Laura Frank
Docker for Mac and Windows: The Insider's Guide by Justin Cormack
Windows Server and Docker - The Internals Behind Bringing Docker and Containe...
Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish...
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
containerd and CRI
Driving containerd operations with gRPC
Docker Online Meetup: Announcing Docker CE + EE
English Nukleus - FUNCTION AND ABILITY
Using Vault to decouple MySQL Secrets
Ad

Similar to Securing the Container Pipeline at Salesforce by Cem Gurkok (20)

PDF
Securing the Container Pipeline
PPTX
Containers and Security for DevOps
PDF
WTF my container just spawned a shell!
PDF
Lions, Tigers and Deers: What building zoos can teach us about securing micro...
PDF
Container Security
PPTX
Docker Security
PDF
Fluentd and docker monitoring
PDF
Tokyo OpenStack Summit 2015: Unraveling Docker Security
PDF
Unraveling Docker Security: Lessons From a Production Cloud
PPTX
Contain your risk: Deploy secure containers with trust and confidence
PPTX
OWASP Atlanta 2018: Forensics as a Service
PPTX
SANS Cloud Security Summit 2018: Forensics as a Service
PDF
Road to Opscon (Pisa '15) - DevOoops
PDF
Containers and security
PDF
Securing Docker Containers
PPTX
Using Docker in production: Get started today!
PDF
Finding Your Way in Container Security
PDF
5 Ways to Secure Your Containers for Docker and Beyond
PDF
Docker Containers Security
PDF
Thick Client Penetration Testing.pdf
Securing the Container Pipeline
Containers and Security for DevOps
WTF my container just spawned a shell!
Lions, Tigers and Deers: What building zoos can teach us about securing micro...
Container Security
Docker Security
Fluentd and docker monitoring
Tokyo OpenStack Summit 2015: Unraveling Docker Security
Unraveling Docker Security: Lessons From a Production Cloud
Contain your risk: Deploy secure containers with trust and confidence
OWASP Atlanta 2018: Forensics as a Service
SANS Cloud Security Summit 2018: Forensics as a Service
Road to Opscon (Pisa '15) - DevOoops
Containers and security
Securing Docker Containers
Using Docker in production: Get started today!
Finding Your Way in Container Security
5 Ways to Secure Your Containers for Docker and Beyond
Docker Containers Security
Thick Client Penetration Testing.pdf

More from Docker, Inc. (20)

PDF
Containerize Your Game Server for the Best Multiplayer Experience
PDF
How to Improve Your Image Builds Using Advance Docker Build
PDF
Build & Deploy Multi-Container Applications to AWS
PDF
Securing Your Containerized Applications with NGINX
PDF
How To Build and Run Node Apps with Docker and Compose
PDF
Hands-on Helm
PDF
Distributed Deep Learning with Docker at Salesforce
PDF
The First 10M Pulls: Building The Official Curl Image for Docker Hub
PDF
Monitoring in a Microservices World
PDF
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
PDF
Predicting Space Weather with Docker
PDF
Become a Docker Power User With Microsoft Visual Studio Code
PDF
How to Use Mirroring and Caching to Optimize your Container Registry
PDF
Monolithic to Microservices + Docker = SDLC on Steroids!
PDF
Kubernetes at Datadog Scale
PDF
Labels, Labels, Labels
PDF
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
PDF
Build & Deploy Multi-Container Applications to AWS
PDF
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
PDF
Developing with Docker for the Arm Architecture
Containerize Your Game Server for the Best Multiplayer Experience
How to Improve Your Image Builds Using Advance Docker Build
Build & Deploy Multi-Container Applications to AWS
Securing Your Containerized Applications with NGINX
How To Build and Run Node Apps with Docker and Compose
Hands-on Helm
Distributed Deep Learning with Docker at Salesforce
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Monitoring in a Microservices World
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Predicting Space Weather with Docker
Become a Docker Power User With Microsoft Visual Studio Code
How to Use Mirroring and Caching to Optimize your Container Registry
Monolithic to Microservices + Docker = SDLC on Steroids!
Kubernetes at Datadog Scale
Labels, Labels, Labels
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Build & Deploy Multi-Container Applications to AWS
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Developing with Docker for the Arm Architecture

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Electronic commerce courselecture one. Pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
cuic standard and advanced reporting.pdf
PDF
Approach and Philosophy of On baking technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Empathic Computing: Creating Shared Understanding
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Encapsulation theory and applications.pdf
NewMind AI Weekly Chronicles - August'25 Week I
“AI and Expert System Decision Support & Business Intelligence Systems”
The AUB Centre for AI in Media Proposal.docx
Encapsulation_ Review paper, used for researhc scholars
Electronic commerce courselecture one. Pdf
MYSQL Presentation for SQL database connectivity
cuic standard and advanced reporting.pdf
Approach and Philosophy of On baking technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Network Security Unit 5.pdf for BCA BBA.
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Dropbox Q2 2025 Financial Results & Investor Presentation
Empathic Computing: Creating Shared Understanding
Spectral efficient network and resource selection model in 5G networks
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
20250228 LYD VKU AI Blended-Learning.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Understanding_Digital_Forensics_Presentation.pptx
Encapsulation theory and applications.pdf

Securing the Container Pipeline at Salesforce by Cem Gurkok

  • 1. Securing the Container Pipeline Cem Gürkök Lead InfoSec Engineer (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
  • 2. Securing the Container Pipeline Cem Gürkök Lead InfoSec Engineer Salesforce @CGurkok
  • 3. Agenda •  Threats •  Container pipelines and integrity •  Monitoring containers, hosts, apps, networks •  Digital Forensics •  Vulnerability Management •  Hardening •  Demo
  • 5. Container Threats & Challenges ​ Run-time • Container exploit and resource exposure (App) • Breaking out of container • Cross-container attacks • Resource overuse (DoS) ​ At-rest or transport • Tampering of images • Unpatched OS or applications
  • 7. “As we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there are also unknown unknowns—the ones we don’t know we don’t know.” — Donald Rumsfeld
  • 10. Container Pipeline & Security Base OS and Docker File Base OS Image DEV Docker Trusted Registry + Notary Developer RelEng Image DEV Docker Trusted Registry + Notary Continuous Integration PROD Docker Trusted Registry + Notary Running in PROD Monitoring in all steps. 1.  Security Review and Hardening 2.  Signing, Authentication, Image Vulnerability Scans 3.  Authentication, Verification 4.  Signing, Authentication, Image Vulnerability Scans 5.  Authentication 6.  Authentication, Verification 7.  Authentication, Verification, Vulnerability Scans 8.  Incident Response, Digital Forensics, Patching
  • 11. Access Control: Authentication •  LDAP over SSL for Docker image transactions: •  Users (Devs, RelEng) •  Service accounts •  Mutual TLS Authentication for registry replication Dev Systems Dev Registry Build & Test Master Registry Prod Registry DMZ Services TLS
  • 12. Container Integrity ​ Docker Trusted Registry (DTR) •  On-premise •  Authenticated transactions with LDAPS authentication •  DEV and PROD user and image separation •  Users will not be able to disable signing validation •  Validation will be transparent to the users
  • 13. Container Integrity ​ Docker Notary •  Enable Docker Content Trust on consumers •  Can enable signing checks on every managed host •  Signature verification transparent to users Build & Test Notary Master DMZ Services Prod Services Sign Validate Validate
  • 14. Master Docker Registry DEV DMZ Notary Master LDAPS Auth Notary Signing Dev Docker Registry PROD Mirrored Read-only Registry or Caching Proxy Docker packaged services Mutual TLS Auth HTTPS Pull Validate Dev Systems LDAPS user acct HTTPS Push to Dev Authenticated pulls LDAPS Auth HTTPS Push and Sign HTTPS Pull Sign LDAPS Auth HTTPS Push Already Signed Docker packaged services in DMZ HTTPS No Auth Pull Validate RelEng promotes to DMZ Release case * Andrey Falko, Salesforce Ticketing System
  • 16. Hardening: Host •  Frequent patching •  Install only needed components and libraries (i.e. no gcc or bash) •  Grsecurity/PaX for the kernel •  File system integrity monitoring •  Leverage Linux isolation capabilities!!
  • 17. Hardening: Container •  Base image and app with latest updates/patches •  Leverage User namespaces (run as low priv user on host) •  Install only needed components and libraries (i.e. no gcc or ssh)
  • 18. Hardening: Container •  Avoid using Docker with the --privileged flag •  Use --read-only when running containers (immutability) •  Avoid providing access to the docker user and group •  Limit and/or separate host and kernel device access
  • 19. Hardening: Docker Bench for Security •  Docker Bench for Security to the rescue! • https://github.com/docker/ docker-bench-security •  Checks based on best practices for hosts and containers * https://github.com/docker/docker-bench-security
  • 20. Hardening: Vulnerability Management ​ Image Scans with tools, such as Docker Security Scanning: • Operating System • Application source code and libraries ​ Network Scans with traditional vuln scanners: • Discovery • Exposed services ​ Auto and Manual source code audits * “Securing the Software Supply Chain with Docker, ” May 2016, Nathan McCauley
  • 21. Hardening: Vulnerability Management •  Scanning •  Docker Images •  Applications •  Remediation •  Prioritization and SLAs for Patching •  Relaunching containers after patching Δt
  • 23. Network Infrastructure •  Bridged networking on Host •  Containers assigned VNICs, IP addresses, and hostnames •  Containers isolated via VLANs (i.e. DB, Web App) •  Tap interface for monitoring •  Security Policies per VLANs and Zones
  • 25. Monitoring: Network ​ Network traffic captured for: • Inter-container communications • Host communications • Resource communications (i.e. DB, Public Internet) ​ Network traffic sent to: • IDS (Intrusion Detection System) • Netflow generator • Output sent to SIEM for analysis
  • 26. Monitoring: Hosts ​ Logs: • All host logs are saved • SIEM agents consume and forward the logs from hosts • Monitoring, Dashboarding, Alerting at SIEM Host SIEM
  • 27. Monitoring: Containers & Apps •  Logs are monitored similar to host •  OS + Application logs •  Network activity monitoring •  IP address assignments •  Netflows •  IDS (Intrusion Detection System) •  Raw Network Traffic Capture
  • 28. Monitoring: Host, Containers & Apps ​ Disk activity monitoring • File system integrity • Run time layer monitoring ​ Memory monitoring • Docker and container process activity • Process integrity: Engine + Container
  • 30. Digital Forensics •  Incident Response Plan/Policies •  Live/Post-mortem Memory Forensics •  Disk Forensics •  Network Monitoring/Forensics
  • 31. Disk Forensics •  Build supertimeline to have integrated view of events •  Data Sources: •  Raw Disk Image •  Log Files •  Binaries •  Tools •  The Sleuth Kit: File system analysis •  Plaso: Build supertimeline •  dd: Raw disk image dd Sleuth Kit Plaso
  • 32. Memory Forensics Why Memory Forensics? • Nothing can hide in memory! • Faster artifact discovery vs. disk forensics
  • 33. Memory Forensics ​ Analyze host memory • Live /dev/*mem • VM memory file • Memory dump/sample ​ Tools: • Analysis (most OS and sample format): • The Volatility Framework • Memory sampling on Linux: LiME, linpmem LiME linpmem
  • 34. Memory Forensics: Process Hierarchy •  pstree_hash [new]: View Docker processes in a tree view based on the PID hash table vs. linked list •  Use case: Detect rogue or injected child processes/containers
  • 35. Memory Forensics: Temporary File Systems •  tmpfs: lists and recovers tmpfs file systems from memory •  Use case: monitor file systems
  • 36. Memory Forensics: Loaded Libraries •  linux_proc_maps: shows process memory maps, their permissions and original file paths (executable and libraries) •  Use case: Detect Shared Library Injections
  • 37. Memory Forensics: Process Integrity •  process_compare [new]: Detect if user space binary has been tampered with in memory (in memory binary vs. on disk) [5] •  Works when binary symbols can’t be extracted
  • 40. References 1.  “CIS Docker 1.6 Benchmark,” Center for Internet Security 2.  “Introduction to Container Security,” Docker.com 3.  “Understanding and Hardening Linux Containers,” NCC Group 4.  “The Volatility Framework,” https://github.com/volatilityfoundation/volatility 5.  “Identifying the Unknown in User Space Memory,” Andrew White 6.  “LiME,” https://github.com/504ensicsLabs/LiME 7.  “linpmem,” http://www.rekall-forensic.com/docs/Tools/ 8.  “The Sleuth Kit,” http://www.sleuthkit.org/ 9.  “Plaso,” https://github.com/log2timeline/plaso