Sie sind auf Seite 1von 27

Chapter 1

Introduction
1.1

Introduction

Cloud computing is defined as the practice of using a network of remote servers hosted on the
Internet to store, manage, and process data, rather than a local server or a personal computer.
Cloud computing is a model for enabling ubiquitous network access to a shared pool of
configurable computing resources.
Cloud computing and storage solutions provide users and enterprises with various capabilities to
store and process their data in third-party data centers.
It focuses on maximizing the effectiveness of the shared resources. Cloud resources are usually
not only shared by multiple users but are also dynamically reallocated per demand.
Cloud computing enables companies to consume compute resources as a utility- just like
electricity- rather than having to build and maintain computing infrastructures in-house.
Cloud computing promises several attractive benefits for businesses and end users. Three of the
main benefits of cloud computing include:
Self-service provisioning: End users can spin up computing resources for almost any type of
workload on-demand.
Elasticity: Companies can scale up as computing needs increase and then scale down again as
demands decrease.
Pay per use: Computing resources are measured at a granular level, allowing users to pay only
for the resources and workloads they use.
Cloud service models

Infrastructure as a Service (IaaS)

The capability provided to the consumer is to provision processing, storage,


networks, and other fundamental computing resources where the consumer is able
to deploy and run arbitrary software, which can include operating systems and
applications.

The consumer does not manage or control the underlying cloud infrastructure but
has control over operating systems, storage, deployed applications, and possibly
limited control of select networking components .

Examples:

Amazon EC2

OpenNebula

System Architecture for Infrastructure as a service

Platform as a Service (PaaS)

The capability provided to the consumer is to deploy onto the cloud infrastructure
consumer-created or acquired applications created using programming languages
and tools supported by the provider.

The consumer does not manage or control the underlying cloud infrastructure
including network, servers, operating systems, or storage, but has control over the
deployed

applications

and

possibly

configurations.

Examples:

Microsoft Windows Azure

Google App Engine

System Architecture for Platform as a Service

application

hosting

environment

Software as a Service (SaaS)

The capability provided to the consumer is to use the providers applications


running on a cloud infrastructure. The applications are accessible from various
client devices through a thin client interface such as a web browser (e.g., webbased email).

The consumer does not manage or control the underlying cloud infrastructure
including network, servers, operating systems, storage, or even individual
application capabilities, with the possible exception of limited user-specific
application configuration settings.

Examples:

Google Applications (gmail, google docs, google sites etc.)

System Architecture for Software as a Service

Cloud Deployment Models

Public Cloud

The cloud infrastructure is made available to the general public or a large industry
group and is owned by an organization selling cloud services.

Also known as external cloud or multi-tenant cloud, this model essentially


represents a cloud environment that is openly accessible.

Basic characteristics :

Homogeneous infrastructure

Common policies

Shared resources and multi-tenant

Leased or rented infrastructure

Economies of scale

Private Cloud

The cloud infrastructure is operated solely for an organization. It may be managed


by the organization or a third party and may exist on premise or off premise.

Also referred to as internal cloud or on-premise cloud, a private cloud


intentionally limits access to its resources to service consumers that belong to the
same organization that owns the cloud.

Basic characteristics :

Heterogeneous infrastructure

Customized and tailored policies

Dedicated resources

In-house infrastructure

End-to-end control

Hybrid Cloud

The cloud infrastructure is a composition of two or more clouds (private,


community, or public) that remain unique entities but are bound together by
standardized or proprietary technology that enables data and application
portability.

1.2 Background and Motivation


1.2.1 Background:
Cloud:
A Cloud is a type of parallel and distributed system consisting of a collection of
interconnected and virtualized computers that are dynamically provisioned and presented as one
or more unified computing resources based on service-level agreements established through
negotiation between the service provider and consumers.

Software as a Service:
Software as a Service (SaaS) is a software distribution model in which applications are
hosted by a vendor or service provider and made available to customers over a network, typically
the Internet.

Cloud Management:
Software and technologies designed for operating and monitoring the applications, data
and services residing in the cloud. Cloud management tools help ensure a company's cloud
computing-based resources are working optimally and properly interacting with users and other
services.

Cloud Computing:
A type of computing, comparable to grid computing that relies on sharing computing resources
rather than having local servers or personal devices to handle applications. The goal of cloud
computing is to apply traditional supercomputing, or high-performance computing power,
normally used by military and research facilities, to perform tens of trillions of computations per
second, in consumer-oriented applications such as financial portfolios or even to deliver
personalized information, or power immersive computer games.
6

Cloud Storage:
Cloud storage means "the storage of data online in the cloud," wherein a company's data is stored
in and accessible from multiple distributed and connected resources that comprise a cloud.

1.2.2 Related Work


Software as a Service (SaaS) is the most prevalent service delivery mode for cloud
systems. In SaaS, an application is hosted by a service provider and then accessed via the World
Wide Web by a client.

The application component of SaaS are the applications offered by service providers.
Service providers deliver SaaS applications to customers over a network. The customer can
access applications via a web browser, thin client, terminal, etc.

SaaS security level depends upon which type of deployment model is used by the
vendors. Vendor can use public cloud for deployment or they can host the service by themselves
only. SaaS security mainly depends on the security of the public cloud, which can either be
dedicated or shared. To make the SaaS more secured, public cloud or self-hosted cloud should be
secured. While evaluating SaaS, its deployment type should be considered more secured.
Donghoon Kim and Mladen A. Vouk, in their paper titled A survey of common security
vulnerabilities and corresponding countermeasures for SaaS, the common security
vulnerabilities and corresponding countermeasures for SaaS have been surveyed. The paper
focuses primarily on the work published in the last five years. It is observed that the current SaaS
security trends and a lack of sufficiently broad and robust countermeasures in some of the SaaS
security area such as Identity and Access management due to the growth of SaaS applications.

Two major trends in the context of SaaS security have also been observed in this paper.
First, the Internet is in transition from HTTP to HTTPS as use of sensitive data increases.
7

However, it should be noted that HTTPS protocol must be applied from the very first connection
establishment until the termination to guarantee secure communication.
Second, BYOI is the current trend after BYOD. An increasing BYOD trend has incurred identity
fatigue (i.e., users have too many online ID to manage), which has created BYOI that gives users
the ability to use one of their existing social media IDs to access enterprise services
The paper provided an overview of security landscape of SaaS delivery model.

Acklyn Murray, Geremew Begna, Ebelechukwu Nwafor, Jeremy Blackstone, Wayne Patterson,
in their paper titled Cloud Service Security & Application Vulnerability, have called the cloud
as one of todays most appealing technology areas due to its cost-efficiency and flexibility. The
paper says that for Successful implementation of cloud computing in an enterprise requires
proper planning and understanding of emerging risks, threats, vulnerabilities, and possible
countermeasures. This paper discusses security concerns of the cloud computing model namely
Software as a Service. It also discusses Cloud-based Security Tools currently available today.
The paper also discusses Cloud Data Encryption, Homomorphic Encryption and Access
Control (Identity Access Management). Finally, this paper talks about cloud applications
focusing on select cloud applications. It also looked at some of the known vulnerability issues
associated with the applications and also the future of cloud applications.
This paper defines cloud computing as a collection of IT resources (servers, databases,
and applications) which are available on an on-demand basis, provided by a service company,
available through the internet, and provide resource pooling among multiple users. The papers
briefly states the 5 essential characteristics of cloud models: on demand service, broad network
access, resource pooling, rapid elasticity and measured service.
The paper then discusses the various security concerns of cloud computing. In SaaS, the
client has to depend on the provider for proper security measures. The provider must do the work
to keep multiple users from seeing each others data. So it becomes difficult to the user to
ensure that right security measures are in place and also difficult to get assurance that the
application will be available when needed.
The following key security elements should be carefully considered as an integral part of the
SaaS application development and deployment process:
8

Data security-in the SaaS model, the enterprise data is stored outside the enterprise
boundary.

Network security-in a SaaS deployment model, sensitive data is obtained from the
enterprises processed by the SaaS application and stored at the SaaS vendor end.

Data locality-in a SaaS model of a cloud environment, the consumer does not know
where the data is getting stored.

Data integrity-Data integrity is one of the most critical elements in any system

Data segregation -Multi-tenancy is one of the major characteristics of cloud computing.


In such a situation, data of various users will reside at the same location.

Data access -Data access issue is mainly related to security policies provided to the users
while accessing the data.

Authentication and authorization-the software is hosted outside of the corporate firewall.

Data confidentiality issue-Cloud computing involves the sharing or storage by users of


their own information on remote servers owned or operated by others and accessed
through the internet or other connections.

Web application security-Data breaches, Vulnerability, Availability, Backup and Identity


management and sign-on process-Identity management (IdM) or ID management are
other concerns of SaaS.

The paper also gave a few case studies of the attacks that have happened in the past on various
cloud systems.
Ankit Banka, Anshul Saravgi, Mangal Sain, Hoon Jae Lee, in their paper titled
Exploration of Security Parameters to Evaluate SaaS they have considered that the SaaS is
becoming the most common software delivery model for many business application, DBMS
Software, management software and virtualization. Users deploy SaaS for different purposes,
they are not aware about which one is suitable for them in terms of security, performance and
storage capacity. The data privacy and service availability in cloud computing are major security
problems. The paper proposed a system that addressed security challenges in context to SaaS.
The development of such system will help users to judge different cloud computing services
(SaaS) with respect to security issues, concerns and challenges of security in the cloud. On the
other hand, vendors will able to identify the level of their service based on security parameters
9

and basic requirements of SaaS. This paper proposes that the software as service evaluation
parameters can be categorized into 6 parts i.e. SaaS Deployment model, Data security and
Integrity, Regulatory compliance, Availability, Backup, Identity management and Sign-on
process. SaaS vendor offers different and various important services to the customers but,
vendors should also address the issues and parameters related to security, performance and cost.
This paper discussed several parameters and fundamental requirements for a secure SaaS vendor.
Ms. Shaheen Ayyub, Mr. Praveen Kaushik, in their paper titled, An analysis of Security Attacks
on Cloud wrt SaaS, identify different security attacks on cloud. More specifically the paper
presents an elaborated study of SaaS components security and determines vulnerabilities and
countermeasures. They have defined the cloud system as a large group of interconnected
computers. These computers can be personal computers or network servers; they can be public or
private.

While many traditional threats are encountered effectively, a number of security

challenges and unchartered risks have been introduced to the clouds. There are many queries that
arise as to whether a cloud is secure enough. Considering intruders there are many kinds of
possible attacks, such as Denial of service attacks, Side Channel attacks Authentication attacks,
Man-in-the-Middle Cryptographic attacks, Wrapping attacks, Malware-Injection attacks,
Flooding attacks, Browser attacks, and also Accountability checking problems. There is a critical
need to securely store, manage, share and analyze massive amounts of complex (e.g., semistructured and unstructured) data to determine patterns and trends in order to improve the quality
of healthcare, better safeguard the nation and explore alternative to provide solutions to detect
top attack types using machine learning techniques. The paper aims at identifying and analyzing
the different types of attacks on the cloud environment.

In the SaaS model, enterprise data is stored at the SaaS provider's data center, along with
the data of other enterprises. Moreover, if the SaaS provider is leveraging a public cloud
computing service, the enterprise data might be stored along with the data of other unrelated
SaaS applications. The cloud provider might, additionally, replicate the data at multiple locations
across countries for the purposes of maintaining high availability. The paper explains SaaS
specific security challenges and how contemporary security testing can ensure that the challenges
are met. The fig below shows a simple cloud security structure.
10

The paper then discusses the attacks associated with the SaaS model. The most common
attacks associated with SaaS model in a public cloud infrastructure are divided into the following
four groups:
(i) Availability,
(ii) Data Security,
(iii) Network Security,
(iv) Identity Management

Availability based attacks are:


1) Denial of Service:
Denial of Service means many nodes systems attacking one node all at the same
time with a flood of messages. It is the matter of argument for professionals that
the cloud is more vulnerable to DoS attacks, because it is shared by many users,
which makes DoS attack much more damaging. When the Cloud Computing
operating system notices the high workload on the flooded service, it will start to
provide more computational power means more service instances, more virtual
11

machines to cope with the additional workload. Thus, the server hardware
boundaries for maximum workload to process do no longer hold. Sometimes the
attacker can inject and execute arbitrary code while performing a DoS attack in
order to access critical information or execute commands on the server. Denial-ofservice attacks significantly degrade service quality experienced by legitimate
users. It introduces large response delays, excessive losses, and service
interruptions, resulting in direct impact on availability.
2) Account Lockout :
In an account lockout attack, an attacker attempts to lock out user accounts by
purposely failing the authentication process as many times as needed to trigger the
account lockout functionality. This in turn prevents even the valid user from
obtaining access to their account. For example, if an account lockout policy states
that users are locked out of their accounts after three failed login attempts, an
attacker can lock out accounts by deliberately sending an invalid password three
times.

3) Buffer over Flow:


Using this attack the attacker overflows a buffer in the program. In particular, the
stack is where a function stores the return address of the function that called it. If
a buffer is located on the stack, then an overflow may allow the attacker to
overwrite the return address, which will allow the attacker to take over the
program.

Data Security based attacks are:


1) Cross Site Scripting:
Cross Site Scripting is one of the most common application level attacks that
hackers use to sneak into web applications today. Cross site scripting is an attack
on the privacy of clients of a particular web site which can lead to a total breach
of security when customer details are stolen or manipulated. Unlike most attacks,
which involve two parties the attacker, and the web site, or the attacker and the
victim client, the CSS attack involves three parties the attacker, a client and the
12

web site. The goal of the CSS attack is to steal the client cookies, or any other
sensitive information, which can identify the client with the web site. With the
token of the legitimate user at hand, the attacker can proceed to act as the user in
his/her interaction with the site specifically, impersonate the user.
There are two ways for users to become infected by XSS attacks. Users are either
tricked into clicking on a specially crafted link (Non-Persistent Attack) or,
unknowingly attacked by simply visiting a Web page embedded with malicious
code (Persistent Attack). Its also important to note that a
Users Web browser or computer does not have to be susceptible to any wellknown vulnerability. This means that no amount of patching will help users, and
we become solely dependent on a websites security procedures for online safety.
Browser vendors, software developers and information security professionals
working with Web applications are the key to stopping this entirely preventable
attack.

2) Access Control Weakness:


Access controls are a critical defense mechanism within the application because
they are responsible for making the decision of whether it should permit a given
request to perform its attempted action of access the resources that it is requesting.
When they are defective, an attacker can often compromise the entire application,
taking control of administrative functionality and accessing sensitive data
belonging to every other user. Access control attacks are among the most
commonly encountered categories of web application vulnerability. There are two
types of access controls firstly Vertical access control and the secondly Horizontal
access control. Vertical Access Controls allow different types of users to access
different parts of the applications functionality. Horizontal Access Controls allow
users to access a certain subset of a wider range of resources of the same type.
Access controls are broken if any user is able to access functionality or resources
for which he is not authorized.

13

3) Privilege Escalation :
A privilege escalation attack is a type of network intrusion that takes advantage of
programming errors or design flaws to grant the attacker elevated access to the
network and its associated data and applications.
Not every system hack will initially provide an unauthorized user with full access
to the targeted system. In those circumstances privilege escalation is required.
There are two kinds of privilege escalation: vertical and horizontal.

privileges. This is typically achieved by performing kernel-level operations that


allow the attacker to run unauthorized code.
acker to use the same level of
privileges he already has been granted, but assume the identity of another user
with similar privileges. For example, someone gaining access to another person's
online banking account would constitute horizontal privilege escalation.

Network Security based attacks are:


1) Network Penetration:
It is an attack on a computer system with the intention of finding security
weaknesses, potentially gaining access to it, its functionality and data. The
process involves identifying the target systems and the goal, then reviewing the
information available and undertaking available means to attain the goal.

2) Session Hijacking:
Session Hijacking is when a hacker takes a control of a user session after the user
involves an attack identifying the current session IDs of a client/server
communication and taking over the clients session. Session Hijacking involves the
following three steps to an attack:

Tracking the Session: In this the hacker identifies an open session and predicts
the sequence number of the next packet.

Desynchronizing the Connection: The hacker sends the valid users system a
TCP reset or finish packet to cause them to close their session.
14

Injecting the Attackers Packet: The sends the server a TCP packet with the
predicted sequence number and the server accept it as the valid users next
packet.

3) Data Packet Interception

Identity Management based attacks are:


1) Authentication Weakness:
Authentication is a weak point in hosted and virtual services and is frequently
targeted. There are many ways by which a user can be authenticated. The
mechanisms used to secure the authentication process and the methods used are a
frequent target of attackers. If we talk about Saas, IaaS and Paas architecture,
there is only IaaS which provides this type of protection and data encryption.

2) Insecure Trust:
Identity management refers to the process of representing and recognizing entities
as digital identities in computer networks. Different identity management models
will have different trust requirements. Since there are costs associated with
establishing trust, it will be an advantage to have identity management models
with simple trust requirements.

1.2.3 Motivation and Challenges


Cloud computing is one of the most valuable innovations for business, providing cheap,
virtual services that once required expensive, local hardware. We place almost everything in the
cloud, knowing very little about how secure the data is.
Cloud computing security or, more simply, cloud security is an evolving sub-domain
of computer security, network security, and, more broadly, information security. It refers to a
broad set of policies, technologies, and controls deployed to protect data, applications, and the
associated infrastructure of cloud computing.
15

Organizations use the Cloud in a variety of different service models (SaaS, PaaS,
and IaaS) and deployment models (Private, Public, Hybrid, and Community). There are a
number of security issues/concerns associated with cloud computing but these issues fall into
two broad categories: security issues faced by cloud providers (organizations providing software, platform-, or infrastructure-as-a-service via the cloud) and security issues faced by their
customers (companies or organizations who host applications or store data on the cloud). The
responsibility goes both ways, however: the provider must ensure that their infrastructure is
secure and that their clients data and applications are protected while the user must take
measures to fortify their application and use strong passwords and authentication measures.
When an organization elects to store data or host applications on the public cloud, it loses
its ability to have physical access to the servers hosting its information. As a result, potentially
business sensitive and confidential data is at risk from insider attacks. According to a recent
Cloud Security Alliance Report, insider attacks are the third biggest threat in cloud
computing. Therefore, Cloud Service providers must ensure that thorough background checks
are conducted for employees who have physical access to the servers in the data center.
Additionally, data centers must be frequently monitored for suspicious activity.
In order to conserve resources, cut costs, and maintain efficiency, Cloud Service
Providers often store more than one customer's data on the same server. As a result, there is a
chance that one user's private data can be viewed by other users (possibly even competitors). To
handle such sensitive situations, cloud service providers should ensure proper data isolation and
logical storage segregation.
The extensive use of virtualization in implementing cloud infrastructure brings unique
security concerns for customers or tenants of a public cloud service. Virtualization alters the
relationship between the OS and underlying hardware - be it computing, storage or even
networking. This introduces an additional layer - virtualization - that itself must be properly
configured, managed and secured. Specific concerns include the potential to compromise the
virtualization software, or "hypervisor". Thus in order to mitigate these attacks, adequate security
measures need to be applied and implemented.

16

1.3 Statement of the Problem


a. Cloud services run a number of shared services, including threat detection, encryption,
and content classification.
b. Cloud services are used for various purposes such as storing information and performing
computations online.
c. Over time the cloud accumulates crucial information about its users.
d. Due to the extensive use of cloud technology, it is essentially important to provide
adequate security and prevent data from being compromised along with preserving its
integrity.
e. The main goal of this of this project is to study the various types of attacks on the SaaS
system and their countermeasures.
f. Develop a tool to provide application level security in order to prevent attacks on SaaS
g. Provide mobility and gap free security to the users on the cloud.

17

1.4 Modules of the Proposed System

1.5 Conclusion
This chapter has given a brief introduction of the cloud environment, the different types
of cloud environments and the three deployment methods namely, Software as a Service,
Infrastructure as a Service and Platform as a Service. This chapter then discusses the work that
has been done on security issues for Software as a Service along with a brief description of the
issues. Some methods to provide security to SaaS system have also been discussed in this
chapter.

18

Chapter 2
Literature Survey
2.1 Literature Survey
Software as a Service (SaaS) is the most prevalent service delivery mode for cloud systems. In
SaaS, an application is hosted by a service provider and then accessed via the World Wide Web
by a client.

The application component of SaaS are the applications offered by service providers.
Service providers deliver SaaS applications to customers over a network. The customer can
access applications via a web browser, thin client, terminal, etc.
SaaS security level depends upon which type of deployment model is used by the
vendors. Vendor can use public cloud for deployment or they can host the service by themselves
only. SaaS security mainly depends on the security of the public cloud, which can either be
dedicated or shared. To make the SaaS more secured, public cloud or self-hosted cloud should be
secured. While evaluating SaaS, its deployment type should be considered more secured.
Donghoon Kim and Mladen A. Vouk, in their paper titled A survey of common security
vulnerabilities and corresponding countermeasures for SaaS, the common security
vulnerabilities and corresponding countermeasures for SaaS have been surveyed. The paper
focuses primarily on the work published in the last five years. It is observed that the current SaaS
security trends and a lack of sufficiently broad and robust countermeasures in some of the SaaS
security area such as Identity and Access management due to the growth of SaaS applications.

Two major trends in the context of SaaS security have also been observed in this paper.
First, the Internet is in transition from HTTP to HTTPS as use of sensitive data increases.
However, it should be noted that HTTPS protocol must be applied from the very first connection
establishment until the termination to guarantee secure communication.
Second, BYOI is the current trend after BYOD. An increasing BYOD trend has incurred identity
fatigue (i.e., users have too many online ID to manage), which has created BYOI that gives users
the ability to use one of their existing social media IDs to access enterprise services
19

The paper provided an overview of security landscape of SaaS delivery model.

Acklyn Murray, Geremew Begna, Ebelechukwu Nwafor, Jeremy Blackstone, Wayne Patterson,
in their paper titled Cloud Service Security & Application Vulnerability, have called the cloud
as one of todays most appealing technology areas due to its cost-efficiency and flexibility. The
paper says that for Successful implementation of cloud computing in an enterprise requires
proper planning and understanding of emerging risks, threats, vulnerabilities, and possible
countermeasures. This paper discusses security concerns of the cloud computing model namely
Software as a Service. It also discusses Cloud-based Security Tools currently available today.
The paper also discusses Cloud Data Encryption, Homomorphic Encryption and Access
Control (Identity Access Management). Finally, this paper talks about cloud applications
focusing on select cloud applications. It also looked at some of the known vulnerability issues
associated with the applications and also the future of cloud applications.
This paper defines cloud computing as a collection of IT resources (servers, databases,
and applications) which are available on an on-demand basis, provided by a service company,
available through the internet, and provide resource pooling among multiple users. The papers
briefly states the 5 essential characteristics of cloud models: on demand service, broad network
access, resource pooling, rapid elasticity and measured service.
The paper then discusses the various security concerns of cloud computing. In SaaS, the
client has to depend on the provider for proper security measures. The provider must do the work
to keep multiple users from seeing each others data. So it becomes difficult to the user to
ensure that right security measures are in place and also difficult to get assurance that the
application will be available when needed.
The following key security elements should be carefully considered as an integral part of the
SaaS application development and deployment process:

Data security-in the SaaS model, the enterprise data is stored outside the enterprise
boundary.

Network security-in a SaaS deployment model, sensitive data is obtained from the
enterprises processed by the SaaS application and stored at the SaaS vendor end.

20

Data locality-in a SaaS model of a cloud environment, the consumer does not know
where the data is getting stored.

Data integrity-Data integrity is one of the most critical elements in any system

Data segregation -Multi-tenancy is one of the major characteristics of cloud computing.


In such a situation, data of various users will reside at the same location.

Data access -Data access issue is mainly related to security policies provided to the users
while accessing the data.

Authentication and authorization-the software is hosted outside of the corporate firewall.

Data confidentiality issue-Cloud computing involves the sharing or storage by users of


their own information on remote servers owned or operated by others and accessed
through the internet or other connections.

Web application security-Data breaches, Vulnerability, Availability, Backup and Identity


management and sign-on process-Identity management (IdM) or ID management are
other concerns of SaaS.

The paper also gave a few case studies of the attacks that have happened in the past on various
cloud systems.
Ankit Banka, Anshul Saravgi, Mangal Sain, Hoon Jae Lee, in their paper titled
Exploration of Security Parameters to Evaluate SaaS they have considered that the SaaS is
becoming the most common software delivery model for many business application, DBMS
Software, management software and virtualization. Users deploy SaaS for different purposes,
they are not aware about which one is suitable for them in terms of security, performance and
storage capacity. The data privacy and service availability in cloud computing are major security
problems. The paper proposed a system that addressed security challenges in context to SaaS.
The development of such system will help users to judge different cloud computing services
(SaaS) with respect to security issues, concerns and challenges of security in the cloud. On the
other hand, vendors will able to identify the level of their service based on security parameters
and basic requirements of SaaS. This paper proposes that the software as service evaluation
parameters can be categorized into 6 parts i.e. SaaS Deployment model, Data security and
Integrity, Regulatory compliance, Availability, Backup, Identity management and Sign-on
process. SaaS vendor offers different and various important services to the customers but,
21

vendors should also address the issues and parameters related to security, performance and cost.
This paper discussed several parameters and fundamental requirements for a secure SaaS vendor.
Ms. Shaheen Ayyub, Mr. Praveen Kaushik, in their paper titled, An analysis of Security Attacks
on Cloud wrt SaaS, identify different security attacks on cloud. More specifically the paper
presents an elaborated study of SaaS components security and determines vulnerabilities and
countermeasures. They have defined the cloud system as a large group of interconnected
computers. These computers can be personal computers or network servers; they can be public or
private.

While many traditional threats are encountered effectively, a number of security

challenges and unchartered risks have been introduced to the clouds. There are many queries that
arise as to whether a cloud is secure enough. Considering intruders there are many kinds of
possible attacks, such as Denial of service attacks, Side Channel attacks Authentication attacks,
Man-in-the-Middle Cryptographic attacks, Wrapping attacks, Malware-Injection attacks,
Flooding attacks, Browser attacks, and also Accountability checking problems. There is a critical
need to securely store, manage, share and analyze massive amounts of complex (e.g., semistructured and unstructured) data to determine patterns and trends in order to improve the quality
of healthcare, better safeguard the nation and explore alternative to provide solutions to detect
top attack types using machine learning techniques. The paper aims at identifying and analyzing
the different types of attacks on the cloud environment. Fig shows a simple cloud security

22

architecture
In the SaaS model, enterprise data is stored at the SaaS provider's data center, along with
the data of other enterprises. Moreover, if the SaaS provider is leveraging a public cloud
computing service, the enterprise data might be stored along with the data of other unrelated
SaaS applications. The cloud provider might, additionally, replicate the data at multiple locations
across countries for the purposes of maintaining high availability. The paper explains SaaS
specific security challenges and how contemporary security testing can ensure that the challenges
are met.
The paper then discusses the attacks associated with the SaaS model. The most common
attacks associated with SaaS model in a public cloud infrastructure are divided into the following
four groups:
(i) Availability,
(ii) Data Security,
(iii) Network Security,
(iv) Identity Management

Availability based attacks are:


1) Denial of Service:
Denial of Service means many nodes systems attacking one node all at the same
time with a flood of messages. It is the matter of argument for professionals that
the cloud is more vulnerable to DoS attacks, because it is shared by many users,
which makes DoS attack much more damaging. When the Cloud Computing
operating system notices the high workload on the flooded service, it will start to
provide more computational power means more service instances, more virtual
machines to cope with the additional workload. Thus, the server hardware
boundaries for maximum workload to process do no longer hold. Sometimes the
attacker can inject and execute arbitrary code while performing a DoS attack in
order to access critical information or execute commands on the server. Denial-ofservice attacks significantly degrade service quality experienced by legitimate
users. It introduces large response delays, excessive losses, and service
interruptions, resulting in direct impact on availability.
23

2) Account Lockout :
In an account lockout attack, an attacker attempts to lock out user accounts by
purposely failing the authentication process as many times as needed to trigger the
account lockout functionality. This in turn prevents even the valid user from
obtaining access to their account. For example, if an account lockout policy states
that users are locked out of their accounts after three failed login attempts, an
attacker can lock out accounts by deliberately sending an invalid password three
times.

3) Buffer over Flow:


Using this attack the attacker overflows a buffer in the program. In particular, the
stack is where a function stores the return address of the function that called it. If
a buffer is located on the stack, then an overflow may allow the attacker to
overwrite the return address, which will allow the attacker to take over the
program.

Data Security based attacks are:


1) Cross Site Scripting:
Cross Site Scripting is one of the most common application level attacks that
hackers use to sneak into web applications today. Cross site scripting is an attack
on the privacy of clients of a particular web site which can lead to a total breach
of security when customer details are stolen or manipulated. Unlike most attacks,
which involve two parties the attacker, and the web site, or the attacker and the
victim client, the CSS attack involves three parties the attacker, a client and the
web site. The goal of the CSS attack is to steal the client cookies, or any other
sensitive information, which can identify the client with the web site. With the
token of the legitimate user at hand, the attacker can proceed to act as the user in
his/her interaction with the site specifically, impersonate the user.
There are two ways for users to become infected by XSS attacks. Users are either
tricked into clicking on a specially crafted link (Non-Persistent Attack) or,
24

unknowingly attacked by simply visiting a Web page embedded with malicious


code (Persistent Attack). Its also important to note that a
Users Web browser or computer does not have to be susceptible to any wellknown vulnerability. This means that no amount of patching will help users, and
we become solely dependent on a websites security procedures for online safety.
Browser vendors, software developers and information security professionals
working with Web applications are the key to stopping this entirely preventable
attack.

2) Access Control Weakness:


Access controls are a critical defense mechanism within the application because
they are responsible for making the decision of whether it should permit a given
request to perform its attempted action of access the resources that it is requesting.
When they are defective, an attacker can often compromise the entire application,
taking control of administrative functionality and accessing sensitive data
belonging to every other user. Access control attacks are among the most
commonly encountered categories of web application vulnerability. There are two
types of access controls firstly Vertical access control and the secondly Horizontal
access control. Vertical Access Controls allow different types of users to access
different parts of the applications functionality. Horizontal Access Controls allow
users to access a certain subset of a wider range of resources of the same type.
Access controls are broken if any user is able to access functionality or resources
for which he is not authorized.

3) Privilege Escalation :
A privilege escalation attack is a type of network intrusion that takes advantage of
programming errors or design flaws to grant the attacker elevated access to the
network and its associated data and applications.
Not every system hack will initially provide an unauthorized user with full access
to the targeted system. In those circumstances privilege escalation is required.
There are two kinds of privilege escalation: vertical and horizontal.
25

privileges. This is typically achieved by performing kernel-level operations that


allow the attacker to run unauthorized code.
acker to use the same level of
privileges he already has been granted, but assume the identity of another user
with similar privileges. For example, someone gaining access to another person's
online banking account would constitute horizontal privilege escalation.

Network Security based attacks are:


1) Network Penetration:
It is an attack on a computer system with the intention of finding security
weaknesses, potentially gaining access to it, its functionality and data. The
process involves identifying the target systems and the goal, then reviewing the
information available and undertaking available means to attain the goal.

2) Session Hijacking:
Session Hijacking is when a hacker takes a control of a user session after the user
involves an attack identifying the current session IDs of a client/server
communication and taking over the clients session. Session Hijacking involves the
following three steps to an attack:

Tracking the Session: In this the hacker identifies an open session and predicts
the sequence number of the next packet.

Desynchronizing the Connection: The hacker sends the valid users system a
TCP reset or finish packet to cause them to close their session.

Injecting the Attackers Packet: The sends the server a TCP packet with the
predicted sequence number and the server accept it as the valid users next
packet.

3) Data Packet Interception

26

Identity Management based attacks are:


1) Authentication Weakness:
Authentication is a weak point in hosted and virtual services and is frequently
targeted. There are many ways by which a user can be authenticated. The
mechanisms used to secure the authentication process and the methods used are a
frequent target of attackers. If we talk about Saas, IaaS and Paas architecture,
there is only IaaS which provides this type of protection and data encryption.

2) Insecure Trust:
Identity management refers to the process of representing and recognizing entities
as digital identities in computer networks. Different identity management models
will have different trust requirements. Since there are costs associated with
establishing trust, it will be an advantage to have identity management models
with simple trust requirements.

2.2 Conclusion
Based on the literature survey, we found the threats and issues of Software as a Service
which serve as vulnerabilities to the cloud system. In order to overcome these challenges and
vulnerabilities, the proposed work is aimed at developing solutions to overcome the challenges
that SaaS faces.
The future scope of this project is the analysis, design and implementation of the proposed
system.

27

Das könnte Ihnen auch gefallen