Introduction To Infrastructure Security For Cloud Computing
Introduction To Infrastructure Security For Cloud Computing
Cloud Computing
Macro Layers
A good way to think about the aspect of infrastructure security is via the macro layers.
Starting from the base infrastructure, which houses the facilities, system, and the
actual servers, there is a lot of security issues here. The base infrastructure also
includes the operating systems, and the different software components, database
systems and storages that make up the cloud.
Above that, is the virtualized infrastructure. If you have a virtual network as a cloud
consumer, you are going to configure that virtual network properly. But as a provider,
your task is to configure the virtualization properly. At the top layer, we have the
management plane, which is the glue that will tie up the cloud together.
Cloud Infrastructure Security Overview
Software Defined Networking is very different from the traditional type of networking
because what SDN does is to decouple the management plane from the underlying
physical infrastructure. So, if you think about how hypervisors virtualized VMs or
virtualized computers, SDN is what we used to virtualized a physical network. It allows
us to mix and match the pieces of networking without being restricted to the underlying
physical topology.
OpenFlow is an example of an enabling technology for SDN. There are other different
kinds of SDN that are out there but some cloud providers make their own type of SDN
that suits them. All SDN is essentially API-enabled that gives us a broad access, the
ability to control the network remotely from other networks. It allows customers the
flexibility to define their own networks, but it is also critical for the cloud providers
because it is the only way to build multitenancy.
Software multitenancy is a software architecture in which a single instance of software
runs on a server and serves multiple tenants. Systems designed in such manner are
"shared".
SDN Security Benefits
SDN brings a lot of benefits. One of the most obvious is easier isolation because of
the way things are encapsulated and routed around the SDN, you can have as many
of these networks running as your physical networks that can talk and see each other.
This is good for consumers
The other benefit is that your topology is not limited to your physical structure. For
example, you can put multiple overlapping virtual networks, even with the same
address ranges, on the same physical network.
On the security side, SDN Firewalls or Security Groups are programmable. They are
also Sofware defined and they are built-in. You can just program your network to drop
traffic that is not approved. They have default deny, they can be orchestrated and
automated. They have the granularity of a host firewall with the manageability of a
network firewall appliance.
SDN Firewalls / Security Groups
Cloud Network Security
Controlling Blast Radius with Virtual Networks and Cloud Account / Sub Account
/ Subscription Isolation
One of the biggest security advantages in the cloud is leveraging the inherent isolation
of the cloud environment to reduce the blast radius of an attack. We can do this in a
few different levels. One is, if you have multiple cloud accounts, if an attacker breaks
out on one of those accounts, they are not going to expand into other accounts. This
is not something we do to datacenters, because we really don’t have the funds to build
multiple datacenters and isolate them from each other.
But in the cloud, there is no cost typically for opening a new account. There is only a
cost for what you deploy to that account. It allows us to have a lot of smaller accounts
isolated from each other. Then, within the given account, we can have multiple virtual
networks. In SDN, you can have 5 networks with the same IP address range, all
running on the same account, that are allowed to talk to each other. That would control
the network blast radius.
One thing we really need to be aware of is that we cannot monitor virtual network the
way we monitor a physical network. A physical network has instances, machines,
servers talking to each other and we can tap on it to listen to the network traffic. We
have a lot of technology like spanning mirror port and other built in infrastructure to
enable this.
But in a virtual network, we have multiple virtual machines, multiple servers running
on top of the same physical server. And if an instance wants to talk to another instance
and they both locate to the same server, that traffic will not leave that server. We can’t
actually use the technology that we use for physical network to listen to the traffic.
However, we can use a special software agent or route that traffic to the physical
network, but this method is ineffective. What we can see here is it is much harder to
make a full packet capture on a virtual network. Gaining an isolation loses network
visibility but puts better security on a network.
• Server Configuration - template for tool like chef, puppet, salt or ansible that
defines what the server is going to look like. This tool will configure the base
OS to match the server configuration.
• Image/Container Configuration - includes additional details about what you
are trying to build.
• Source Code - application codes if your are deploying an application.
• Version Control Repository - all of the configuration files are stored here. If
any file text may be changed, that updates the current version in the repository.
Also includes all the history of all changes done.
• Continuous Integration Server - any changes done in the text file will spin off
the continuous integration server and will perform security checks. It will
evaluate the text files and look at them and will run both pre and post tests on
the Master Image to make sure it complies with the security requirements. The
image can be deployed for productions once it was approved.
Provider and Consumer Responsibilities
Management Plane
The Management Plane is how you access and control your cloud. It is the
metastructure and the way to administer everything in the cloud. It is how we manage
and provision our resources, stop/start the differen services, and configure various
resources in your environment.
There are three main things in the Management Plane:
• Authentication
• Access Control
• Logging/Monitoring
The management is the literal key to your private cloud and must be protected at all
times.
There are two ways to access the management plane:
• Web Console Access
o password
o federation
o enable multi-factor authentication (MFA)
• API Level Acces
o different credentials
o HTTP signing
o Tokens
o OAuth/SAML
Root Account
The root account is the owner account. It is the first account that you have if you set
up a cloud environment and it is the most important account because if someone has
the access to that account, they have full ownership of that cloud deployment. This is
the most critical account that needs security.
Recommendations:
• Enable MFA
o store in a locked, centralized location
• Use isolated credentials - a designated email address or user account not used
for anything else
o use a name with a random seed if possible to reduce phishing
• If available, use account security questions
o record and store securely
• Never use account except for emergencies
Privileged Users
Monitoring Activities for Administrators
Business Continuity / Disaster Recovery