Security is a Big Issue, But it Shouldn't Scare you Away from Utilizing Cloud Computing Services
Cloud is great for business. The hype seems to be turning into reality. Is it a reincarnation of the old ASP (Application Service Provider) model? May be. But, it’s real and corporations are jumping on the bandwagon. With the total market size from various analyst firms ranging from $10B to $25B, the numbers are heady. These numbers are forecasted to grow at a double digit compounded growth rate over the next few years. Cost and flexibility are certainly key in driving this ferocious appetite for cloud computing. But, as we know very well from social networking, security can be a thorn in the rosy outlook.
But, before we dive into security issues related to Cloud, let’s start with the basics.
The word “Cloud” most likely was derived from the image of Cloud that was commonly used for the Internet. So Cloud Computing basically means doing all or most of the computing in the Internet without relying on physical resources.
So, let’s now look at Cloud. There are many confusing definitions floating around but I think probably the clearest definitions have been established by NIST and Cloud Security Alliance.
Software as a Service (SaaS): In case of SaaS, you use the provider’s applications on a cloud infrastructure with little to no control over the infrastructure, network, servers, operating systems, storage,etc. There are many examples of SaaS vendors – Salesforce.com, Google Apps, Ning, Cenzic, etc.
Platform as a Service (PaaS): Customer deploys applications using an application development environment and middleware capabilities for specific languages like java, python, .net etc. and doesn’t control infrastructure, servers, OS, or storage but has control over the apps. Some examples of PaaS vendors include Microsoft Azure, Amazon, Force.com
Infrastructure as a Service (IaaS): Customer gets processing, APIs, storage, networks, and computing resources from the provider using his own OS, applications and may be some networking components. Some examples of IaaS vendors include Amazon, Rackspace, CloudFoundry.
The lower down the stack you go, the more security capabilities customer is responsible for.
Cloud Characteristics While a lot of people are claiming to be a “cloud” provider, the key characteristics that are important for Cloud are:
Self-Service – Customers must be able to self-service to get the service.
Network Access – Customers have be to be able to access the service over the network versus on an on-premise hardware.
Multi-tenancy – The provider must allow for an environment with multi-tenancy i.e. multiple customers are sharing a common environment. That’s what helps in optimizing the costs.
Scalability – Cloud solution has be to scalable with thousands or even millions of customers using the service over the network.
Usage Metrics – Usage metrics have to be visible and tracked
With so many companies jumping on the bandwagon, there must be some benefit. In fact, Cloud can be very powerful and offers many benefits. Cloud leverages Massive Scale, Homogeneity, Virtualization, Low cost software, Service orientation, and Advanced security technologies resulting a lot of benefits for the customers some of which include:
Reduced Cost – This is perhaps the biggest benefit from customers’ point of view. Economies of scale allow vendors to reduce the cost dramatically. Currently, servers are used at only 15% of their capacity in many companies and 80% of enterprise software expenditure is on installation and maintenance of software. Use of cloud applications can reduce costs from 50% to 90%
More Mobility – By definition Cloud can be accessed from anywhere which allows mobility in using the information.
Flexibility to Adjust – Flexibility or elasticity to use the service based on your needs and scale up as needed is a huge advantage.
Increased Storage – Storage in Cloud is cheap and you are only using what you need to.
Leverage vendor Expertise – Assuming you pick the right vendor, you can leverage the vendor expertise and have your IT focus on other critical issues.
In most surveys for Cloud services, top issues continue to be security, performance, and availability. These are all good concerns and need to be addressed. Performance and availability are big issues because as soon as you move your services from your environment where you can touch and feel things to out there literally in the Cloud, there could be some impact. Make sure that your Service Level Agreements (SLAs) from Cloud providers are very clear on these issues.
Security continues to be the # 1 issue and that’s what we’ll address in detail here.
The key security issues from customers’ point of view seem to be around security defects in the technology itself, unauthorized access to customer information, encryption, application security, identity management, virtualization security etc.
Responsibility for security issues depends on which tier of cloud offering you are using. So, for IaaS, vendor responsibility is around physical, environmental, and virtualization security. Every other aspect of security in applications, operating system, etc. still needs to be handled by the customer. On the other hand if you are using a SaaS offering, the vendor is responsible for all elements of security. Here are the key issues to keep in mind with some recommendations:
• Physical Security – You want to make sure that physical security around the infrastructure is very tight – even tighter than in your environment because it’s not your employees anymore.
What to do – Ask your provider for the physical security policies. Every cloud vendor should have a clear architecture related to their physical security. What type of layout they have? Who can access what? Are you allowed to do periodic visits to see their physical structure? What happens in case of a disaster like Earthquake, hurricane, etc.?
• Insider Abuse – When you “cloudize” your environment, you lose control over who’s managing that infrastructure with your confidential information. Insider abuse is a common problem where information can be stolen and passed on to outsiders or they can collude with hackers.
What to do – Ask your cloud provider what their policy is for background checks of all their employees. Who has access to sensitive information? If a lot of employees have access to sensitive information, your risk of insider abuse is much higher. Do they have any hacking background or past felonies?
• Data Encryption – Cloud environments are shared and your data is in the same environment alongside data from other customers. Breaches can easily happen from one database to another.
What to do – Find out how do Cloud Providers protect sensitive data in storage infrastructure? What kinds of logs are available? How is the data encrypted? Although encryption is not a panacea and other issues like access control are very important, it’s an extremely important element of data protection. Data needs to be encrypted at rest, in transition, and for disposition. How’s the key management handled?
• Third party Relationships – You are as strong as your weakest link. And, in corporate environments, your weakest link could be your integration with your partners. In case of Cloud providers, this is even more important due to integrations of various third parties and applications into the Cloud environment.
What to do – Find out how do Cloud Providers enforce security processes for their integrations with third parties? Is there a certification process to make sure that third party applications are secure and won’t allow hackers to get into the Cloud Provider environment through one of these partners?
• Network Security – In the recent months, aggressive marketing by various Cloud providers have made it easier for hackers to get accounts and plant botnets. Cloud is also susceptible to a lot more Denial of Service attacks. Cloud Providers need to ensure that their perimeter is secure and barrier to attacks is high.
What to do – Find out what devices are the Cloud Providers using to stop bad guys from getting in through the perimeter? Do they have strong network firewalls? How are they kept updated? Do they have good IDS/IPS systems in place? How do they monitor the events? Do they have a SIEM or Log Management software in place?
• Virtualization Security – Almost all Cloud providers use virtualization to provide economies of scale and optimal distributed architecture. Virtualization has its own set of security issues.
What to do – Find out what security process do they have for their virtualization environment. How are they testing for vulnerabilities and fixing them?
• Access Controls – Some of the big issues for Cloud services are around access control, authentication, user management, provisioning etc.
What to do – Find out how what types of standards is the Cloud provider following? How’s the provisioning of users done? Who manages the credential management process? How much control do you have? Is there a dedicated VPN? Is there a federated identity process and how’s that managed? Can OpenIDs be used for registration and authentication?
• Application Security – With over 75% of attacks happening through Web applications, this becomes a critical piece in the overall cloud decision making process. Although the exposure is similar to what you would have in your own environment, it’s on a massive scale and you may not have any control over it.
What to do – Questions to ask and consider: Does security ownership transfer to the infrastructure provider? What’s the impact on security in the SDLC? How do you ensure protection against key vulnerabilities like XSS, SQL Injection, CSRF, Session Management etc.? What happens in case of a breach? Who’s responsible? What are the security issues around APIs (integration is very important when you move to Cloud) and what kind of encryption keys are used for these integrations? Does the Cloud provider use vulnerability scanning tools and services to find vulnerabilities in applications? What is the process of remediating or blocking those vulnerabilities? Would the Cloud provider allow you to run your own vulnerability assessment tools?
Cloud Computing offers a lot of benefits. Although Security is a big issue, it should not scare you away from using Cloud that can save you a lot of money and resources. The key is to do proper due diligence with your Cloud Providers and really understand their Service Level Agreements (SLAs). Ask the right questions and take your time in selecting the right provider for you based on your requirements and risk appetite. You should definitely jump on this exciting car ride. Just make sure you are secure with your seatbelt on.