Assignment

JB12345
CH13-CompSec4e.pptx

Computer Security:

Principles and Practice

Fourth Edition

By: William Stallings and Lawrie Brown

Lecture slides prepared for “Computer Security: Principles and Practice”, 4/e, by William Stallings and Lawrie Brown, Chapter 13 “Cloud and IoT Security”.

1

Chapter 13

Cloud and IoT Security

The two most significant developments in computing in recent years are cloud computing

and the Internet of Things (IoT). In both cases, security measures tailored to the specific

requirements of these environments are evolving. This chapter begins with an overview

of the concepts of cloud computing, followed by a discussion of cloud security. Then the

chapter examines the concepts of IoT and closes with a discussion of IoT security.

For further detail on the material on cloud computing and IoT in Sections 13.1

and 13.4, see [STAL16a].

2

Cloud Computing:

NIST defines cloud computing, in NIST SP-800-145 (The NIST Definition of Cloud Computing, September 2011) as follows:

“Cloud computing: A model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics,

three service models, and four deployment models.”

NIST defines cloud computing, in NIST SP-800-145 (The NIST Definition of Cloud

Computing ) as follows:

Cloud computing: A model for enabling ubiquitous, convenient, on-demand network

access to a shared pool of configurable computing resources (e.g., networks,

servers, storage, applications, and services) that can be rapidly provisioned and

released with minimal management effort or service provider interaction. This

cloud model promotes availability and is composed of five essential characteristics,

three service models, and four deployment models.

3

The definition refers to various models and characteristics, whose relationship

is illustrated in Figure 13.1. The essential characteristics of cloud computing include

the following:

• Broad network access:  Capabilities are available over the network and accessed

through standard mechanisms that promote use by heterogeneous thin or thick

client platforms (e.g., mobile phones, laptops, and tablets) as well as other traditional

or cloud-based software services.

• Rapid elasticity:  Cloud computing gives you the ability to expand and reduce

resources according to your specific service requirement. For example, you may

need a large number of server resources for the duration of a specific task. You

can then release these resources upon completion of the task.

• Measured service:  Cloud systems automatically control and optimize resource

use by leveraging a metering capability at some level of abstraction appropriate

to the type of service (e.g., storage, processing, bandwidth, and active user

accounts). Resource usage can be monitored, controlled, and reported, providing

transparency for both the provider and consumer of the utilized service.

• On-demand self-service:  A cloud service consumer (CSC) can unilaterally

provision computing capabilities, such as server time and network storage, as

needed automatically without requiring human interaction with each service

provider. Because the service is on demand, the resources are not permanent

parts of the consumer’s IT infrastructure.

 Resource pooling: The provider’s computing resources are pooled to serve

multiple CSCs using a multitenant model, with different physical and virtual

resources dynamically assigned and reassigned according to consumer demand.

There is a degree of location independence, in that the CSC generally has no

control or knowledge of the exact location of the provided resources, but may

be able to specify location at a higher level of abstraction (e.g., country, state,

or datacenter). Examples of resources include storage, processing, memory,

network bandwidth, and virtual machines (VMs). Even private clouds tend to

pool resources between different parts of the same organization.

4

Cloud Service Models

 NIST SP 800-145 defines three service models , which can be viewed as nested service alternatives:

software as a service (SaaS), platform as a service (PaaS), and infrastructure

as a service (IaaS).

5

NIST defines three service models, which can be viewed as nested service alternatives

Software as a service (SaaS)

Platform as a service (PaaS)

Infrastructure as a service (IaaS)

Software as a Service (SaaS)

 SaaS provides service to customers in the form of software,

specifically application software, running on and accessible in the cloud. SaaS follows

the familiar model of Web services, in this case applied to cloud resources. SaaS enables

the customer to use the cloud provider’s applications running on the provider’s cloud

infrastructure. The applications are accessible from various client devices through

a simple interface, such as a Web browser. Instead of obtaining desktop and server

licenses for software products it uses, an enterprise obtains the same functions from

the cloud service. The use of SaaS avoids the complexity of software installation,

maintenance, upgrades, and patches. Examples of services at this level are Google

Gmail, Microsoft 365, Salesforce, Citrix GoToMeeting, and Cisco WebEx.

Common subscribers to SaaS are organizations that want to provide their

employees with access to typical office productivity software, such as document

management and email. Individuals also commonly use the SaaS model to acquire

cloud resources. Typically, subscribers use specific applications on demand. The cloud

provider also usually offers data-related features, such as automatic backup and data

sharing between subscribers.

6

SaaS provides service to customers in the form of software, specifically application software, running on and accessible in the cloud

It enables the customer to use the cloud provider’s applications running on the provider’s cloud infrastructure

The applications are accessible from various client devices through a simple interface, such as a Web browser

Instead of obtaining desktop and server licenses for software products it uses, an enterprise obtains the same functions from the cloud service

The use of SaaS avoids the complexity of software installation, maintenance, upgrades, and patches

Examples of this service are Google Gmail, Microsoft 365, Salesforce, Citrix GoToMeeting, and Cisco WebEx

Platform as a Service (PaaS)

 A PaaS cloud provides service to customers in the form of

a platform on which the customer’s applications can run. PaaS enables the customer

to deploy onto the cloud infrastructure customer-created or acquired applications.

A PaaS cloud provides useful software building blocks, plus a number of development

tools, such as programming language tools, run-time environments, and other tools

that assist in deploying new applications. In effect, PaaS is an operating system in

the cloud. PaaS is useful for an organization that wants to develop new or tailored

applications while paying for the needed computing resources only as needed, and

only for as long as needed. AppEngine, Engine Yard, Heroku, Microsoft Azure, Force.

com, and Apache Stratos are examples of PaaS.

7

A PaaS cloud provides service to customers in the form of a platform on which the customer’s applications can run

PaaS enables the customer to deploy onto the cloud infrastructure customer-created or acquired applications

A PaaS cloud provides useful software building blocks, plus a number of development tools, such as programming language tools, run-time environments, and other tools that assist in deploying new applications

In effect, PaaS is an operating system in the cloud

It is useful for an organization that wants to develop new or tailored applications while paying for the needed computing resources only as needed, and only for as long as needed

Examples of PaaS include AppEngine, Engine Yard, Heroku, Microsoft Azure, Force.com, and Apache Stratos

Infrastructure as a Service (IaaS)

 With IaaS, the customer has access to the resources

of the underlying cloud infrastructure. The cloud service user does not manage or

control the resources of the underlying cloud infrastructure, but has control over

operating systems, deployed applications, and possibly limited control of select

 networking components (e.g., host firewalls). IaaS provides virtual machines and

other virtualized hardware and operating systems. IaaS offers the customer processing,

storage, networks, and other fundamental computing resources so the customer is

able to deploy and run arbitrary software, which can include operating systems and

applications. IaaS enables customers to combine basic computing services, such as

number crunching and data storage, to build highly adaptable computer systems.

Typically, customers are able to self-provision this infrastructure, using a Webbased

graphical user interface that serves as an IT operations management console

for the overall environment. API access to the infrastructure may also be offered

as an option. Examples of IaaS are Amazon Elastic Compute Cloud (Amazon

EC2), Microsoft Windows Azure, Google Compute Engine (GCE), and Rackspace.

8

With IaaS, the customer has access to the resources of the underlying cloud infrastructure

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

IaaS provides virtual machines and other virtualized hardware and operating systems

IaaS offers the customer processing, storage, networks, and other fundamental computing resources so the customer is able to deploy and run arbitrary software, which can include operating systems and applications

IaaS enables customers to combine basic computing services, such as number crunching and data storage, to build highly adaptable computer systems

Examples of IaaS are Amazon Elastic Compute Cloud, Microsoft Windows Azure, Google Compute Engine, and Rackspace

 Figure 13.2 compares the functions implemented by the cloud service provider

for the three service models.

9

Cloud Deployment Models

 There is an increasingly prominent trend in many organizations to move a substantial

portion or even all information technology (IT) operations to enterprise cloud

computing. The organization is faced with a range of choices as to cloud ownership

and management. In this subsection, we look at the four most prominent deployment models for

cloud computing.

10

The four most prominent deployment models for cloud computing are:

Public cloud

Community cloud

Private cloud

Hybrid cloud

Public Cloud

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

The cloud provider is responsible both for the cloud infrastructure and for the control of data and operations within the cloud

A public cloud may be owned, managed, and operated by a business, academic, or government organization, or some combination of them

All major components are outside the enterprise firewall, located in a multitenant infrastructure

Applications and storage are made available over the Internet via secured IP, and can be free or offered at a pay-per-usage fee

The major advantage of the public cloud is cost

The principal concern is security

 A public cloud infrastructure is made available to the general public

or a large industry group, and is owned by an organization selling cloud services.

 The cloud provider is responsible both for the cloud infrastructure and for the control

of data and operations within the cloud. A public cloud may be owned, managed, and

operated by a business, academic, or government organization, or some combination

of them. It exists on the premises of the cloud service provider.

In a public cloud model, all major components are outside the enterprise firewall,

located in a multitenant infrastructure. Applications and storage are made

available over the Internet via secured IP, and can be free or offered at a pay-per-usage

fee. This type of cloud supplies easy-to-use consumer-type services, such as:

Amazon and Google on-demand Web applications or capacity; Yahoo mail; and

Facebook or LinkedIn social media providing free storage for photographs. While

public clouds are inexpensive and scale to meet needs, they typically provide no or

lower SLAs and may not offer the guarantees against data loss or corruption found

with private or hybrid cloud offerings. The public cloud is appropriate for CSCs

and entities not requiring the same levels of service that are expected within the

firewall. Also, the public IaaS clouds do not necessarily provide for restrictions and

compliance with privacy laws, which remain the responsibility of the subscriber or

corporate end user. In many public clouds, the focus is on the CSC and small and

medium sized businesses where pay-per-use pricing is available, often equating to

pennies per gigabyte. Examples of services here might be picture and music sharing,

laptop backup, or file sharing.

The major advantage of the public cloud is cost. A subscribing organization only

pays for the services and resources it needs and can adjust these as needed. Further,

the subscriber has greatly reduced management overhead. The principal concern is

security. However, there are a number of public cloud providers that have demonstrated

strong security controls and, in fact, such providers may have more resources

and expertise to devote to security that would be available in a private cloud.

11

Private Cloud

 A private cloud is implemented within the internal IT environment

of the organization. The organization may choose to manage the cloud in house or

contract the management function to a third party. Additionally, the cloud servers

and storage devices may exist on premise or off premise.

Private clouds can deliver IaaS internally to employees or business units through

an intranet or the Internet via a virtual private network (VPN), as well as software

(applications) or storage as services to its branch offices. In both cases, private clouds

are a way to leverage existing infrastructure, and deliver and chargeback for bundled

or complete services from the privacy of the organization’s network. Examples of

services delivered through the private cloud include database on demand, email on

demand, and storage on demand.

A key motivation for opting for a private cloud is security. A private cloud

infrastructure offers tighter controls over the geographic location of data storage

and other aspects of security. Other benefits include easy resource sharing and rapid

deployment to organizational entities.

12

A private cloud is implemented within the internal IT environment of the organization

The organization may choose to manage the cloud in house or contract the management function to a third party

The cloud servers and storage devices may exist on premise or off premise

Private clouds can deliver IaaS internally to employees or busines units through an intranet or the Internet via a virtual private network (VPN), as well as software or storage as services to its branch offices

Examples of services delivered through the private cloud include database on demand, email on demand, and storage on demand

A key motivation for opting for a private cloud is security

Other benefits include easy resource sharing and rapid deployment to organizational entities

Community Cloud

 A community cloud shares characteristics of private and public

clouds. Like a private cloud, a community cloud has restricted access. Like a public

cloud, the cloud resources are shared among a number of independent organizations.

The organizations that share the community cloud have similar requirements and,

 typically, a need to exchange data with each other. One example of an industry that

is employing the community cloud concept is the health care industry. A community

cloud can be implemented to comply with government privacy and other regulations.

The community participants can exchange data in a controlled fashion.

The cloud infrastructure may be managed by the participating organizations

or a third party, and may exist on premise or off premise. In this deployment

model, the costs are spread over fewer users than a public cloud (but more than

a private cloud), so only some of the cost savings potential of cloud computing

are realized.

13

A community cloud shares characteristics of private and public clouds

Has restricted access like a private cloud

The cloud resources are shared among a number of independent organizations like a public cloud

The organizations that share the community cloud have similar requirements and, typically, a need to exchange data with each other

An example would be the health care industry

The cloud infrastructure may be managed by the participating organizations or a third party, and may exist on premise or off premise

In this deployment model, the costs are spread over fewer users than a public cloud so only some of the cost savings potential of cloud computing are realized

Hybrid Cloud

The hybrid 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

With a hybrid cloud solution, sensitive information can be placed in a private area of the cloud, and less sensitive data can take advantage of the benefits of the public cloud

A hybrid public/private cloud solution can be particularly attractive for smaller business

Many applications for which security concerns are less can be offloaded at considerable cost savings without committing the organization to moving more sensitive data and applications to the public cloud

 The hybrid 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 (e.g., cloud bursting for load balancing between clouds). With a hybrid

cloud solution, sensitive information can be placed in a private area of the cloud, and

less sensitive data can take advantage of the benefits of the public cloud.

A hybrid public/private cloud solution can be particularly attractive for smaller

businesses. Many applications for which security concerns are less can be offloaded

at considerable cost savings without committing the organization to moving more

sensitive data and applications to the public cloud.

14

  Private Community Public Hybrid
Scalability Limited Limited Very high Very high
Security Most secure option Very secure Moderately secure Very secure
Performance Very good Very good Low to medium Good
Reliability Very high Very high Medium Medium to high
Cost High Medium Low Medium

Table 13.1

Comparison of Cloud Deployment Models

 Table 13.1 lists some of the relative strengths and weaknesses of the four cloud

deployment models.

15

Cloud Computing:

NIST SP-500-292 (NIST Cloud Computing Reference Architecture) establishes reference architecture, described as follows:

“The NIST cloud computing reference architecture focuses on the requirements of “what” cloud services provide, not a “how to” design solution and implementation. The reference architecture is intended to facilitate the understanding of the operational intricacies in cloud computing. It does not represent the system architecture of a specific cloud computing system; instead it is a tool for describing, discussing, and developing a system-specific architecture using a common framework of reference.”

 NIST SP 500-292 (NIST Cloud Computing Reference Architecture, September 2011) establishes reference

architecture, described as follows:

 The NIST cloud computing reference architecture focuses on the requirements

of “what” cloud services provide, not a “how to” design solution and implementation.

The reference architecture is intended to facilitate the understanding of

the operational intricacies in cloud computing. It does not represent the system

architecture of a specific cloud computing system; instead it is a tool for describing,

discussing, and developing a system-specific architecture using a common framework

of reference.

16

Objectives

 NIST developed the reference architecture with the following objectives in

mind:

•  To illustrate and understand the various cloud services in the context of an

overall cloud computing conceptual model

•  To provide a technical reference for CSCs to understand, discuss, categorize,

and compare cloud services

•  To facilitate the analysis of candidate standards for security, interoperability,

and portability and reference implementations.

17

NIST developed the reference architecture with the following objectives in mind:

To illustrate and understand the various cloud services in the context of an overall cloud computing conceptual model

To provide a technical reference for CSCs to understand, discuss, categorize, and compare cloud services

To facilitate the analysis of candidate standards for security, interoperability, and portability and reference implementations

 The reference architecture, depicted in Figure 13.3, defines five major actors in

terms of the roles and responsibilities:

• Cloud service consumer (CSC):  A person or organization that maintains a business

relationship with, and uses service from, cloud providers.

• Cloud service provider (CSP):  A person, organization, or entity responsible for

making a service available to interested parties.

• Cloud auditor:  A party that can conduct independent assessment of cloud services,

information system operations, performance, and security of the cloud

implementation.

• Cloud broker:  An entity that manages the use, performance, and delivery of

cloud services, and negotiates relationships between CSPs and cloud consumers.

• Cloud carrier:  An intermediary that provides connectivity and transport of

cloud services from CSPs to cloud consumers.

 The roles of the cloud consumer and provider have already been discussed.

To summarize, a cloud service provider  can provide one or more of the cloud services

 to meet IT and business requirements of cloud service consumers . For each of the

three service models (SaaS, PaaS, IaaS), the CSP provides the storage and processing

facilities needed to support that service model, together with a cloud interface

for cloud service consumers. For SaaS, the CSP deploys, configures, maintains, and

updates the operation of the software applications on a cloud infrastructure so that

the services are provisioned at the expected service levels to cloud consumers. The

consumers of SaaS can be organizations that provide their members with access to

software applications, end users who directly use software applications, or software

application administrators who configure applications for end users.

For PaaS, the CSP manages the computing infrastructure for the platform and

runs the cloud software that provides the components of the platform, such as runtime

software execution stacks, databases, and other middleware components. Cloud

consumers of PaaS can employ the tools and execution resources provided by CSPs

to develop, test, deploy, and manage the applications hosted in a cloud environment.

For IaaS, the CSP acquires the physical computing resources underlying the

service, including the servers, networks, storage, and hosting infrastructure. The IaaS

CSC in turn uses these computing resources, such as a virtual machine, for their fundamental

computing needs.

The cloud carrier  is a networking facility that provides connectivity and transport

of cloud services between cloud consumers and CSPs. Typically, a CSP will set

up service level agreements (SLAs) with a cloud carrier to provide services consistent

with the level of SLAs offered to cloud consumers, and may require the cloud carrier

to provide dedicated and secure connections between cloud consumers and CSPs.

A cloud broker  is useful when cloud services are too complex for a cloud consumer

to easily manage. A cloud broker can offer three areas of support:

• Service intermediation:  These are value-added services, such as identity management,

performance reporting, and enhanced security.

• Service aggregation:  The broker combines multiple cloud services to meet consumer

needs not specifically addressed by a single CSP, or to optimize performance

or minimize cost.

• Service arbitrage:  This is similar to service aggregation except that the services

being aggregated are not fixed. Service arbitrage means a broker has the flexibility

to choose services from multiple agencies. The cloud broker, for example,

can use a credit-scoring service to measure and select an agency with the best

score.

A cloud auditor  can evaluate the services provided by a CSP in terms of security

controls, privacy impact, performance, and so on. The auditor is an independent entity

that can assure that the CSP conforms to a set of standards.

18

 Figure 13.4 illustrates the interactions between the actors. A cloud consumer

may request cloud services from a cloud provider directly or via a cloud broker. A

cloud auditor conducts independent audits and may contact the others to collect

necessary information. This figure shows that cloud networking issues involve three

separate types of networks. For a cloud producer, the network architecture is that of

a typical large datacenter, which consists of racks of high-performance servers and

storage devices, interconnected with high-speed top-of-rack Ethernet switches. The

 concerns in this context focus on virtual machine placement and movement, load

balancing, and availability issues. The enterprise network is likely to have a quite

different architecture, typically including a number of LANs, servers, workstations,

PCs, and mobile devices, with a broad range of network performance, security, and

management issues. The concern of both producer and consumer with respect to the

cloud carrier, which is shared with many users, is the ability to create virtual networks,

with appropriate SLA and security guarantees.

19

Table 13.2

NIST Guidelines

on

Cloud Security

and

Privacy Issues

and Recommendations

(Page 1 of 2)

(Table is on pages 433-434 in the textbook)

 There are numerous aspects to cloud security and numerous approaches to providing

cloud security measures. A good example of the scope of cloud security concerns and

issues is seen in the NIST guidelines for cloud security, specified in NIST SP 800-144

(Guidelines on Security and Privacy in Public Cloud Computing , December 2011)

and listed in Table 13.2. Thus, a full discussion of cloud security is well beyond the

scope of this chapter.

20

Table 13.2

NIST Guidelines on Cloud Security and Privacy Issues and Recommendations

(Page 2 of 2)

21

Security Issues for Cloud Computing

Security is a major consideration when augmenting or replacing on-premises systems with cloud services

Allaying security concerns is frequently a prerequisite for further discussions about migrating part or all of an organization’s computing architecture to the cloud

Availability is another major concern

Auditability of data must be ensured

Businesses should perform due diligence on security threats both from outside and inside the cloud

Cloud users are responsible for application-level security

Cloud vendors are responsible for physical security and some software security

Security for intermediate layers of the software stack is shared between users and vendors

Cloud providers must guard against theft or denial-of-service attacks by their users and users need to be protected from one another

Businesses should consider the extent to which subscribers are protected against the provider, especially in the area of inadvertent data loss

 Security is important to any computing infrastructure. Companies go to great lengths

to secure on-premises computing systems, so it is not surprising that security looms as

a major consideration when augmenting or replacing on-premises systems with cloud

services. Allaying security concerns is frequently a prerequisite for further discussions

about migrating part or all of an organization’s computing architecture to the cloud.

Availability is another major concern.

Generally speaking, such questions only arise when businesses contemplating

moving core transaction processing, such as enterprise resource planning (ERP)

systems, and other mission critical applications to the cloud. Companies have traditionally

demonstrated less concern about migrating high maintenance applications

such as e-mail and payroll to cloud service providers, even though such applications

hold sensitive information.

Auditability is another concern for many organizations. For example, in the U.S.,

many organizations must comply with Sarbanes-Oxley and/or Health and Human

Services Health Insurance Portability and Accountability Act (HIPAA) regulations.

The auditability of their data must be ensured whether it is stored on premises or

moved to the cloud.

Before moving critical infrastructure to the cloud, businesses should perform due

diligence on security threats both from outside and inside the cloud. Many of the security

issues associated with protecting clouds from outside threats are similar to those that

have traditionally faced centralized data centers. In the cloud, however, responsibility for

assuring adequate security is frequently shared among users, vendors, and any third-party

firms that users rely on for security-sensitive software or configurations. Cloud users are

responsible for application-level security. Cloud vendors are responsible for physical

security and some software security such as enforcing external firewall policies. Security

for intermediate layers of the software stack is shared between users and vendors.

A security risk that should not be overlooked by companies considering a

migration to the cloud is that posed by sharing vendor resources with other cloud

users. Cloud providers must guard against theft or denial-of-service attacks by their

users and users need to be protected from one another. Virtualization can be a powerful

mechanism for addressing these potential risks because it protects against most

attempts by users to attack one another or the provider’s infrastructure. However,

not all resources are virtualized, and not all virtualization environments are bug free.

Incorrect virtualization may allow user code to access to sensitive portions of the provider’s

infrastructure or the resources of other users. Once again, these security issues

are not unique to the cloud and are similar to those involved in managing non-cloud

data centers, where different applications need to be protected from one another.

Another security concern that businesses should consider is the extent to which

subscribers are protected against the provider, especially in the area of inadvertent data

loss. For example, in the event of provider infrastructure improvements, what happens to

hardware that is retired or replaced? It is easy to imagine a hard disk being disposed of

without being properly wiped clean of subscriber data. It is also easy to imagine permissions

bugs or errors that make subscriber data visible to unauthorized users. User-level

encryption may be an important self-help mechanism for subscribers, but businesses

should ensure that other protections are in place to avoid inadvertent data loss.

22

Table 13.3

Control Functions and Classes

 Numerous documents have been developed to guide business thinking about the

security issues associated with cloud computing. In addition to NIST SP 800-144,

 which provides overall guidance, there is also NIST SP 800-146 (Cloud Computing

Synopsis and Recommendations , May 2012). NIST’s recommendations systematically

consider each of the major types of cloud services consumed by businesses, including

SaaS, IaaS, and PaaS. While security issues vary somewhat depending on the type of

cloud service, there are multiple NIST recommendations that are independent of service

type. Not surprisingly, NIST recommends selecting cloud providers that support

strong encryption, have appropriate redundancy mechanisms in place, employ authentication

mechanisms, and offer subscribers sufficient visibility about mechanisms used

to protect subscribers from other subscribers and the provider. NIST SP 800-146 also

lists the overall security controls that are relevant in a cloud computing environment

and that must be assigned to the different cloud actors. These are listed in Table 13.3.

As more businesses incorporate cloud services into their enterprise network

infrastructures, cloud computing security will persist as an important issue. Examples

of cloud computing security failures have the potential to have a chilling effect on

business interest in cloud services. This is inspiring service providers to be serious

about incorporating security mechanisms that will allay concerns of potential subscribers.

Some service providers have moved their operations to Tier 4 data centers

(see Section 5.8) to address user concerns about availability and redundancy. As so

many businesses remain reluctant to embrace cloud computing in a big way, cloud

service providers will have to continue to work hard to convince potential customers

that computing support for core business processes and mission critical applications

can be moved safely and securely to the cloud.

23

Risks and Countermeasures

The Cloud Security Alliance lists the following as the top cloud-specific security threats:

Abuse and nefarious use of cloud computing

Countermeasures include:

Stricter initial registration and validation processes

Enhanced credit card fraud monitoring and coordination

Comprehensive inspection of customer network traffic

Monitoring public blacklists for one’s own network blocks

Insecure interfaces and APIs

Countermeasures include:

Analyzing the security model of CSP interfaces

Ensuring that strong authentication and access controls are implemented in concert with encrypted transmission

Understanding the dependency chain associated with the API

 In general terms, security controls in cloud computing are similar to the security

controls in any IT environment. However, because of the operational models and

technologies used to enable cloud service, cloud computing may present risks that

are specific to the cloud environment. The essential concept in this regard is that

while the enterprise loses a substantial amount of control over resources, services,

and applications, it must maintain accountability for security and privacy policies.

 The Cloud Security Alliance [CSA13] lists the following as the top cloud-specific

security threats:

• Abuse and nefarious use of cloud computing:  For many CSPs, it is relatively

easy to register and begin using cloud services, some even offering free limited

trial periods. This enables attackers to get inside the cloud to conduct various

attacks, such as spamming, malicious code attacks, and denial of service. PaaS

providers have traditionally suffered most from this kind of attacks; however,

recent evidence shows that hackers have begun to target IaaS vendors as well.

The burden is on the CSP to protect against such attacks, but cloud service

clients must monitor activity with respect to their data and resources to detect

any malicious behavior.

Countermeasures include (1) stricter initial registration and validation

processes; (2) enhanced credit card fraud monitoring and coordination; (3) comprehensive

inspection of customer network traffic; and (4) monitoring public

blacklists for one’s own network blocks.

• Insecure interfaces and APIs:  CSPs expose a set of software interfaces or APIs

that customers use to manage and interact with cloud services. The security and

availability of general cloud services is dependent upon the security of these

basic APIs. From authentication and access control to encryption and activity

monitoring, these interfaces must be designed to protect against both accidental

and malicious attempts to circumvent policy.

Countermeasures include (1) analyzing the security model of CSP interfaces;

(2) ensuring that strong authentication and access controls are implemented

in concert with encrypted transmission; and (3) understanding the

dependency chain associated with the API.

• Malicious insiders:  Under the cloud computing paradigm, an organization relinquishes

direct control over many aspects of security and, in doing so, confers

an unprecedented level of trust onto the CSP. One grave concern is the risk of

malicious insider activity. Cloud architectures necessitate certain roles that are

extremely high risk. Examples include CSP system administrators and managed

security service providers.

Countermeasures include the following: (1) enforce strict supply chain

management and conduct a comprehensive supplier assessment; (2) specify

human resource requirements as part of legal contract; (3) require transparency

into overall information security and management practices, as well as

compliance reporting; and (4) determine security breach notification processes.

24

Malicious insiders

Countermeasures include:

Enforce strict supply chain management and conduct a comprehensive supplier assessment

Specify human resource requirements as part of legal contract

Require transparency into overall information security and management practices, as well as compliance reporting

Determine security breach notification processes

Shared technology issues

Countermeasures include:

Implement security best practices for installation/configuration

Monitor environment for unauthorized changes/activity

Promote strong authentication and access control for administrative access and operations

Enforce SLAs for patching and vulnerability remediation

Conduct vulnerability scanning and configuration audits

• Malicious insiders:  Under the cloud computing paradigm, an organization relinquishes

direct control over many aspects of security and, in doing so, confers

an unprecedented level of trust onto the CSP. One grave concern is the risk of

malicious insider activity. Cloud architectures necessitate certain roles that are

extremely high risk. Examples include CSP system administrators and managed

security service providers.

Countermeasures include the following: (1) enforce strict supply chain

management and conduct a comprehensive supplier assessment; (2) specify

human resource requirements as part of legal contract; (3) require transparency

into overall information security and management practices, as well as

compliance reporting; and (4) determine security breach notification processes.

Shared technology issues: IaaS vendors deliver their services in a scalable way

by sharing infrastructure. Often, the underlying components that make up this

infrastructure (CPU caches, GPUs, etc.) were not designed to offer strong isolation

properties for a multi-tenant architecture. CSPs typically approach this risk

by using isolated VMs for individual clients. This approach is still vulnerable to

attack, by both insiders and outsiders, and so can only be a part of an overall

security strategy.

Countermeasures include the following: (1) implement security best practices

for installation/configuration; (2) monitor environment for unauthorized

changes/activity; (3) promote strong authentication and access control for

administrative access and operations; (4) enforce SLAs for patching and vulnerability

remediation; and (5) conduct vulnerability scanning and configuration

audits.

25

Data loss or leakage

Countermeasures include:

Implement strong API access control

Encrypt and protect integrity of data in transit and at rest

Analyze data protection at both design and run time

Implement strong key generation, storage and management, and destruction practices

Account or service hijacking

Countermeasures include:

Prohibit the sharing of account credentials between users and services

Leverage strong two-factor authentication techniques where possible

Employ proactive monitoring to detect unauthorized activity

Understand CSP security policies and SLAs

Unknown risk profile

Countermeasures include:

Disclosure of applicable logs and data

Partial/full disclosure of infrastructure details

Monitoring and alerting on necessary information

• Data loss or leakage:  For many clients, the most devastating impact from a

security breach is the loss or leakage of data. We will address this issue in the

next section.

Countermeasures include the following: (1) implement strong API access

control; (2) encrypt and protect integrity of data in transit and at rest; (3) analyze

data protection at both design and run time; and (4) implement strong key

generation, storage and management, and destruction practices.

• Account or service hijacking:  Account and service hijacking, usually with stolen

credentials, remains a top threat. With stolen credentials, attackers can often

access critical areas of deployed cloud computing services, allowing them to

compromise the confidentiality, integrity, and availability of those services.

Countermeasures include the following: (1) prohibit the sharing of account

credentials between users and services; (2) leverage strong two-factor authentication

techniques where possible; (3) employ proactive monitoring  to detect

unauthorized activity; and (4) understand CSP security policies and SLAs.

• Unknown risk profile:  In using cloud infrastructures, the client necessarily cedes

control to the cloud provider on a number of issues that may affect security.

Thus the client must pay attention to and clearly define the roles and responsibilities

involved for managing risks. For example, employees may deploy applications

and data resources at the CSP without observing the normal policies

and procedures for privacy, security, and oversight.

Countermeasures include (1) disclosure of applicable logs and data; (2)

partial/full disclosure of infrastructure details (e.g., patch levels and firewalls);

and (3) monitoring and alerting on necessary information.

 Similar lists have been developed by the European Network and Information

Security Agency [ENIS09] and NIST SP 800-144.

26

Data Protection in the Cloud

There are many ways to compromise data. Deletion or alteration of records without

a backup of the original content is an obvious example. Unlinking a record from a

larger context may render it unrecoverable, as can storage on unreliable media. Loss

of an encoding key may result in effective destruction. Finally, unauthorized parties

must be prevented from gaining access to sensitive data.

The threat of data compromise increases in the cloud, due to the number of,

and interactions between, risks and challenges that are either unique to the cloud

or more dangerous because of the architectural or operational characteristics of the

cloud environment.

Data must be secured while at rest, in transit, and in use, and access to the

data must be controlled. The client can employ encryption to protect data in transit,

though this involves key management responsibilities for the CSP. The client can

enforce access control techniques, but, again, the CSP is involved to some extent

depending on the service model used.

For data at rest, the ideal security measure is for the client to encrypt the

database and only store encrypted data in the cloud, with the CSP having no access

to the encryption key. So long as the key remains secure, the CSP has no ability to

decipher the data, although corruption and other denial-of-service attacks remain

a risk. The model depicted in Figure 5.9 works equally well when the data is stored

in a cloud.

27

The threat of data compromise increases in the cloud, due to the number of, and interactions between, risks and challenges that are either unique to the cloud or more dangerous because of the architectural or operational characteristics of the cloud environment

Data must be secured while at rest, in transit, and in use, and access to the data must be controlled

The client can employ encryption to protect data in transit, though this involves key management responsibilities for the CSP

The client can enforce access control techniques, but CSP is involved to some extent depending on the service model used

For data at rest, the ideal security measure is for the client to encrypt the database and only store encrypted data in the cloud, with the CSP having no access to the encryption key

Even with these precautions, corruption and other denial-of-service attacks remain a risk

Data Protection in the Cloud

Multi-instance Model

Multi-tenant Model

Provides a unique DBMS running on a VM instance for each cloud subscriber

This gives the subscriber complete control over role definition, user authorization, and other administrative tasks related to security

Provides a predefined environment for the cloud subscriber that is shared with other tenants, typically through tagging data with a subscriber identifier

Tagging gives the appearance of exclusive use of the instance, but relies on the cloud provider to establish and maintain a sound secure database environment

Database environments used in cloud computing can vary significantly. Some

providers support a multi-instance model , which provide a unique DBMS running on

a VM instance for each cloud subscriber. This gives the subscriber complete control

over role definition, user authorization, and other administrative tasks related to

 security. Other providers support a multi-tenant model, which provides a predefined

environment for the cloud subscriber that is shared with other tenants, typically

through tagging data with a subscriber identifier. Tagging gives the appearance of

exclusive use of the instance, but relies on the cloud provider to establish and maintain

a sound secure database environment.

28

 Beyond the protection and isolation of data, the cloud service provider (CSP)

needs to address the broader security considerations for the protection of its assets.

Figure

13.5a, adapted from [ENIS15], suggests a categorization of these assets for

the three cloud service models. The bottom two layers shown in the figure include

organization and facilities. Organization denotes the human resources and the policies

and procedures for maintaining the facilities and supporting the delivery of the

services. Facilities denote the physical structures and supplies such as networks, cooling,

and power supply. Above these levels are the assets specific to the provision of

services. For IaaS, the CSP maintains a hypervisor and/or OS on each of its servers, as

well as the networking software for interconnection of CSP servers and connection

to cloud service consumers (CSCs). Added to these assets for PaaS are the libraries,

middleware, and other software to support CSC applications. For SaaS, the CSP also

has application software assets for CSC use.

Figure 13.5b suggests key security tasks that are the responsibility of the CSP

and of the CSC. The lowest level of the diagram has to do with organizational issues

related to the management of its supplies and facilities. These issues will be dealt with

in Chapters 14, 15, and 17. The next level of Figure 13.5b covers the physical security

of the facility, a topic covered in Chapter 16. Above that, depending on the service

model, the CSP is responsible for the security of a range of software capabilities;

security measures in the area were addressed in Chapters 11 and 12.

29

Cloud Security as a Service

In the context of cloud computing, cloud security as a service, designated SecaaS, is a segment of the SaaS offering of a CSP

The CSA defines SecaaS as the provision of security applications and services via the cloud either to cloud-based infrastructure and software, or from the cloud to the customers’ on-premise systems

The CSA has identified the following SecaaS categories of service:

Identity and access management

Data loss prevention

Web security

E-mail security

Security assessments

Intrusion management

Security information and event management

Encryption

Business continuity and disaster recovery

Network security

The term security as a service has generally meant a package of security services

offered by a service provider that offloads much of the security responsibility from

an enterprise to the security service provider. Among the services typically provided

are authentication, anti-virus, antimalware/spyware, intrusion detection, and security

event management. In the context of cloud computing, cloud security as a service,

designated SecaaS, is a segment of the SaaS offering of a CSP.

 The CSA defines SecaaS as the provision of security applications and services

via the cloud either to cloud-based infrastructure and software, or from the cloud to

the customers’ on-premise systems [CSA11]. The CSA has identified the following

SecaaS categories of service:

•  Identity and access management

•  Data loss prevention

•  Web security

•  E-mail security

•  Security assessments

•  Intrusion management

•  Security information and event management

•  Encryption

•  Business continuity and disaster recovery

•  Network security

30

 In this section, we examine these categories with a focus on security of the

cloud-based infrastructure and services (see Figure 13.6).

 Identity and access management (IAM) includes people, processes, and systems

that are used to manage access to enterprise resources by assuring that the identity

of an entity is verified, then granting the correct level of access based on this assured

identity. One aspect of identity management is identity provisioning, which has to do

with providing access to identified users and subsequently deprovisioning, or denying

 access, to users when the client enterprise designates such users as no longer having

access to enterprise resources in the cloud. Among other requirements, the cloud

service provider must be able to exchange identity attributes with the enterprise’s

chosen identity provider.

The access management portion of IAM involves authentication and access

control services. For example, the CSP must be able to authenticate users in a trustworthy

manner. The access control requirements in SPI environments include establishing

trusted user profile and policy information, using it to control access within

the cloud service, and doing this in an auditable way.

Data loss prevention (DLP)  is the monitoring, protecting, and verifying the

security of data at rest, in motion, and in use. Much of DLP can be implemented by

the cloud client, such as discussed in previously in this section (Data Protection in the

Cloud). The CSP can also provide DLP services, such as implementing rules about

what functions can be performed on data in various contexts.

Web security is real-time protection offered either on premise through software/

appliance installation or via the cloud by proxying or redirecting Web traffic to

the CSP. This provides an added layer of protection on top of things like antiviruses

to prevent malware from entering the enterprise via activities such as Web browsing.

In addition to protecting against malware, a cloud-based Web security service

might include usage policy enforcement, data backup, traffic control, and Web access

control.

A CSP may provide a Web-based e-mail service, for which security measures

are needed. E-mail security provides control over inbound and outbound e-mail, protecting

the organization from phishing, malicious attachments, enforcing corporate

polices such as acceptable use and spam prevention. The CSP may also incorporate

digital signatures on all e-mail clients and provide optional e-mail encryption.

Security assessments are third-part audits of cloud services. While this service

is outside the province of the CSP, the CSP can provide tools and access points to

facilitate various assessment activities.

Intrusion management encompasses intrusion detection, prevention, and

response. The core of this service is the implementation of intrusion detection systems

(IDSs) and intrusion prevention systems (IPSs) at entry points to the cloud and on

servers in the cloud. An IDS is a set of automated tools designed to detect unauthorized

access to a host system. An IPS incorporates IDS functionality and in addition

includes mechanisms designed to block traffic from intruders.

 Security information and event management (SIEM) aggregates (via push or

pull mechanisms) log and event data from virtual and real networks, applications, and

systems. This information is then correlated and analyzed to provide real-time reporting

and alerting on information/events that may require intervention or other type

of response. The CSP typically provides an integrated service that can put together

information from a variety of sources both within the cloud and within the client

enterprise network.

 

Encryption is a pervasive service that can be provided for data at rest in the

cloud, e-mail traffic, client-specific network management information, and identity

information. Encryption services provided by the CSP involve a range of complex

issues, including key management, how to implement virtual private network (VPN)

services in the cloud, application encryption, and data content access.

 Business continuity and disaster recovery comprise measures and mechanisms

to ensure operational resiliency in the event of any service interruptions. This is an

area where the CSP, because of economies of scale, can offer obvious benefits to a

cloud service client. The CSP can provide backup at multiple locations, with reliable

failover and disaster recovery facilities. This service must include a flexible infrastructure,

redundancy of functions and hardware, monitored operations, geographically

distributed data centers, and network survivability.

 

Network security consists of security services that allocate access, distribute,

monitor, and protect the underlying resource services. Services include perimeter and

server firewalls and denial-of-service protection. Many of the other services listed in

this section, including intrusion management, identity and access management, data

loss protection, and Web security, also contribute to the network security service.

31

OpenStack

This section provides an overview of an open-source security module that is part

of the OpenStack cloud OS. OpenStack is an open-source software project of the

OpenStack Foundation that aims to produce an open-source cloud operating system

[ROSA14, SEFR12]. The principal objective is to enable creating and managing

huge groups of virtual private servers in a cloud computing environment. OpenStack

is embedded, to one degree or another, into data center infrastructure and cloud

computing products offered by Cisco, IBM, Hewlett-Packard, and other vendors. It

provides multi-tenant IaaS, and aims to meets the needs of public and private clouds

regardless of size, by being simple to implement and massively scalable.

32

Open-source software project of the OpenStack Foundation that aims to produce an open-source cloud operating system

The principal objective is to enable creating and managing huge groups of virtual private servers in a cloud computing environment

OpenStack is embedded, to one degree or another, into data center infrastructure and cloud computing products

It provides multi-tenant IaaS, and aims to meet the needs of public and private clouds, regardless of size, by being simple to implement and massively scalable

OpenStack

The OpenStack OS consists of a number of independent modules, each of which has a project name and a functional name

The security module for OpenStack is Keystone

Keystone provides the shared security services essential for a functioning cloud computing infrastructure

It provides the following main services:

Identity

Token

Service catalog

Policies

The OpenStack OS consists of a number of independent modules, each of

which has a project name and a functional name. The modular structure is easy to

scale out and provides a commonly used set of core services. Typically, the components

are configured together to provide a comprehensive IaaS capability. However,

the modular design is such that the components are generally capable of being used

independently.

The security module for OpenStack is Keystone. Keystone provides the shared

security services essential for a functioning cloud computing infrastructure. It provides

the following main services:

• Identity:  This is user information authentication. This information defines a

user’s role and permissions within a project, and is the basis for a role-based

access control (RBAC) mechanism. Keystone supports multiple methods of

authentication, including user name and password, Lightweight Directory

Access Protocol (LDAP), and a means of configuring external authentication

methods supplied by the CSC.

• Token:  After authentication, a token is assigned and used for access control.

OpenStack services retain tokens and use them to query Keystone during

operations.

• Service catalog:  OpenStack service endpoints are registered with Keystone to

create a service catalog. A client for a service connects to Keystone and determines

an endpoint to call based on the returned catalog.

• Policies:  This service enforces different user access levels. Each OpenStack

service defines the access policies for its resources in an associated policy file.

A resource, for example, could be API access, the ability to attach to a volume,

or to fire up instances. These policies can be modified or updated by the cloud

administrator to control the access to the various resources.

33

 Figure 13.7 illustrates the way in which Keystone interacts with other Open-

Stack components to launch a new VM. Nova is the management software module

that controls VMs within the IaaS cloud computing platform. It manages the lifecycle

of compute instances in an OpenStack environment. Responsibilities include spawning,

scheduling, and decommissioning of machines on demand. Thus, Nova enables

enterprises and service providers to offer on-demand computing resources by provisioning

and managing large networks of VMs. Glance is a lookup and retrieval

system for VM disk images. It provides services for discovering, registering, and

retrieving virtual images through an API. Swift is a distributed object store that

creates a redundant and scalable storage space of up to multiple petabytes of data.

Object storage does not present a traditional file system, but rather a distributed

storage system for static data such as VM images, photo storage, e-mail storage,

backups, and archives.

34

The Internet of Things (IoT)

IoT is a term that refers to the expanding interconnection of smart devices, ranging from appliances to tiny sensors

A dominant theme is the embedding of short-range mobile transceivers into a wide array of gadgets and everyday items, enabling new forms of communication between people and things, and between things themselves

The Internet supports the interconnectivity usually through cloud systems

The objects deliver sensor information, act on their environment, and in some cases modify themselves, to create overall management of a larger system

The IoT is primarily driven by deeply embedded devices

These devices are low-bandwidth, low-repetition data capture, and low-bandwidth data-usage appliances that communicate with each other and provide data via user interfaces

Embedded appliances, such as high-resolution video security cameras, video VoIP phones, and a handful of others, require high-bandwidth streaming capabilities

 The Internet of Things is the latest development in the long and continuing revolution

of computing and communications. Its size, ubiquity, and influence on everyday

lives, business, and government dwarf any technical advance that has gone before.

 The Internet of Things (IoT) is a term that refers to the expanding interconnection

of smart devices, ranging from appliances to tiny sensors. A dominant theme

is the embedding of short-range mobile transceivers into a wide array of gadgets

and everyday items, enabling new forms of communication between people and

things, and between things themselves. The Internet now supports the interconnection

of billions of industrial and personal objects, usually through cloud systems.

The objects deliver sensor information, act on their environment, and in some

cases modify themselves, to create overall management of a larger system, like a

factory or city.

The IoT is primarily driven by deeply embedded devices. These devices are low-bandwidth,

low-repetition data capture, and low-bandwidth data-usage appliances

that communicate with each other and provide data via user interfaces. Embedded

appliances, such as high-resolution video security cameras, video VoIP phones, and a

handful of others, require high-bandwidth streaming capabilities. Yet countless products

simply require packets of data to be intermittently delivered.

35

Evolution

 With reference to the end systems supported, the Internet has gone through roughly

four generations of deployment culminating in the IoT:

1. Information technology (IT): PCs, servers, routers, firewalls, and so on, bought

as IT devices by enterprise IT people, primarily using wired connectivity.

2. Operational technology (OT): Machines/appliances with embedded IT built

by non-IT companies, such as medical machinery, SCADA (supervisory control

and data acquisition), process control, and kiosks, bought as appliances by

enterprise OT people, primarily using wired connectivity.

3. Personal technology: Smartphones, tablets, and eBook readers bought as IT

devices by consumers (employees) exclusively using wireless connectivity and

often multiple forms of wireless connectivity.

4. Sensor/actuator technology: Single-purpose devices bought by consumers, IT,

and OT people exclusively using wireless connectivity, generally of a single

form, as part of larger systems.

The fourth generation is usually thought of as the IoT, and which is marked by

using billions of embedded devices.

36

With reference to the end systems supported, the Internet has gone through roughly four generations of deployment culminating in the IoT:

Information technology (IT)

PCs, servers, routers, firewalls, and so on, bought as IT devices by enterprise IT people, primarily using wired connectivity

Operational technology (OT)

Machines/appliances with embedded IT built by non-IT companies, such as medical machinery, SCADA, process control, and kiosks, bought as appliances by enterprise OT people, primarily using wired connectivity

Personal technology

Smartphones, tablets, and eBook readers bought as IT devices by consumers (employees) exclusively using wireless connectivity and often multiple forms of wireless connectivity

Sensor/actuator technology

Single-purpose devices bought by consumers, IT and OT people exclusively using wireless connectivity, generally of a single form, as part of larger systems

It is the fourth generation that is usually thought of as the IoT, and which is marked by the use of billions of embedded devices

 The key components of an IoT-enabled device are the following (see Figure 13.8):

• Sensor:  A sensor measures some parameter of a physical, chemical, or biological

entity and delivers an electronic signal proportional to the observed

 characteristic, either in the form of an analog voltage level or a digital signal.

In both cases, the sensor output is typically input to a microcontroller or other

management element.

• Actuator:  An actuator receives an electronic signal from a controller and

responds by interacting with its environment to produce an effect on some

parameter of a physical, chemical, or biological entity.

• Microcontroller:  The “smart” in a smart device is provided by a deeply embedded

microcontroller.

• Transceiver:  A transceiver contains the electronics needed to transmit and

receive data. Most IoT devices contain a wireless transceiver, capable of communication

using Wi-Fi, ZigBee, or some other wireless scheme.

• Radio-frequency Identification (RFID):  (RFID) technology, which uses radio

waves to identify items, is increasingly becoming an enabling technology for IoT.

The main elements of an RFID system are tags and readers. RFID tags are small

programmable devices used for object, animal, and human tracking. They come

in a variety of shapes, sizes, functionalities, and costs. RFID readers acquire and

sometimes rewrite information stored on RFID tags that come within operating

range (a few inches up to several feet). Readers are usually connected to a computer

system that records and formats the acquired information for further uses.

37

 To better understand the function of an IoT, it is useful to view it in the context of a

complete enterprise network that includes third-party networking and cloud computing

elements. Figure 13.9 provides an overview illustration.

38

Edge

 At the edge of a typical enterprise network is a network of IoT-enabled devices,

consisting of sensors and perhaps actuators. These devices may communicate with

one another. For example, a cluster of sensors may all transmit their data to one

sensor that aggregates the data to be collected by a higher-level entity. At this

level also there may also be a number of gateways. A gateway interconnects the

IoT-enabled devices with the higher-level communication networks. It performs

the necessary translation between the protocols used in the communication networks

and those used by devices. A gateway may also perform a basic data aggregation

function.

39

At the edge of a typical enterprise network is a network of IoT-enabled devices consisting of sensors and perhaps actuators

These devices may communicate with one another

A cluster of sensors may all transmit their data to one sensor that aggregates the data to be collected by a higher-level entity

A gateway interconnects the IoT-enabled devices with the higher-level communication networks

It performs the necessary translation between the protocols used in the communication networks and those used by devices

It may also perform a basic data aggregation function

Fog

In many IoT deployments, massive amounts of data may be generated by a distributed network of sensors

Rather than store all of that data permanently (or at least for a long period) in central storage accessible to IoT applications, it is often desirable to do as much data processing close to the sensors as possible

The purpose of what is sometimes referred to as the edge computing level is to convert network data flows into information that is suitable for storage and higher-level processing

Processing elements at these levels may deal with high volumes of data and perform data transformation operations, resulting in the storage of much lower volumes of data

The following are examples of fog computing operations:

 In many IoT deployments, massive amounts of data may be generated by a distributed

network of sensors. For example, offshore oil fields and refineries can generate

a terabyte of data per day. An airplane can create multiple terabytes of data per

hour. Rather than store all of that data permanently (or at least for a long period) in

central storage accessible to IoT applications, it is often desirable to do as much data

processing close to the sensors as possible. Thus, the purpose of what is sometimes

referred to as the edge computing level is to convert network data flows into information

that is suitable for storage and higher-level processing. Processing elements

at these level may deal with high volumes of data and perform data transformation

operations, resulting in the storage of much lower volumes of data. The following are

examples of fog computing operations:

• Evaluation : Evaluating data for criteria as to whether it should be processed

at a higher level.

• Formatting : Reformatting data for consistent higher-level processing.

• Expanding/decoding : Handling cryptic data with additional context (such as

the origin).

• Distillation/reduction : Reducing and/or summarizing data to minimize the

impact of data and traffic on the network and higher-level processing systems.

• Assessment : Determining whether data represents a threshold or alert; this

could include redirecting data to additional destinations.

40

Evaluation

Formatting

Expanding/decoding

Distillation/reduction

Assessment

Fog

Generally fog computing devices are deployed physically near the edge of the IoT network near the sensors and other data-generating devices

Fog computing and fog services are expected to be a distinguishing characteristic of the IoT

Fog computing represents an opposite trend in modern networking from cloud computing

With cloud computing, massive, centralized storage and processing resources are made available to distributed customers over cloud networking facilities to a relatively small number of users

With fog computing, massive numbers of individual smart objects are interconnected with fog networking facilities that provide processing and storage resources close to the edge devices in an IoT

Fog computing addresses the challenges raised by the activity of thousands or millions of smart devices, including security, privacy, network capacity constraints, and latency requirements

The term fog computing is inspired by the fact that fog tends to hover low to the ground, whereas clouds are high in the sky

 Generally, fog computing devices they are deployed physically near the edge

of the IoT network; that is, near the sensors and other data-generating devices. Thus,

some of the basic processing of large volumes of generated data is offloaded and

outsourced from IoT application software located at the center.

Fog computing and fog services are expected to be a distinguishing characteristic

of the IoT. Fog computing represents an opposite trend in modern networking

from cloud computing. With cloud computing, massive, centralized storage and processing

resources are made available to distributed customers over cloud networking

facilities to a relatively small number of users. With fog computing, massive numbers

of individual smart objects are interconnected with fog networking facilities that

provide processing and storage resources close to the edge devices in an IoT. Fog

computing addresses the challenges raised by the activity of thousands or millions of

smart devices, including security, privacy, network capacity constraints, and latency

requirements. The term fog computing  is inspired by the fact that fog tends to hover

low to the ground, whereas clouds are high in the sky.

41

Core

The core network, also referred to as a backbone network, connects geographically dispersed fog networks as well as providing access to other networks that are not part of the enterprise network

Typically the core network will use very high-performance routers, high-capacity transmission lines, and multiple interconnected routers for increased redundancy and capacity

The core network may also connect to high-performance, high-capacity servers such as large database servers and private cloud facilities

Some of the core routers may be purely internal, providing redundancy and additional capacity without serving as edge routers

 The core network, also referred to as a backbone network, connects geographically

dispersed fog networks as well as providing access to other networks that are not part

of the enterprise network. Typically, the core network will use very high-performance

routers, high-capacity transmission lines, and multiple interconnected routers for

increased redundancy and capacity. The core network may also connect to high-performance,

high-capacity servers such as large database servers and private cloud

 facilities. Some of the core routers may be purely internal, providing redundancy and

additional capacity without serving as edge routers.

42

  Cloud Fog
Location of processing/storage resources Center Edge
Latency High Low
Access Fixed or wireless Mainly wireless
Support for mobility Not applicable Yes
Control Centralized/hierarchical (full control) Distributed/hierarchical (partial control)
Service access Through core At the edge/on handheld device
Availability 99.99% Highly volatile/highly redundant
Number of users/devices Tens/hundreds of millions Tens of billions
Main content generator Human Devices/sensors
Content generation Central location Anywhere
Content consumption End device Anywhere
Software virtual infrastructure Central enterprise servers User devices

Table 13.4

Comparison of Cloud and Fog Features

 The cloud network provides storage and processing capabilities for the massive

amounts of aggregated data that originate in IoT-enabled devices at the edge.

Cloud servers also host the applications that (1) interact with and manage the IoT

devices, and (2) analyze the IoT-generated data.

Table 13.4 compares cloud and fog computing.

43

 IoT is perhaps the most complex and undeveloped area of network security. To

see this, consider Figure 13.10, which shows the main elements of interest for IoT

security. At the center of the network are the application platforms, data storage

servers, and network and security management systems. These central systems

gather data from sensors, send control signals to actuators, and are responsible

for managing the IoT devices and their communication networks. At the edge of

the network are IoT-enabled devices, some of which are quite simple constrained

devices, and some of which are more intelligent unconstrained devices. As well,

gateways may perform protocol conversion and other networking service on behalf

of IoT devices.

Figure 13.10 illustrates a number of typical scenarios for interconnection and

the inclusion of security features. The shading in Figure 13.10 indicates the systems

that support at least some of these functions. Typically, gateways will implement

secure functions, such as TLS and IPsec. Unconstrained devices may or may not

implement some security capability. Constrained devices generally have limited or no

security features. As suggested in the figure, gateway devices can provide secure communication

between the gateway and the devices at the center, such as application

platforms and management platforms. However, any constrained or unconstrained

devices attached to the gateway are outside the zone of security established between

the gateway and the central systems. As shown, unconstrained devices can communicate

directly with the center and support security functions. However, constrained

devices that are not connected to gateways have no secure communications with

central devices.

44

Patching Vulnerability

 In an often-quoted 2014 article, security expert Bruce Schneier stated that we are at

a crisis point with regard to the security of embedded systems, including IoT devices

[SCHN14]. The embedded devices are riddled with vulnerabilities and there is no

good way to patch them. The chip manufacturers have strong incentives to produce

their product with its firmware and software as quickly and cheaply as possible. The

device manufacturers choose a chip based on price and features and do very little

if anything to the chip software and firmware. Their focus is the functionality of

the device itself. The end user may have no means of patching the system or, if so, little

information about when and how to patch. The result is that the hundreds of millions

of Internet-connected devices in the IoT are vulnerable to attack. This is certainly a

problem with sensors, allowing attackers to insert false data into the network. It is

potentially a graver threat with actuators, where the attacker can affect the operation

of machinery and other devices.

45

There is a crisis point with regard to the security of embedded systems, including IoT devices

The embedded devices are riddled with vulnerabilities and there is no good way to patch them

Chip manufacturers have strong incentives to produce their product as quickly and cheaply as possible

The device manufacturers focus is the functionality of the device itself

The end user may have no means of patching the system or, if so, little information about when and how to patch

The result is that the hundreds of millions of Internet-connected devices in the IoT are vulnerable to attack

This is certainly a problem with sensors, allowing attackers to insert false data into the network

It is potentially a graver threat with actuators, where the attacker can affect the operation of machinery and other devices

IoT Security and Privacy Requirements

ITU-T Recommendation Y.2066 includes a list of security requirements for the IoT

The requirements are defined as being the functional requirements during capturing, storing, transferring, aggregating, and processing the data of things, as well as to the provision of services which involve things

The requirements are:

Communication security

Data management security

Service provision security

Integration of security policies and techniques

Mutual authentication and authorization

Security audit

 ITU-T Recommendation Y.2066 (Common Requirements of the Internet of Things,

June 2014) includes a list of security requirements for the IoT. This list is a useful

baseline for understanding the scope of security implementation needed for an

IoT deployment. The requirements are defined as being the functional requirements

 during capturing, storing, transferring, aggregating, and processing the data of things,

as well as to the provision of services which involve things. These requirements are

related to all the IoT actors. The requirements are the following:

• Communication security:  Secure, trusted, and privacy protected communication

capability is required, so unauthorized access to the content of data can be

prohibited, integrity of data can be guaranteed and privacy-related content of

data can be protected during data transmission or transfer in IoT.

• Data management security:  Secure, trusted, and privacy protected data management

capability is required, so unauthorized access to the content of data can

be prohibited, integrity of data can be guaranteed, and privacy-related content

of data can be protected when storing or processing data in IoT.

• Service provision security:  Secure, trusted, and privacy protected service provision

capability is required, so unauthorized access to service and fraudulent

service provision can be prohibited and privacy information related to IoT users

can be protected.

• Integration of security policies and techniques:  The ability to integrate different

security policies and techniques is required, so as to ensure a consistent security

control over the variety of devices and user networks in IoT.

• Mutual authentication and authorization:  Before a device (or an IoT user) can

access the IoT, mutual authentication and authorization between the device

(or the IoT user) and IoT is required to be performed according to predefined

security policies

.

• Security audit:  Security audit is required to be supported in IoT. Any data

access or attempt to access IoT applications are required to be fully transparent,

traceable and reproducible according to appropriate regulation and laws.

In particular, IoT is required to support security audit for data transmission,

storage, processing, and application access.

46

 A key element in providing security in an IoT deployment is the gateway. ITU-T

Recommendation Y.2067 (Common Requirements and Capabilities of a Gateway for

Internet of Things Applications, June 2014) details specific security functions that

the gateway should implement, some of which are illustrated in Figure 13.11. These

consist of the following:

•  Support identification of each access to the connected devices.

•  Support authentication with devices. Based on application requirements and

device capabilities, it is required to support mutual or one-way authentication

with devices. With one-way authentication, either the device authenticates itself

to the gateway or the gateway authenticates itself to the device, but not both.

•  Support mutual authentication with applications.

•  Support the security of the data that are stored in devices and the gateway,

or transferred between the gateway and devices, or transferred between the

gateway and applications. Support the security of these data based on security

levels.

•  Support mechanisms to protect privacy for devices and the gateway.

•  Support self-diagnosis and self-repair as well as remote maintenance.

•  Support firmware and software update.

•  Support auto configuration or configuration by applications. The gateway is

required to support multiple configuration modes, for example, remote and

local configuration, automatic and manual configuration, and dynamic configuration

based on policies.

Some of these requirements may be difficult to achieve when they involve providing

security services for constrained devices. For example, the gateway should

support security of data stored in devices. Without encryption capability at the constrained

device, this may be impractical to achieve.

Note the Y.2067 requirements make a number of references to privacy requirements.

Privacy is an area of growing concern with the widespread deployment of

IoT-enabled things in homes, retail outlets, and vehicles and humans. As more things

are interconnected, governments and private enterprises will collect massive amounts

of data about individuals, including medical information, location and movement

information, and application usage.

47

Cisco has developed a framework for IoT security [FRAH15] that serves as a useful

guide to the security requirements for IoT. Figure 13.12 illustrates the security

environment related to the logical structure of an IoT. The IoT model is a simplified

version of the World Forum IoT Reference Model. It consists of the following levels:

• Smart objects/embedded systems:  Consists of sensors, actuators, and other embedded

systems at the edge of the network. This is the most vulnerable part of an

IoT. The devices may not be in a physically secure environment and may need to

function for years. Availability is certainly an issue. Network managers also need

to be concerned about the authenticity and integrity of the data generated by

sensors and about protecting actuators and other smart devices from unauthorized

use. Privacy and protection from eavesdropping may also be requirements.

• Fog/edge network:  This level is concerned with the wired and wireless interconnection

of IoT devices. In addition, a certain amount of data processing

and consolidation may be done at this level. A key issue of concern is the wide

variety of network technologies and protocols used by the various IoT devices

and the need to develop and enforce a uniform security policy.

• Core network:  The core network level provides data paths between network

center platforms and the IoT devices. The security issues here are those confronted

in traditional core networks. However, the vast number of endpoints to

interact with and manage creates a substantial security burden.

• Data center/cloud:  This level contains the application, data storage, and network

management platforms. IoT does not introduce any new security issues at

this level, other than the necessity of dealing with huge numbers of individual

endpoints.

 Within this four-level architecture, the Cisco model defines four general security

capabilities that span multiple levels:

• Role-based security:  RBAC systems assign access rights to roles instead of

individual users. In turn, users are assigned to different roles, either statically

 or dynamically, according to their responsibilities. RBAC enjoys widespread

commercial use in cloud and enterprise systems and is a well-understood tool

that can be used to manage access to IoT devices and the data they generate.

• Anti-tamper and detection:  This function is particularly important at the device

and fog network levels but also extends to the core network level. All of these

levels may involve components that are physically outside the area of the enterprise

that is protected by physical security measures.

• Data protection and confidentiality:  These functions extend to all level of the

architecture.

• Internet protocol protection:  Protection of data in motion from eavesdropping

and snooping is essential between all levels.

Figure 13.12 maps specific security functional areas across the four layers of

the IoT model.

48

[FRAH15] also proposes a secure IoT framework that defines the

components of a security facility for an IoT that encompasses all the levels, as shown

in Figure 13.13. The four components are:

• Authentication: Encompasses the elements that initiate the determination of

access by first identifying the IoT devices. In contrast to typical enterprise network

devices, which may be identified by a human credential (e.g., username

and password or token), the IoT endpoints must be fingerprinted by means

that do not require human interaction. Such identifiers include RFID, x.509

certificates, or the MAC address of the endpoint.

• Authorization: Controls a device’s access throughout the network fabric. This

element encompasses access control. Together with the authentication layer,

it establishes the necessary parameters to enable the exchange of information

 between devices and between devices and application platforms and enables

IoT-related services to be performed.

• Network enforced policy:  Encompasses all elements that route and transport

endpoint traffic securely over the infrastructure, whether control, management,

or actual data traffic.

• Secure analytics, including visibility and control:  This component includes all the

functions required for central management of IoT devices. This involves, firstly,

visibility of IoT devices, which simply means that central management services

are securely aware of the distributed IoT device collection, including identity

and attributes of each device. Building on this visibility is the ability to exert

control, including configuration, patch updates, and threat countermeasures.

An important concept related to this framework is that of trust relationship. In

this context, trust relationship refers to the ability of the two partners to an exchange to

have confidence in the identity and access rights of the other. The authentication component

of the trust framework provides a basic level of trust, which is expanded with the

authorization component. [FRAH15] gives the example that a car may establish a trust

relationship with another car from the same vendor. That trust relationship, however,

may only allow cars to exchange their safety capabilities. When a trusted relationship

is established between the same car and its dealer’s network, the car may be allowed to

share additional information such as its odometer reading and last maintenance record.

49

MiniSec

MiniSec is an open-source security module that is part of the TinyOS operating system

It is designed to be a link-level module that offers a high level of security, while simultaneously keeping energy consumption low and using very little memory

MiniSec provides confidentiality, authentication, and replay protection

MiniSec has two operating modes, one tailored for single-source communication, and another tailored for multi-source broadcast communication

This section provides an overview of MiniSec, an open-source security module that is

part of the TinyOS operating system. TinyOS is designed for small embedded systems

with tight requirements on memory, processing time, real-time response, and power

consumption. TinyOS takes the process of streamlining quite far, resulting in a very

minimal OS for embedded systems, with a typical configuration requiring 48 KB

of code and 10 KB of RAM [LEVI12]. The main application of TinyOS is wireless

sensor networks, and it has become the de facto OS for such networks. With sensor

networks the primary security concerns relate to wireless communications. MiniSec

is designed to be a link-level module that offers a high level of security, while simultaneously

keeping energy consumption low and using very little memory [LUK07].

MiniSec provides confidentiality, authentication, and replay protection.

MiniSec has two operating modes, one tailored for single-source communication,

and another tailored for multi-source broadcast communication. The latter does

not require per-sender state for replay protection and thus scales to large networks.

MiniSec is designed to meet the following requirements:

• Data authentication:  Enables a legitimate node to verify whether a message

originated from another legitimate node (i.e., a node with which it shares a

secret key) and was unchanged during transmission.

• Confidentiality:  A basic requirement for any secure communications system.

• Replay protection:  Prevents an attacker from successfully recording a packet

and replaying it at a later time.

• Freshness:  Because sensor nodes often stream time-varying measurements,

providing guarantee of message freshness is an important property. There are

 two types of freshness: Strong and weak. MiniSec provides a mechanism to

guarantee weak freshness, where a receiver can determine a partial ordering

over received messages without a local reference time point.

• Low energy overhead:  This is achieved by minimizing communication overhead

and by using only symmetric encryption.

• Resilient to lost messages:  The relatively high occurrence of dropped packets

in wireless sensor networks requires a design that can tolerate high message

loss rates.

50

MiniSec

MiniSec is designed to meet the following requirements:

• Data authentication:  Enables a legitimate node to verify whether a message

originated from another legitimate node (i.e., a node with which it shares a

secret key) and was unchanged during transmission.

• Confidentiality:  A basic requirement for any secure communications system.

• Replay protection:  Prevents an attacker from successfully recording a packet

and replaying it at a later time.

• Freshness:  Because sensor nodes often stream time-varying measurements,

providing guarantee of message freshness is an important property. There are

 two types of freshness: Strong and weak. MiniSec provides a mechanism to

guarantee weak freshness, where a receiver can determine a partial ordering

over received messages without a local reference time point.

• Low energy overhead:  This is achieved by minimizing communication overhead

and by using only symmetric encryption.

• Resilient to lost messages:  The relatively high occurrence of dropped packets

in wireless sensor networks requires a design that can tolerate high message

loss rates.

Two cryptographic algorithms used by MiniSec are

worth noting. The first of these is the encryption algorithm Skipjack. Skipjack was

developed in the 1990s by the U.S. National Security Agency (NSA). It is one of

the simplest and fastest block cipher algorithms, which is critical to embedded systems.

A study of eight possible candidate algorithms for wireless security networks

[LAW06] concluded that Skipjack was the best algorithm in terms of code memory,

data memory, encryption/decryption efficiency, and key setup efficiency.

Skipjack makes use of an 80-bit key. It was intended by NSA to provide a secure

system once it became clear that DES, with only a 56-bit key, was vulnerable. Contemporary

algorithms, such as AES, employ a key length of at least 128 bits, and 80 bits

is generally considered inadequate. However, for the limited application of wireless

sensor networks and other IoT devices, which provide large volumes of short data

blocks over a slow data link, Skipjack suffices. With its efficient computation and low

memory footprint, Skipjack is an attractive choice for IoT devices.

The block cipher mode of operation chosen for MiniSec is the Offset Codebook

(OCB) mode. As mentioned in Chapter 2, a mode of operation must be specified

when a plaintext source consists of multiple blocks of data to be encrypted with the

same encryption key. OCB mode is provably secure assuming the underlying block

cipher is secure. OCB mode is a one-pass mode of operation making it highly efficient.

Only one block cipher call is necessary for each plaintext block, (with an additional

two calls needed to complete the whole encryption process). OCB is especially

well suited for the stringent energy constraints of sensor nodes.

A feature that contributes significantly to the efficiency of OCB is that with

one pass through the sequence of plaintext blocks, it produces a ciphertext of equal

length and a tag for authentication. To decrypt a ciphertext, the receiver performs

the reverse process to recover the plaintext. Then, the receiver ensures that the tag is

as expected. If the receiver computes a different tag than the one accompanying the

ciphertext, the ciphertext is considered to be invalid. Thus, both message authentication

and message confidentiality are achieved with a single, simple algorithm. OCB

will be described in Chapter 21.

MiniSec employs per-device keys; that is, each key is unique to a particular pair

of devices to prevent replay attacks.

51

MiniSec is designed to meet the following requirements:

Data authentication

Confidentiality

Replay protection

Freshness

Low energy overhead

Resilient to lost messages

Summary

Cloud security concepts

Security issues for cloud computing

Addressing cloud computing security concerns

The Internet of Things

Things on the Internet of Things

Evolution

Components of IoT-enabled things

IoT and cloud context

IoT security

The patching vulnerability

IoT security and privacy requirements defined by ITU-T

An IoT security framework

An open-source IoT security module

Cloud computing

Cloud computing elements

Cloud service models

Cloud deployment models

Cloud computing reference architecture

Cloud security approaches

Risks and countermeasures

Data protection in the cloud

Security approaches for cloud computing assets

Cloud security as a service

Open-source cloud security module

Chapter 13 summary.

52

Figure 13.1 Cloud Computing Elements

Broad Network Access

Resource Pooling

Rapid Elasticity

Es se

n ti

al C

h ar

ac te

ri st

ic s

S er

vi ce

M od

el s

D ep

lo ym

en t

M od

el s

Measured Service

On-Demand Self-Service

Public Private Hybrid Community

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

Figure 13.1 Cloud Computing Elements

Broad

Network Access

Resource Pooling

Rapid

Elasticity

E

s

s

e

n

t

i

a

l

C

h

a

r

a

c

t

e

r

i

s

t

i

c

s

S

e

r

v

i

c

e

M

o

d

e

l

s

D

e

p

l

o

y

m

e

n

t

M

o

d

e

l

s

Measured

Service

On-Demand

Self-Service

Public Private Hybrid Community

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)

Figure 13.2 Separation of Responsibilities in Cloud Service Models

Managed by customer

Networking

Storage

Servers

Virtualization

OS

Middleware

Runtime

Data

Applications

Traditional

IT - on

premises

Networking

Storage

Servers

Virtualization

OS

Middleware

Runtime

Data

Applications

IaaS

Networking

Storage

Servers

Virtualization

OS

Middleware

Runtime

Data

Applications

PaaS

Networking

Storage

Servers

Virtualization

OS

Middleware

Runtime

Data

Applications

SaaS

Managed by cloud service provider

Figure 13.3 NIST Cloud Computing Reference Architecture

Cloud Consumer

Cloud Auditor

Service Intermediation

Service Aggregation

Service Arbitrage

Cloud Broker

Cloud Provider

Security Audit

Performance Audit

Privacy Impact Audit

SaaS Service Layer Service Orchestration Cloud

Service Management

PaaS

Hardware

Physical Resource Layer

Facility

Resource Abstraction and Control Layer

IaaS Business Support

Provisioning/ Configuration

Portability/ Interoperability

Se cu

ri ty

Pr iv

ac y

Cloud Carrier

Figure 13.3 NIST Cloud Computing Reference Architecture

Cloud

Consumer

Cloud

Auditor

Service

Intermediation

Service

Aggregation

Service

Arbitrage

Cloud

Broker

Cloud Provider

Security

Audit

Performance

Audit

Privacy

Impact Audit

SaaS

Service Layer

Service Orchestration Cloud

Service

Management

PaaS

Hardware

Physical Resour ce Layer

Facility

Resource Abstraction

and Control Layer

IaaS

Business

Support

Provisioning/

Configuration

Portability/

Interoperability

S

e

c

u

r

i

t

y

P

r

i

v

a

c

y

Cloud Carrier

Figure 13.4 Interactions Between Actors in Cloud Computing

Cloud Consumer

Cloud Broker

Cloud Auditor

Cloud Producer

Enterprise Network

Cloud Carrier

Data Center Network

Governance Extend organizational practices pertaining to the policies, procedures, and standards used for application development and service provisioning in the cloud, as well as the design, implementation, testing, use, and monitoring of deployed or engaged services. Put in place audit mechanisms and tools to ensure organizational practices are followed throughout the system lifecycle. Compliance Understand the various types of laws and regulations that impose security and privacy obligations on the organization and potentially impact cloud computing initiatives, particularly those involving data location, privacy and security controls, records management, and electronic discovery requirements. Review and assess the cloud provider’s offerings with respect to the organizational requirements to be met and ensure that the contract terms adequately meet the requirements. Ensure that the cloud provider’s electronic discovery capabilities and processes do not compromise the privacy or security of data and applications. Trust Ensure that service arrangements have sufficient means to allow visibility into the security and privacy controls and processes employed by the cloud provider, and their performance over time. Establish clear, exclusive ownership rights over data. Institute a risk management program that is flexible enough to adapt to the constantly evolving and shifting risk landscape for the lifecycle of the system. Continuously monitor the security state of the information system to support ongoing risk management decisions. Architecture Understand the underlying technologies that the cloud provider uses to provision services, including the implications that the technical controls involved have on the security and privacy of the system, over the full system lifecycle and across all system components. Identity and access management Ensure that adequate safeguards are in place to secure authentication, authorization, and other identity and access management functions, and are suitable for the organization. Software isolation Understand virtualization and other logical isolation techniques that the cloud provider employs in its multi-tenant software architecture, and assess the risks involved for the organization. Data protection Evaluate the suitability of the cloud provider’s data management solutions for the organizational data concerned and the ability to control access to data, to secure data while at rest, in transit, and in use, and to sanitize data. Take into consideration the risk of collating organizational data with those of other organizations whose threat profiles are high or whose data collectively represent significant concentrated value. Fully understand and weigh the risks involved in cryptographic key management with the facilities available in the cloud environment and the processes established by the cloud provider. Availability

Governance

Extend organizational practices pertaining to the policies, procedures, and standards used for

application development and service provisioning in the cloud, as well as the design, implementation,

testing, use, and monitoring of deployed or engaged services.

Put in place audit mechanisms and tools to ensure organizational practices are followed throughout

the system lifecycle.

Compliance

Understand the various types of laws and regulations that impose security and privacy obligations

on the organization and potentially impact cloud computing initiatives, particularly those involving data

location, privacy and security controls, records management, and electronic discovery requirements.

Review and assess the cloud provider’s offerings with respect to the organizational requirements to

be met and ensure that the contract terms adequately meet the requirements.

Ensure that the cloud provider’s electronic discovery capabilities and processes do not compromise the

privacy or security of data and applications.

Trust

Ensure that service arrangements have sufficient means to allow visibility into the security and

privacy controls and processes employed by the cloud provider, and their performance over time.

Establish clear, exclusive ownership rights over data.

Institute a risk management program that is flexible enough to adapt to the constantly evolving and

shifting risk landscape for the lifecycle of the system.

Continuously monitor the security state of the information system to support ongoing risk

management decisions.

Architecture

Understand the underlying technologies that the cloud provider uses to provision services, including

the implications that the technical controls involved have on the security and privacy of the system, over

the full system lifecycle and across all system components.

Identity and access management

Ensure that adequate safeguards are in place to secure authentication, authorization, and other

identity and access management functions, and are suitable for the organization.

Software isolation

Understand virtualization and other logical isolation techniques that the cloud provider employs in

its multi-tenant software architecture, and assess the risks involved for the organization.

Data protection

Evaluate the suitability of the cloud provider’s data management solutions for the organizational

data concerned and the ability to control access to data, to secure data while at rest, in transit, and in use,

and to sanitize data.

Take into consideration the risk of collating organizational data with those of other organizations

whose threat profiles are high or whose data collectively represent significant concentrated value.

Fully understand and weigh the risks involved in cryptographic key management with the facilities

available in the cloud environment and the processes established by the cloud provider.

Availability

Availability Understand the contract provisions and procedures for availability, data backup and recovery, and disaster recovery, and ensure that they meet the organization’s continuity and contingency planning requirements. Ensure that during an intermediate or prolonged disruption or a serious disaster, critical operations can be immediately resumed, and that all operations can be eventually reinstituted in a timely and organized manner. Incident response Understand the contract provisions and procedures for incident response and ensure that they meet the requirements of the organization. Ensure that the cloud provider has a transparent response process in place and sufficient mechanisms to share information during and after an incident. Ensure that the organization can respond to incidents in a coordinated fashion with the cloud provider in accordance with their respective roles and responsibilities for the computing environment.

Availability

Understand the contract provisions and procedures for availability, data backup and recovery, and

disaster recovery, and ensure that they meet the organization’s continuity and contingency planning

requirements.

Ensure that during an intermediate or prolonged disruption or a serious disaster, critical operations

can be immediately resumed, and that all operations can be eventually reinstituted in a timely and

organized manner.

Incident response

Understand the contract provisions and procedures for incident response and ensure that they meet

the requirements of the organization.

Ensure that the cloud provider has a transparent response process in place and sufficient

mechanisms to share information during and after an incident.

Ensure that the organization can respond to incidents in a coordinated fashion with the cloud

provider in accordance with their respective roles and responsibilities for the computing environment.

Technical Operational Management Access Control
 Audit and Accountability Identification and

Authentication System and

Communication Protection

Awareness and Training Configuration and

Management Contingency Planning Incident Response Maintenance Media Protection Physical and Environmental

Protection Personnel Security
 System

and Information Integrity

Certification, Accreditation and Security Assessment

Planning
 Risk Assessment System and Services Acquisition

Technical Operational Management

Access Control

Audit and Accountability

Identification and

Authentication

System and

Communication

Protection

Awareness and Training

Configuration and

Management

Contingency Planning

Incident Response

Maintenance

Media Protection

Physical and Environmental

Protection

Personnel Security System

and Information Integrity

Certification, Accreditation and

Security Assessment

Planning Risk Assessment

System and Services Acquisition

Figure 13.5 Security Considerations for Cloud Computing Assets

(a) Cloud computing assets

Organization

Pr ov id er

Cu sto

m er

IaaS PaaS SaaS

Hypervisor/ OS/Network

Middleware + Hypervisor/OS

/Network

Virtual machine

Application

Application

Client Client

Application + Middleware +

Hypervisor/OS /Network

OS

Facilities (network, housing, cooling, power)

(b) Cloud computing management tasks

Manage and protect supplies and facilities (power, cooling, cabling, guards, etc.)

Deploy and maintain hardware (server racks, disks, routers, cables, etc.)

Pr ov id er

Cu sto

m er

IaaS PaaS SaaS

Manage user accounts, user permissions, etc.

Deploy, update and patch application software

Deploy, update and

patch OS

Deploy, update and patch app

software

Deploy, update and patch hypervisor/OS/network

Deploy, update and patch middleware + libraries

Figure 13.6 Elements of Cloud Security as a Service

Cloud service clients and adversaries

Identity and access management Network security

Data loss prevention

Web security Intrusion management

Encryption

E-mail security

Security assessments Security information and event management Business continuity and disaster recovery

Figure 13.6 Elements of Cloud Security as a Service

Cloud service clients and adversaries

Identity and access management

Network security

Data loss

prevention

Web security

Intrusion

management

Encryption

E-mail security

Security assessments

Security information and

event management

Business continuity and

disaster recovery

Figure 13.7 Launching a Virtual Machine in OpenStack

Nova Scheduler

Nova Scheduler

Swift proxy

Swift worker

4. Schedule VM

5. Receive launch VM

message

6. Request image 8. Look up

image 9. Return location & metadata

10 . R

eq ue

st im

ag e

13 . G

et im

ag e

11. Find service, check credentials, request image

7. Find service, check credentials, request image

12. Get image

3. Launch VM

14. Launch VM

1. Launch VM

2. Fi nd s

ervic e,

chec k cre

dent ials,

laun ch V

M

Client

Nova compute

Nova message queue

Keystone

Glance API

Glance registry

Figure 13.9 The IoT/Cloud Context

Data center/

cloud

Ethernet Transactional response time

Core network

IP/MPLS, security QoS/QoE driven response time

Fog network

3G/4G/LTE/Wi-Fi Distributed intelligence Real-time response time

Smart things network

Bluetooth, WiFi, wired millisecond response time

Network management Applications

Millions

of devices

Tens of

thousands

of devices

Thousands

of devices

Hundreds

of devices

Figure 13.10 IoT Security: Elements of Interest

A

Internet or

Enterprise Network

G

G

G

= application, management, or storage platform

= gateway

= unconstrained device

= constrained device

shading = includes security features

C

CCC

C

C C

C

U

U

U U

U

U U

U

A

A

Figure 13.11 IoT Gateway Security Functions

Devices

Gateways

Internet or enterprise network

Application platforms

Authentication secure data transfer

Authentication secure data transfer

Security, privacy of data at rest

Figure 13.11 IoT Gateway Security Functions

Devices

Gateways

Internet or

enterprise

network

Application

platforms

Authentication

secure data transfer

Authentication

secure data transfer

Security, privacy

of data at rest

Figure 13.13 Secure IoT Framework

Network Enforced Policy

Secure Analytics: Visibility and Control

Authorization

Authentication

Tr us

t R el

at io

ns hi

p