Domain 13: Virtualization Virtualization is one of the key

advertisement
Domain 13: Virtualization
Virtualization is one of the key underpinnings of Infrastructure as a Service (IaaS) cloud offerings and
private clouds, and it’s increasingly used in portions of the back-end of Platform as a Service (PaaS) and
SaaS providers as well. It is also used extensively with virtual desktops, which are delivered from private
or public clouds.
The benefits of virtualization are well known, including multi-tenancy, better server utilization, and data
center consolidation. Cloud providers can achieve higher density which translates to better margins, and
enterprises can use virtualization to shrink capital expenditure on server hardware as well as increase
operational efficiency.
However, virtualization brings with it all the security concerns of the operating system running as a
guest, together with new security concerns about the hypervisor layer, as well as new virtualization
specific threats, inter-VM attacks and blind spots, performance concerns arising from CPU and memory
used for security, and operational complexity from “VM sprawl” as a security inhibitor. New problems
like instant-on gaps, data comingling, the difficulty of encrypting virtual machine images, and residual
data destruction are coming into focus.
This domain covers these security issues. While there are several forms of virtualization, by far the most
common is the virtualized operating system, and this is the focus in this version of our guidance.
Overview of VM security concerns
VM Guest Hardening
Proper hardening and protection of a virtual machine instance, including firewall (inbound/outbound),
HIPS, web application protection, antivirus, file integrity monitoring, log monitoring. Can be delivered
via software in each guest or using an inline virtual machine combined with hypervisor-based APIs such
as VMware Vshield APIs.
Hypervisor Security
The hypervisor itself needs to be locked down and hardened using best practices, with a primary
concern for enterprises and virtualization users being proper management, configuration and
operations, as well as physical security of the server hosting the hypervisor.
Inter-VM attacks and blind spots
Virtualization has a large impact on network security. Virtual machines now may communicate with
each other over a hardware backplane, rather than a network. As a result, standard network security
controls are blind to this traffic and cannot perform monitoring or in-line blocking. In-line virtual
appliances help to solve this problem, as does API-level integration with hypervisors and virtualization
Copyright © 2011 Cloud Security Alliance
management frameworks. Installing a full set of security tools on each virtual machine is another
approach.
Performance concerns
Installing security software designed for physical servers onto a virtualized server can result in severe
degradation in performance, as some security tasks like antivirus scanning are CPU-intensive. The shared
environment in virtualized servers leads to resource contention. Especially with virtual desktops or high
density environments, security software needs to be virtualization-aware or it needs to perform security
functions on a single virtual machine to support other virtual machines. The difference in density can be
as much as 20 times, depending on server loading and performance.
Operational complexity from VM sprawl
The ease with which VMs can be provisioned has led to an increase in the number of requests for VMs in
typical enterprises. This creates a larger attack surface and increases the odds of a misconfiguration or
operator error opening a security hole. Policy based management and use of a virtualization
management framework is critical.
Instant on gaps
The ease with which a virtual machine can be stopped or started, combined with the speed at which
threats change, creates a situation where a virtual machine can be securely configured when it is turned
off, but by the time it is started again, threats have evolved, leaving the machine vulnerable. Best
practices include network based security and “virtual patching” that inspects traffic for known attacks
before it can get to a newly provisioned or newly started VM. It is also possible to enforce NAC (Network
Access Control)-like capabilities to isolate stale VMs until their rules and pattern files are updated and a
scan has been run.
VM encryption
Virtual machine images are vulnerable to theft or modification when they are dormant or running. The
solution to this problem is to encrypt virtual machine images at all times, but there are performance
concerns at this time. For high security or regulated environments, the performance cost is worth it.
Encryption must be combined with administrative controls and audit trails to prevent a snapshot of a
running VM from “escaping into the wild,” which would give the attacker access to the data in the VM
snapshot.
Data comingling
There is concern that different classes of data (or VMs hosting different classes of data) may be
intermixed on the same physical machine. In PCI terms, we refer to this as a mixed-mode deployment.
We recommend using a combination of VLANs, firewalls, and IDS/IPS to ensure VM isolation as a
mechanism for supporting mixed mode deployments. We also recommend using data categorization
and policy based management to prevent this. In Cloud Computing environments, the lowest common
Copyright © 2011 Cloud Security Alliance
denominator of security could potentially be shared by all tenants in the multi-tenant virtual
environment.
VM data destruction
When a VM is moved from one physical server to another, enterprises need assurances that no bits are
left behind on the disk that could be recovered by another user or when the disk is deprovisioned.
Encryption of all data is the solution to this problem, with keys stored on a policy-based keyserver away
from the virtual environment. In addition, if a VM is migrated while it is running it may be at risk itself
during the migration if encryption is not used.
Virtual machine image tampering
Pre-configured virtual appliances and machine images may be misconfigured or may have been
tampered with before you start them.
Recommendations










Strategy and Architecture Identify which types of virtualization your cloud provider uses, if any.
Consider a zoned approach, with production separate from test/dev, and highly sensitive
data/workloads in different environments than low-need content.
Consider performance when testing and installing virtual machine security tools, as performance
varies widely. Virtualization-aware server security tools are important to consider.
VM-specific security mechanisms embedded in hypervisor APIs must be utilized to provide
granular monitoring of traffic crossing VM backplanes, which will be opaque to traditional
network security controls.
. Evaluate, negotiate and refine the licensing agreements with major vendors for virtualized
environment.
Update the security policy to reflect the new coming security challenges of virtualization if not
yet.
Be aware of multi-tenancy situations with your VMs where regulatory concerns may warrant
segregation.
Validate the pedigree and integrity of any VM image or template originating from any third
party, or better yet, create your own VM instances.
Virtualized operating systems should be augmented by built-in security measures, leveraging
third party security technology to provide layered security controls and reduce dependency on
the platform provider alone.
Virtualized operating systems should include firewall (inbound/outbound), Host Intrusion
Prevension System(HIPS), web application protection, antivirus, file integrity monitoring, and log
Copyright © 2011 Cloud Security Alliance











monitoring, etc. These can be delivered via software in each guest or using an inline virtual
machine combined with hypervisor-based APIs such as VMware vShield.
Secure by default configuration must be assured by following or exceeding available industry
baselines.
Encrypt virtual machine images when not in use, if possible.
Encrypt data accessed by virtual machines using policy-based key servers that store the keys
separately from the virtual machine and the data
Consider to implement data automated discovery and labeling at organization wide to augment
the data classification and control between virtual machines and environments.
Clean any backup and failover systems when destruction/wiping the VM images
Explore the efficacy and feasibility of segregating VMs and creating security zones by type of
usage (e.g., desktop vs. server), production stage (e.g., development, production, and testing)
and sensitivity of data on separate physical hardware components such as servers, storage, etc.
Vulnerability ManagementMake sure that the security vulnerability assessment tools or services
cover the virtualization technologies used.
Remember to patch the images at rest in time
Understand which security controls are in place external to the VMs to protect administrative
interfaces (web-based, APIs, etc.) exposed to the customers.
Administrative access and control of virtualized operating systems is crucial, and should include
strong authentication integrated with enterprise identity management, as well as tamper-proof
logging and integrity monitoring tools.
Have a reporting mechanism in place that provides evidence of isolation and raises alerts if
there is a breach of isolation.
Copyright © 2011 Cloud Security Alliance
Additional Comments
Copyright © 2011 Cloud Security Alliance
Download