81
A Journey To Protect Points Of Sale Nir Valtman, CISSP W : www.valtman.org . : @ValtmaNir

A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

A Journey To Protect Points Of Sale

Nir Valtman, CISSP

W : www.valtman.org

. : @ValtmaNir

Page 2: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Introduction

2

Photo by Bill Fraser

Page 3: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

01/07/2014 3

Page 4: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

01/07/2014 4

I’m an architect

Page 5: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

5

Page 6: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

01/07/2014 6

Page 7: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

7

Zombies!!!

Page 8: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

8

Defacement

Page 9: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

9

AntiDef

OPEN SOURCE

Memory Scraper

Secure TDD

Page 10: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

10

Page 11: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Why Points Of Sale Targeted?

11

Page 12: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

12

Page 13: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

13

Page 14: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Deployment

14

Page 15: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

15

Page 16: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

16

Page 17: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

17

Page 18: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

18

Page 19: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Payment ApplicationPoint Of Sale

IS NOT

V

Page 20: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

20

RAMDB

POS Payment Processing

Host

PA Server

Store Payment Processor’s Data Center

PA Client

RAM

DB

Page 21: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

RAMDB

POS Payment Processing

Host

PA Server

Store Payment Processor’s Data Center

PA Client

RAM

DB

Rest Transit Memory

Where Are My Credit Cards?

Page 22: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Mobile App Presentation Server Application & Payment Server Payment Processor’s Data Center

Rest Transit Memory

Where Are My Credit Cards?

Page 23: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where
Page 24: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Mobile App Presentation Server Application & Payment Server Payment Processor’s Data Center

Token

Server

Credit

Cards

Page 25: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

100% PCI Compliant

Page 26: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Page 27: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Page 28: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Notvulnerable

Page 29: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Page 30: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Cashier ≠ hacker

Page 31: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Retail

Environment

Assumptions

Big Brother

Page 32: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

RATs

Page 33: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

RemoteAdministrationTools

Page 34: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Routing

Page 35: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where
Page 36: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Threats

37

Page 37: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

38

READ&WRITE

Page 38: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

39

I AM BOB

ME TOO

Page 39: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Payment Stages - Authorization

40

PA

Processor

IssuerGateway

Acquirer

Route Track1/2 Transmit Track1/2

POI

Transmit Track1/2

Difficult

Exploitation

Page 40: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Payment Stages - Authorization

41

Page 41: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Payment Stages - Settlement

42Processor

IssuerGateway

Acquirer

Transmit SettlementStore & Send PANs

PA Server

Credit Merchant’s Account

Difficult

Exploitation

Page 42: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Payment Stages - Settlement

43

Page 43: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

44

Memory Scraping

Demo

Page 44: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

45

Page 45: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

46

Page 46: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

47

Page 47: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

OfflineOnline VS

Page 48: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Bypassed Solutions

49

Page 49: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

50

SecureString Class

Demo

Page 50: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

51

Next NextNextNext Next Generation Firewall

Page 51: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

52

ANTI

*

Page 52: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

53

Page 53: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

54

Whitelist

MD5 SHA256

Page 54: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Correct Solutions

55

Page 55: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

56

Cyber

Intelligence

Page 56: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

57

I have access to POS terminals in the US,

what is the best malware I should use?

Page 57: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

58

You need to infect the firmware of the terminal.

By doing that, you can get full track 1 + 2,

but the PIN will be hashed.

Page 58: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

59

Selling malicious firmware for Verifone’s POS terminals.

Leaks dumps + PINs through GPRS.

Price: Only 700$

Page 59: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

60

Business Development Offer

Owner of a fake POS sells his terminal.

Price: 50% from revenue sharing.

Page 60: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

61

RFI: Change terminal configuration to require PIN for all cards.

Cause: Get only 101 data, but wants PINs

Proposed Solution:

Thermal Imager

Page 61: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

62

Sandbox

Page 62: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

63

Network-based

Anomaly Detection

Page 63: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

64

Operating System

Anomaly Detection

Page 64: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

65

Runtime Obfuscation

Page 65: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Not only products required

66

Page 66: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

67

Page 67: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

68

Performance Security

Page 68: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

69

Assembly Signing

Page 69: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

70

Assembly Obfuscation

Page 70: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

PROCESS ISOLATION

Page 71: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

What Next

72

?

? ?

?

??

?

?

??

??

? ?

?

Page 72: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

What Would You Steal?

BIP BIP

Page 73: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

74

Memory

Scraping

Page 74: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

75

Memory

Scraping

Cashier = hacker

Page 75: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

76

Memory

Scraping

Page 76: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Summary

77

Page 77: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

78

Memory

Scraping

Security by Obscurity

Page 78: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

79

Memory

Scraping

Simple Exploitation

Page 79: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

80

Memory

Scraping

Hard to Protect

Page 80: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

81

Memory

Scraping

You’re Insured

Page 81: A Journey To Protect Points Of Sale - Black Hat | Home€¦ · RAM DB POS Payment Processing Host PA Server Store WÇu v W } } [ Data Center PA Client RAM DB Rest Transit Memory Where

Nir Valtman

W : www.valtman.org

. : @ValtmaNir