+ All Categories
Home > Documents > Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions...

Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions...

Date post: 13-May-2020
Category:
Upload: others
View: 13 times
Download: 0 times
Share this document with a friend
44
Transcript
Page 1: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12
Page 2: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Multi-tenancy Virtualization

Challenges & Solutions

Daniel J Walsh Mr SELinux, Red HatDate 06.28.12

Page 3: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

What is Cloud?

Page 4: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

What is IaaS?

IaaS = Infrastructure-as-a-Service

Page 5: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

What is PaaS?

PaaS = Platform-as-a-Service(AKA, a Cloud Application Platform)

Code Deploy Enjoy

Save Time and MoneyCode your app

Push-button Deploy, and your App is

running in the Cloud!

Page 6: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

OpenShift is PaaS by Red Hat

Page 7: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

What should you look for when choosing where to live?

cgroups

Page 8: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Alicia Nijdam Flickr :Attribution 2.0 Generic (CC BY 2.0)

Quality???

Page 9: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Quality!!!

Page 10: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Broad ISV Choice Database Choice

Red Hat Enterprise Linuxcertified on more platformsthan any other OS — from

desktop to mainframe

Page 11: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Red Hat Enterprise Linux is Rock Solid

● Systems to 108 cores,2 TB RAM, 16 I/O slots

● Designed to scale to 4,096 cores and up to 64 TB RAM

● Industry benchmarks show near-linear scaling to 64+ cores

● Resource management: cGroups

● Integrated hypervisor● Migrate VMs

regardless of hardware

Self healing, automaticisolation of CPU/RAM

Improved hardwareawareness of multi-core

and NUMA

Energy efficientpower management

features

Page 12: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Maintenance ???

Page 13: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Maintenance of the BuildingMaintenance !!!

nayukim Flickr :Attribution 2.0 Generic (CC BY 2.0)

Page 14: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Red Hat Enterprise Linux Updates are Great!!!

DON'T RIP out/replace Foundation but repair/Improve it.

● Released once or twice a year

● Bug fixes and hardware enablement

● New features in minor releases exception

● Extended Update Support (EUS) program.

● Security/Bugfixes for high-priority issues released asynchronously and don't wait for minor releases.

● Why risk your data with Knock-Offs

Page 15: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

External Security ???

ogimogi Flickr :Attribution 2.0 Generic (CC BY 2.0)

Page 16: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

External Security !!!

Page 17: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Privileged & Confidential

Red Hat Security Response Team

● Goal● Quickly address security issues that arise in products

● Established over 11 years, members span 10 countries

● Monitor vulnerabilities/threats from public/private sources

● Triage vulnerability severity and determine fix strategy● Produce communications to customers ● Manage process to get the right fix out at the right time

● 99.7% response within one business day of receipt

Page 18: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

How we find out about the vulnerabilities

Vulnerability clearing centers such as CERT/CC

Mitre CVE project

Individual (issue tracker, bugzilla, secalert)

Relationship with peer vendors

Red Hat found the flaw

Relationship with upstream project

Monitoring public mailing lists and sites

1%

7%

11%

11%

12%

16%

42%

data: 12 months to March 1 2012, 733 vulnerabilities

36% of the vulnerabilities reported to us in advance of public disclosure

Page 19: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Internal SecurityControlling Tenants

nayukim Flickr :Attribution 2.0 Generic (CC BY 2.0)

Page 20: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

ktow Flickr :Attribution 2.0 Generic (CC BY 2.0)

i

Internal SecuritySame Tools?

Page 21: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Hypervisor Vulnerabilities

● Hypervisor == All code used to run tenants● Not theoretical● Potentially Huge Payoffs● Xen Already Compromosed

● Even Red Hat Entreprise Linux 5

● Google “vmware vulnerabilies” - 500,000 Hits● Big topic at Black Hat conference

Page 22: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1 VM 2 VM 3

Virtual machine processes all have equal access to the

system...

Image1 Image2 Image3 ImageN

Page 23: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1

WebVM 2 VM 3

...if application on virtual machine is attacked...

Image1 Image2 Image3 ImageN

Page 24: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

...compromised...

Web

Image1 Image2 Image3 ImageN

Page 25: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

...and gets a privilege escalation...

Web

Image1 Image2 Image3 ImageN

Page 26: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

.. and your machine has a Hypervisor Vulnerability ...

Web

Image1 Image2 Image3 ImageN

Page 27: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

.. But not just the running VM's and host, but all images ...

Web

Image1 Image2 Image3 ImageN

Page 28: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Popular Science Magazine April 2011

Page 29: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

SELinux to the rescue

SELinux is all about labeling

SELinux – All Processes get labels

KVM VM's are processes!!!

SELINUX – All Files/Devices Get Labels

KVM Virtual images are stored on files/devices!!!!

SELinux Policy:● Governs Process Labels access to Process/File Labels.

Kernel Enforces these Rules.

Page 30: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1 VM 2 VM 3

Virtual machine processes all have equal access to the

system...

Image1 Image2 Image3 ImageN

Page 31: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1

WebVM 2 VM 3

...if application on virtual machine is attacked...

Image1 Image2 Image3 ImageN

Page 32: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

...compromised...

Web

Image1 Image2 Image3 ImageN

Page 33: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Linux Kernel

VM 1VM 2 VM 3

Web

Image1 Image2 Image3 ImageN

SELinux Force Fields...

Page 34: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12
Page 35: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

http://people.fedoraproject.org/~dwalsh/SELinux/Presentations/svirt.ogv

Svirt Demo

Page 36: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

stevendepolo Flickr :Attribution-NoDerivs 2.0 Generic (CC BY-ND 2.0)

Shared Resources !

Page 37: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Sharing Resources

stevendepolo Flickr :Attribution 2.0 Generic (CC BY 2.0)

Shared Resources !

Page 38: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Control Group Overview● Control Group is a generic framework where several "resource type of controllers"

can be plugged into and managed different resources of the system such as process scheduling, memory allocation, network traffic, or IO bandwidth.

● Two types of control mechanisms

● Proportional and Maximum Bandwidth Control● Controller Types Supported

● CPU/CPUset, Memory, Networking, Block IO, etc.

. RHEL6.2 RHEL6.3+ RHEL 7+

CPU Proportional &Maximal

Proportional &Maximal

Proportional &Maximal

Memory Maximal only Maximal only Maximal only

Networking Proportional &Maximal

Proportional &Maximal

Proportional &Maximal

Block IO Proportional &Maximal

Proportional &Maximal

Maximal [Proportional bandwidth will not work by default]

Page 39: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Resource Management: Control Groups

Ability to manage large system resources effectively

Control groups (cgroups) for CPU/Memory/Network/Disk

Benefit: guarantee Quality of Service & dynamic resource allocation

Ideal for managing any multi-application environment

From backup jobs to the Cloud

Page 40: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Cgroups Demo

● http://people.fedoraproject.org/~dwalsh/SELinux/Presentations/cgroups.ogv

Page 41: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Internal Security Futures

Page 42: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

SECCOMP/Libseccomp

● Selectively disable syscalls with seccomp● ~312 syscalls/x86_64, not including x86● Most applications use subset of all the syscalls● Reduces chance of kernel exploitation if app is exploited

● Some syscalls are “riskier” than others● Not fully protected by LSM/SELinux● History of vulnerabilities due to syscall complexity

● libseccomp makes seccomp easy to use● Simple architecture independent API for developers

Page 43: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Secure Linux Application Containers

● Run hundreds of servers simultaneously● Similar to Openshift

● Little overhead

● SELinux protections built in

● Uses all Namespaces

Page 44: Multi-tenancy Virtualization - Fedora People · Multi-tenancy Virtualization Challenges & Solutions Daniel J Walsh Mr SELinux, Red Hat Date 06.28.12

Verifying the Boot Sequence

● UEFI Secure Boot

● Trusted Boot● TXT● TPM


Recommended