Security and Privacy in Cloud Computing -...

48
Ragib Hasan Johns Hopkins University en.600.412 Spring 2011 Lecture 2 02/07/2011 Security and Privacy in Cloud Computing 1 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan

Transcript of Security and Privacy in Cloud Computing -...

Ragib HasanJohns Hopkins Universityen.600.412 Spring 2011

Lecture 202/07/2011

Security and Privacy in Cloud Computing

1en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan

Attack Modeling, and Novel Attack Surfaces

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 2

Goal

1. Learn the cloud computing threat model by examining the assets, vulnerabilities, entry points, and actors in a cloud

2. Examine a novel topology attack on cloud

Assignment for next class• Review: Thomas Ristenpart et al., Hey, You, Get Off of My Cloud! Exploring Information

Leakage in Third-Party Compute Clouds, proc. ACM CCS 2009.

• Format:– Summary: A brief overview of the paper, 1 paragraph (5 / 6

sentences)– Pros: 3 or more issues– Cons: 3 or more issues– Possible improvements: Any possible suggestions to improve

the work

• Due: 2.59 pm 2/14/2010

• Submission: By email to [email protected] (text only, no attachments please) (Please use the subject line: Review Assignment 1)

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 3

Threat ModelA threat model helps in analyzing a security problem, design mitigation strategies, and evaluate solutions

Steps:– Identify attackers, assets, threats and other

components

– Rank the threats

– Choose mitigation strategies

– Build solutions based on the strategies

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 4

Threat Model

Basic components

• Attacker modeling– Choose what attacker to consider

– Attacker motivation and capabilities

• Assets / Attacker Goals

• Vulnerabilities / threats

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 5

Recall: Cloud Computing Stack

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 6

Recall: Cloud Architecture

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 7

ClientSaaS / PaaS

Provider

Cloud Provider(IaaS)

Attackers

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 8

Who is the attacker?

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 9

Insider?• Malicious employees at client• Malicious employees at Cloud provider• Cloud provider itself

Outsider?•Intruders•Network attackers?

Attacker Capability: Malicious Insiders

• At client

– Learn passwords/authentication information

– Gain control of the VMs

• At cloud provider

– Log client communication

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 10

Attacker Capability: Cloud Provider

• What?

– Can read unencrypted data

– Can possibly peek into VMs, or make copies of VMs

– Can monitor network communication, application patterns

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 11

Attacker motivation: Cloud Provider

• Why?

– Gain information about client data

– Gain information on client behavior

– Sell the information or use itself

• Why not?

– Cheaper to be honest?

• Why? (again)

– Third party clouds?

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 12

Attacker Capability: Outside attacker

• What?

– Listen to network traffic (passive)

– Insert malicious traffic (active)

– Probe cloud structure (active)

– Launch DoS

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 13

Assets

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 14

Threat Model

Basic components

• Attacker modeling– Choose what attacker to consider

– Attacker motivation and capabilities

• Assets / Attacker Goals

• Vulnerabilities / threats

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 15

Attacker goals: Outside attackers

• Intrusion

• Network analysis

• Man in the middle

• Cartography

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 16

Assets (Attacker goals)

• Confidentiality:

– Data stored in the cloud

– Configuration of VMs running on the cloud

– Identity of the cloud users

– Location of the VMs running client code

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 17

Assets (Attacker goals)

• Integrity

– Data stored in the cloud

– Computations performed on the cloud

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 18

Assets (Attacker goals)

• Availability

– Cloud infrastructure

– SaaS / PaaS

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 19

Threats

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 20

Organizing the threats using STRIDE

• Spoofing identity

• Tampering with data

• Repudiation

• Information disclosure

• Denial of service

• Elevation of privilege

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 21

Typical threats

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 22

Threat type Mitigation technique

Spoofing identity•Authentication•Protect secrets•Do not store secrets

Tampering with data

•Authorization•Hashes•Message authentication codes•Digital signatures•Tamper-resistant protocols

Repudiation•Digital signatures•Timestamps•Audit trails

[STRIDE]

Typical threats (contd.)

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 23

Threat type Mitigation technique

Information disclosure

•Authorization•Privacy-enhanced protocols•Encryption•Protect secrets•Do not store secrets

Denial of service

•Authentication•Authorization•Filtering•Throttling•Quality of service

Elevation of privilege •Run with least privilege

[STRIDE]

Summary

• A threat model helps in designing appropriate defenses against particular attackers

• Your solution and security countermeasures will depend on the particular threat model you want to address

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 24

Mapping/topology Attacks

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 25

Lecture Goal• Learn about mapping attacks• Discuss different techniques and mitigation strategies• Analyze the practicality and impact

Reading: Hey, You, Get Off of My Cloud: Exploring Information Leakage in Third-Party Compute Clouds, Ristenpart et al., CCS 2009

Why Cloud Computing brings new threats?

Traditional system security mostly means keeping bad guys out

The attacker needs to either compromise the auth/access control system, or impersonate existing users

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 26

Why Cloud Computing brings new threats?

But clouds allow co-tenancy :

Multiple independent users share the same physical infrastructure

So, an attacker can legitimately be in the same physical machine as the target

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 27

Challenges for the attacker

How to find out where the target is located

How to be co-located with the target in the same (physical) machine

How to gather informationabout the target

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 28

Hey, You, Get Off of My Cloud: Exploring Information Leakage in

Third-Party Compute Clouds, Ristenpart et al., CCS 2009

• First work on cloud cartography

• Attack launched against commercially available “real” cloud (Amazon EC2)

• Claims up to 40% success in co-residence with target VM

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 29

Strategy

• Map the cloud infrastructure to find where the target is located

• Use various heuristics to determine co-residency of two VMs

• Launch probe VMs trying to be co-resident with target VMs

• Exploit cross-VM leakage to gather info about target

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 30

Threat model

Attacker model

– Cloud infrastructure provider is trustworthy

– Cloud insiders are trustworthy

– Attacker is a malicious third party who can legitimately the cloud provider as a client

Assets

– Confidentiality aware services run on cloud

– Availability of services run on cloud

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 31

Tools of the trade

• Nmap, hping, wget for network probing

• Amazon EC2’s own DNS to map dns names to IPs

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 32

Sidenote: EC2 configuration

EC2 uses Xen, with up to 8 instances per physical machine

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 33

Dom0 is the first instance on the machine, connected to physical adapter

All other instances route to external world via dom0

[Figures from Xen Wiki]

Task 1: Mapping the cloud

Reverse engineering the VM placement schemes provides useful heuristics about EC2’s strategy

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 34

Different availability zones use different IP regions.

Each instance has one internal IP and one external IP. Both are static.For example:

External IP: 75.101.210.100External Name: ec2-75-101-210-100.computer-1.amazonaws.comInternal IP: 10.252.146.52Internal Name: domU-12-31-38-00-8D-C6.computer-1.internal

Task 1: Mapping the Cloud

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 35

Finding: same instance type within the same zone = similar IP regions

Reverse engineered mapping decision heuristic:A /24 inherits any included sampled instance type.A /24 containing a Dom0 IP address only contains Dom0 IP address.All /24’s between two consecutive Dom0 /24’s inherit the former’s associated type.

Task #2: Determining co-residence

• Co-residence: Check to determine if a given VM is placed in the same physical machine as another VM

• Network based check:– Match Dom0 IP addresses, check packet RTT, close IP

addresses (within 7, since each machine has 8 VMs at most)

– Traceroute provides Dom0 of target

– No false positives found during experiments

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 36

Task #3: Making a probe VM co-resident with target VM

Brute force scheme

– Idea: figure out target’s availability zone and type

– Launch many probe instances in the same area

– Success rate: 8.4%

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 37

Task #3: Making a probe VM co-resident with target VM

Smarter strategy: utilize locality

– Idea: VM instances launched right after target are likely to be co-resident with the target

– Paper claims 40% success rate

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 38

Task #3: Making a probe VM co-resident with target VM

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 39

Window of opportunity is quite large, measured in days

Task #4: Gather leaked information

Now that the VM is co-resident with target, what can it do?

– Gather information via side channels

– Perform DoS

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 40

Task 4.1: Gathering information

If VM’s are separated and secure, the best the attacker can do is to gather information

– Measure latency of cache loads

– Use that to determine

• Co-residence

• Traffic rates

• Keystroke timing

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 41

Mitigation strategies #1: Mapping

• Use a randomized scheme to allocate IP addresses

• Block some tools (nmap, traceroute)

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 42

Mitigation strategies #2: Co-residence checks

• Prevent traceroute (i.e., prevent identification of dom0)

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 43

Mitigation strategies #3: Co-location

• Not allow co-residence at all

– Beneficial for cloud user

– Not efficient for cloud provider

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 44

Mitigation strategies #4: Information leakage

• Prevent cache load attacks?

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 45

Discussion

• How is the problem different from other attacks?

• What’s so special about clouds?

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 46

Discussion

Cons

– Are the side channels *really* effective?

2/07/2011 en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan 47

2/07/2011 48en.600.412 Spring 2011 Lecture 2 | JHU | Ragib Hasan

Further Reading

Frank Swiderski and Window Snyder , “Threat Modeling “, Microsoft Press, 2004

The STRIDE Threat Model

Amazon downplays report highlighting vulnerabilities in its cloud serviceHypothetical example described in report much harder to pull off in reality, company saysTechWorld, Oct 29, 2009. http://bit.ly/dvxEZp