CLICKJACKING & PHISHING CMSC 414 FEB 28 2019 Town Hall - - PowerPoint PPT Presentation

clickjacking phishing
SMART_READER_LITE
LIVE PREVIEW

CLICKJACKING & PHISHING CMSC 414 FEB 28 2019 Town Hall - - PowerPoint PPT Presentation

CLICKJACKING & PHISHING CMSC 414 FEB 28 2019 Town Hall tonight CSIC 1115, 5pm-7pm There is insufficient space in Iribe Virtually no student group space No TA space Extra space is going to non-CS UMIACS


slide-1
SLIDE 1

CLICKJACKING &
 PHISHING

CMSC 414

FEB 28 2019

slide-2
SLIDE 2

Town Hall tonight

  • CSIC 1115, 5pm-7pm
  • There is insufficient space in Iribe
  • Virtually no student group space
  • No TA space

  • Extra space is going to non-CS UMIACS
  • reddit.com/r/umd has a post about it
  • Ask questions, find out what’s going on,

be a part of the future of computing at UMD

slide-3
SLIDE 3

Misleading users

  • Browser assumes that clicks and keystrokes =

clear indication of what the user wants to do

  • Constitutes part of the user’s trusted path
  • Attacker can meddle with integrity of this

relationship in all sorts of ways

slide-4
SLIDE 4

Misleading users

  • Browser assumes that clicks and keystrokes =

clear indication of what the user wants to do

  • Constitutes part of the user’s trusted path
  • Attacker can meddle with integrity of this

relationship in all sorts of ways

  • Recall the power of Javascript
  • Alter page contents (dynamically)
  • Track events (mouse clicks, motion, keystrokes)
  • Read/set cookies
  • Issue web requests, read replies
slide-5
SLIDE 5

Using JS to Steal Facebook Likes

Claim Bait and switch

User tries to claim their free iPad, but
 you want them to click your Like button (Many of these attacks are similar to TOCTTOU vulnerabilities)

slide-6
SLIDE 6

Using JS to Steal Facebook Likes

Claim Bait and switch

User tries to claim their free iPad, but
 you want them to click your Like button (Many of these attacks are similar to TOCTTOU vulnerabilities) User intent

slide-7
SLIDE 7

Using JS to Steal Facebook Likes

Claim Bait and switch

User tries to claim their free iPad, but
 you want them to click your Like button (Many of these attacks are similar to TOCTTOU vulnerabilities) User intent Actual outcome

slide-8
SLIDE 8

Clickjacking

When one principal tricks the user into
 interacting with UI elements of another principal An attack application (script) compromises the context integrity


  • f another application’s User Interface when the user acts on the

UI

slide-9
SLIDE 9

Clickjacking

When one principal tricks the user into
 interacting with UI elements of another principal An attack application (script) compromises the context integrity


  • f another application’s User Interface when the user acts on the

UI

Context Integrity

  • 1. Visual context: what a user should see right before


the sensitive action. Ensuring this = the sensitive
 UI element and the cursor are both visible

  • 2. Temporal context: the timing of a user action. Ensuring


this = the user action at a particular time is what
 the user intended

slide-10
SLIDE 10

Compromising visual integrity of the target

  • Hide the target element
  • CSS lets you set the opacity
  • f an element to zero (clear)
slide-11
SLIDE 11

Compromising visual integrity of the target

  • Hide the target element
  • CSS lets you set the opacity
  • f an element to zero (clear)

Pay

To: Bad guy From: Victim Amount: $1000

  • Partially overlay the target
  • Or crop the parts you don’t want to show
slide-12
SLIDE 12

Compromising visual integrity of the target

  • Hide the target element
  • CSS lets you set the opacity
  • f an element to zero (clear)

Pay

To: Bad guy From: Victim Amount: $1000

  • Partially overlay the target
  • Or crop the parts you don’t want to show

To: Charity From: Nice person Amount: $10

slide-13
SLIDE 13
  • Manipulating cursor feedback

Compromising visual integrity of the pointer

Claim

Actual cursor

slide-14
SLIDE 14
  • Manipulating cursor feedback

Compromising visual integrity of the pointer

Claim

Actual cursor Displayed cursor

slide-15
SLIDE 15
  • Manipulating cursor feedback

Compromising visual integrity of the pointer

Claim

Actual cursor Displayed cursor

slide-16
SLIDE 16

Clickjacking to access a user’s webcam

slide-17
SLIDE 17

Some clickjacking defenses

  • Require confirmation for actions
  • Annoys users
  • Frame-busting: Website ensures that its

“vulnerable” pages can’t be included as a frame inside another browser frame

  • So user can’t be looking at it with

something invisible overlaid on top…

  • …nor have the site invisible above

something else

slide-18
SLIDE 18

The attacker implements this by placing Twitter’s page in a “Frame” inside their own page, otherwise they wouldn’t overlap

slide-19
SLIDE 19

Some clickjacking defenses

  • Require confirmation for actions
  • Annoys users
  • Frame-busting: Website ensures that its “vulnerable” pages

can’t be included as a frame inside another browser frame

  • So user can’t be looking at it with something invisible overlaid
  • n top…
  • …nor have the site invisible above something else
  • Conceptually implemented with Javascript like


if(top.location != self.location)
 top.location = self.location;
 (actually, it’s quite tricky to get this right)

  • Current research considers more general approaches
slide-20
SLIDE 20

InContext Defense (recent research)

  • A set of techniques to ensure context

integrity for user actions

  • Servers opt-in
  • Let the websites indicate their sensitive

UIs

  • Let browsers enforce context integrity

when users act on the sensitive UIs

slide-21
SLIDE 21

Ensuring visual integrity of pointer

  • Remove cursor customization
  • Attack success: 43% -> 16%
slide-22
SLIDE 22

Ensuring visual integrity of pointer

  • Lightbox effect around target on pointer

entry

  • Attack success (freezing + lightbox):

2%

slide-23
SLIDE 23

Enforcing temporal integrity

  • UI delay: after visual

changes on target or pointer, invalidate clicks for a few milliseconds

  • Pointer re-entry: after

visual changes on target, invalidate clicks until pointer re-enters target

slide-24
SLIDE 24

Other forms of UI sneakiness

  • Along with stealing events, attackers can

use the power of Javascript customization and dynamic changes to mess with the user’s mind

  • For example, the user may not be paying

attention, so you can swap tabs on them

  • Or they may find themselves “eclipsed”
slide-25
SLIDE 25

Browser in browser

slide-26
SLIDE 26

WHAT IS UNTRUSTWORTHY HERE?

slide-27
SLIDE 27
slide-28
SLIDE 28

WHAT IS UNTRUSTWORTHY HERE?

slide-29
SLIDE 29
slide-30
SLIDE 30
slide-31
SLIDE 31
slide-32
SLIDE 32

CLICKJACKING: EXPERIMENTS

  • Mechanical Turks
  • $0.25 per participant to “follow the on-screen

instructions and complete an interactive task.”

  • Simulated attacks, simulated defenses
  • 3251 participants
  • Note: You must control for sloppy participation
  • Excluded 370 repeat-participants
slide-33
SLIDE 33

CLICKJACKING: EXPERIMENTS

  • Control group 1
  • “Skip ad” button
  • No attack to trick the user
  • Purpose: To determine the click rate we would hope a defense

could achieve in countering an attack

  • 38% didn’t skip the ad
  • Control group 2
  • “Allow” button to skip ad
  • Purpose: An attempt to persuade users to grant access without

tricking them

  • 8% allowed (statistically indistinguishable from group 1)
slide-34
SLIDE 34

CLICKJACKING: EXPERIMENTS

slide-35
SLIDE 35

CLICKJACKING: EXPERIMENTS

slide-36
SLIDE 36

CLICKJACKING: EXPERIMENTS

slide-37
SLIDE 37

CLICKJACKING: EXPERIMENTS

slide-38
SLIDE 38

PHISHING

slide-39
SLIDE 39

PHISHING

  • The attacker pretends to be someone (or something) they

are not….

  • Email addresses that look like someone else
  • Domain names that look like real ones
  • …In an attempt to gain information/access
  • “Email your password”
  • “Enter your credit card number”
slide-40
SLIDE 40

TYPES OF PHISHING

  • “Phishing” generally casts a wide net
  • Generally has little to no domain-specific information
  • E.g., emails that appear to come from Apple, asking for

appleid passwords

  • Broader audience, less likely to fall for it
  • “Spearphishing” is more targeted
  • Exploits domain knowledge
  • E.g., “I’m your TA; we need the keys for your project"
  • Narrower audience, more likely to fall for it
slide-41
SLIDE 41

DEFENDING AGAINST PHISHING

  • Training
  • Try to educate users to identify and avoid
  • Many companies internally phish; if you fall for it once,

you get a warning — if you fall for it twice, you go to mandatory training

  • Automated detection
  • Can we identify phishing and filter it?
  • Can we make it harder for the attacker to do?
slide-42
SLIDE 42

AN EXAMPLE RESEARCH PROBLEM, END-TO-END

My wife Me

slide-43
SLIDE 43

AN EXAMPLE RESEARCH PROBLEM, END-TO-END

My wife Me

Is this actually
 Amazon?

slide-44
SLIDE 44

AN EXAMPLE RESEARCH PROBLEM, END-TO-END

My wife Me

amazon.com-deals.com

Is this actually
 Amazon?

slide-45
SLIDE 45

MAKING AN OBSERVATION

Me

amazon.com-deals.com

slide-46
SLIDE 46

MAKING AN OBSERVATION

Me

amazon.com-deals.com

The apparent website

slide-47
SLIDE 47

MAKING AN OBSERVATION

Me

amazon.com-deals.com

The apparent website The actual website

slide-48
SLIDE 48

MAKING AN OBSERVATION

Me

amazon.com-deals.com

slide-49
SLIDE 49

MAKING AN OBSERVATION

Me

amazon.com-deals.com

What does this mean to you?

slide-50
SLIDE 50

MAKING AN OBSERVATION

Me

amazon.com-deals.com

What does this mean to you?

  • 0. Learn from other people’s work
slide-51
SLIDE 51

Public Key Infrastructures (PKIs)

Website Browser

How can users truly know with whom they are communicating?

slide-52
SLIDE 52

Public Key Infrastructures (PKIs)

Website Browser

How can users truly know with whom they are communicating?

slide-53
SLIDE 53

Public Key Infrastructures (PKIs)

Website Browser

How can users truly know with whom they are communicating?

slide-54
SLIDE 54

Public Key Infrastructures (PKIs)

Website Browser Certificate Authority

How can users truly know with whom they are communicating?

slide-55
SLIDE 55

Public Key Infrastructures (PKIs)

Website Browser Certificate Authority

Vetting

How can users truly know with whom they are communicating?

slide-56
SLIDE 56

Public Key Infrastructures (PKIs)

Website Browser

Certificate


 is indeed BoA The owner of Certificate Authority

How can users truly know with whom they are communicating?

slide-57
SLIDE 57

Public Key Infrastructures (PKIs)

Website Browser Certificate Authority

Certificate

How can users truly know with whom they are communicating?

slide-58
SLIDE 58

Public Key Infrastructures (PKIs)

Website Browser Certificate Authority

Certificate

How can users truly know with whom they are communicating?

slide-59
SLIDE 59

Public Key Infrastructures (PKIs)

Website Browser Certificate Authority

Certificate

How can users truly know with whom they are communicating?

slide-60
SLIDE 60

Public Key Infrastructures (PKIs)

Website Browser

Certificate

Certificate Authority

Certificate

How can users truly know with whom they are communicating?

slide-61
SLIDE 61

Public Key Infrastructures (PKIs)

Browser Certificate Authority Website

Certificate

How can users truly know with whom they are communicating?

Certificate

slide-62
SLIDE 62

Public Key Infrastructures (PKIs)

Browser Certificate Authority Website

Certificate

How can users truly know with whom they are communicating?

Certificate

slide-63
SLIDE 63

Public Key Infrastructures (PKIs)

Browser Certificate Authority Website

Certificate

How can users truly know with whom they are communicating?

Certificate

slide-64
SLIDE 64

MAKING AN OBSERVATION

Me

amazon.com-deals.com

slide-65
SLIDE 65

MAKING AN OBSERVATION

Me

amazon.com-deals.com

What does this mean to you?

slide-66
SLIDE 66

MAKING AN OBSERVATION

Me

amazon.com-deals.com

What does this mean to you?

Somehow, com-deals.com got a certificate
 that looks like amazon.com

slide-67
SLIDE 67

MAKING AN OBSERVATION

This appears to be prevalent

slide-68
SLIDE 68

MAKING AN OBSERVATION

This appears to be prevalent

slide-69
SLIDE 69

MAKING AN OBSERVATION

This appears to be prevalent…like really prevalent

slide-70
SLIDE 70

MAKING AN OBSERVATION

This appears to be prevalent…like really prevalent

slide-71
SLIDE 71

amazon.com-deals.com

The apparent website The actual website

slide-72
SLIDE 72

ASKING A QUESTION

amazon.com-deals.com

The apparent website The actual website

slide-73
SLIDE 73

ASKING A QUESTION

WHAT DO YOU THINK ARE SOME GOOD QUESTIONS WE COULD ASK?

amazon.com-deals.com

The apparent website The actual website

slide-74
SLIDE 74

ASKING SOME QUESTIONS

slide-75
SLIDE 75

ASKING SOME QUESTIONS

How often does this happen?

slide-76
SLIDE 76

ASKING SOME QUESTIONS

How often does this happen? Who is giving these attackers certificates?

slide-77
SLIDE 77

ASKING SOME QUESTIONS

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious?

slide-78
SLIDE 78

ASKING SOME QUESTIONS

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious? What can we do to stop this kind of attack?

slide-79
SLIDE 79

HOW DO WE ANSWER THESE QUESTIONS?

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious? What can we do to stop this kind of attack?

slide-80
SLIDE 80

HOW DO WE ANSWER THESE QUESTIONS?

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious? What can we do to stop this kind of attack?

WE NEED A DATASET

slide-81
SLIDE 81

HOW DO WE ANSWER THESE QUESTIONS?

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious? What can we do to stop this kind of attack?

WE NEED A DATASET GET *ALL* OF THE CERTIFICATES!

slide-82
SLIDE 82

RESEARCH DATASETS

If it doesn’t exist, collect it If you do something new with the data, share it If it does exist, download it

slide-83
SLIDE 83

RESEARCH DATASETS

If it doesn’t exist, collect it If you do something new with the data, share it If it does exist, download it

PART OF BEING A GOOD RESEARCHER IS KNOWING WHAT DATA IS OUT THERE (EXPERIENCE WITH TIME)

slide-84
SLIDE 84

RESEARCH DATASETS

If it doesn’t exist, collect it If you do something new with the data, share it If it does exist, download it

PART OF BEING A GOOD RESEARCHER IS KNOWING WHAT DATA IS OUT THERE (EXPERIENCE WITH TIME)

YOUR ADVISOR WILL HELP WITH THIS

slide-85
SLIDE 85

CERTIFICATE DATASETS

IT IS NOW POSSIBLE TO DOWNLOAD
 ALL KNOWN CERTIFICATES ON THE WEB!

slide-86
SLIDE 86

DEVISING A SOLUTION

slide-87
SLIDE 87

DEVISING A SOLUTION

Certificate dataset C

Each certificate has ≥1 domain name 315,284,603 total domain names amazon.com-deals.com

slide-88
SLIDE 88

DEVISING A SOLUTION

Website popularity dataset P

Alexa top-10,000 most popular websites

Certificate dataset C

Each certificate has ≥1 domain name 315,284,603 total domain names amazon.com-deals.com google.com youtube.com amazon.com

slide-89
SLIDE 89

DEVISING A SOLUTION

Website popularity dataset P

Alexa top-10,000 most popular websites

Certificate dataset C

Each certificate has ≥1 domain name 315,284,603 total domain names

We need an algorithm

Search in each certificate in C for a popular website from P amazon.com-deals.com google.com youtube.com amazon.com

slide-90
SLIDE 90

DEVISING A SOLUTION

Website popularity dataset P

Alexa top-10,000 most popular websites

Certificate dataset C

Each certificate has ≥1 domain name 315,284,603 total domain names

We need an algorithm

Search in each certificate in C for a popular website from P amazon.com-deals.com google.com youtube.com amazon.com

⨯ ⨯

slide-91
SLIDE 91

DEVISING A SOLUTION

Website popularity dataset P

Alexa top-10,000 most popular websites

Certificate dataset C

Each certificate has ≥1 domain name 315,284,603 total domain names

We need an algorithm

Search in each certificate in C for a popular website from P amazon.com-deals.com google.com youtube.com amazon.com

⨯ ⨯

Naive algorithm
 3.15 Trillion checks!

slide-92
SLIDE 92

ANALYZING A DATASET

How often does this happen? Who is giving these attackers certificates? When it happens, does it tend to be malicious? What can we do to stop this kind of attack? As you analyze a dataset, it is important to
 really understand the results and the outliers

slide-93
SLIDE 93

WHO IS BEING IMPERSONATED?

slide-94
SLIDE 94

WHO IS BEING IMPERSONATED?

slide-95
SLIDE 95

WHAT TLD’S ARE ATTACKERS USING?

slide-96
SLIDE 96

WHO GIVES OUT THESE CERTIFICATES?

Largely free domains

slide-97
SLIDE 97

WHERE ARE THEY HOSTING THESE DOMAINS?

Largely free hosting providers

slide-98
SLIDE 98

QUESTIONS YIELD NEW QUESTIONS…

informationen.support.cgi.log.ssl.cembra.ch.aktualisieren.amerbay.com (Swiss bank)

Why is this domain name so long?!?

slide-99
SLIDE 99

QUESTIONS YIELD NEW QUESTIONS…

informationen.support.cgi.log.ssl.cembra.ch.aktualisieren.amerbay.com (Swiss bank)

Why is this domain name so long?!?

informationen.support.cgi.log.ssl.cem

Safari on iPhones left-justify in Safari

slide-100
SLIDE 100

QUESTIONS YIELD NEW QUESTIONS…

informationen.support.cgi.log.ssl.cembra.ch.aktualisieren.amerbay.com (Swiss bank)

Why is this domain name so long?!?

informationen.support.cgi.log.ssl.cem

Safari on iPhones left-justify in Safari

cembra.ch.aktualisieren.amerbay.com

Chrome on Android right-justifies

slide-101
SLIDE 101

SOPHISTICATED IMPERSONATION ATTACKS

informationen.support.cgi.log.ssl.cembra.ch.aktualisieren.amerbay.com

slide-102
SLIDE 102

SOPHISTICATED IMPERSONATION ATTACKS

informationen.support.cgi.log.ssl.cembra.ch.aktualisieren.amerbay.com

slide-103
SLIDE 103

WHY DO ATTACKERS DO THIS?

Largely free hosting providers Largely free domain registration Largely free CAs It’s effective!

slide-104
SLIDE 104

COMMUNICATING YOUR RESULTS

My wife Me

amazon.com-deals.com

slide-105
SLIDE 105

COMMUNICATING YOUR RESULTS

My wife Me

amazon.com-deals.com

Nope, it isn’t
 Amazon, and I know why!

slide-106
SLIDE 106

COMMUNICATING YOUR RESULTS

My wife Me

amazon.com-deals.com

Nope, it isn’t
 Amazon, and I know why!

I asked you that like 4 months ago

slide-107
SLIDE 107

COMMUNICATING YOUR RESULTS

My wife Me

Nope, it isn’t
 Amazon, and I know why!

I asked you that like 4 months ago

slide-108
SLIDE 108

COMMUNICATING YOUR RESULTS

My wife Me

Nope, it isn’t
 Amazon, and I know why!

I asked you that like 4 months ago

slide-109
SLIDE 109

COMMUNICATING YOUR RESULTS

My wife Me

Nope, it isn’t
 Amazon, and I know why!

I asked you that like 4 months ago

Can we help?

slide-110
SLIDE 110

OTHER FORMS OF DOMAIN IMPERSONATION

Typosquatting: gogole.com gooogle.com googl.com Homographs: g00gle.com goo le.com g