+ All Categories
Home > Documents > BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat...

BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat...

Date post: 10-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
35
BGP Security – The Human Threat 2011.05.02 The Human Threat RIPE / Amsterdam 2011.05.02 Randy Bush <randy@psg.com> 1
Transcript
Page 1: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

BGP Security – The Human Threat

2011.05.02 The Human Threat

RIPE / Amsterdam 2011.05.02

Randy Bush <[email protected]>

1

Page 2: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Assume RPKI

2011.05.02 The Human Threat 2

98.128.0.0/16

Public Key

98.128.0.0/20

Public Key

98.128.16.0/20

Public Key

98.128.32.0/19

Public Key

98.128.16.0/24

Public Key

98.128.17.0/24

Public Key

Cert/ARIN

Cert/RGnet Cert/UUNET

Cert/RIPE Cert/APNIC

Cert/IANA CA

CA CA CA

CA CA

SIA

98.128.32.0/24

Public Key

Cert/IIJ CA

Page 3: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Assume RPKI-RTR

2011.05.02 The Human Threat 3

RPKI Engine

Repository Mgt

Publication Protocol

RCynic Gatherer

RPKI to Rtr Protocol

BGP Decision Process

Cache django

RPKI Repo

Page 4: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Assume Origin Validation

2011.05.02 The Human Threat 4

R3#sh ip bg 98.128.0.0/24

BGP routing table entry for 98.128.0.0/24, version 94

Paths: (2 available, best #2, table default)

65000 3130

10.0.0.1 from 10.0.0.1 (65.38.193.12)

Origin IGP, localpref 100, valid, external

path 6802D4DC RPKI State invalid

65001 4128

10.0.1.1 from 10.0.1.1 (65.38.193.13)

Origin IGP, localpref 100, valid, external, best

path 6802D7C8 RPKI State valid

Page 5: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Origin Validation is Weak • Today’s Origin Validation provides neither

cryptographic assurance (announcements are not signed), nor assurance of the AS Path of the announcement.

• A malicious router may announce as any AS, i.e. forge the ROAed origin AS.

• This would pass ROA Validation 2011.05.02 The Human Threat 5"

Page 6: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Protocol Not Policy •  Policy on the global Internet changes every 36ms

•  We already have a protocol to distribute policy or its effects, it is called BGP

•  We can not know intent, should Mary have announced the prefix to Bob

•  But Joe can formally validate that Mary did announce the prefix to Bob

•  BGPsec validates that the protocol has not been violated, and is not about intent or business policy

2011.05.02 The Human Threat 6"

Page 7: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Full Path Validation • Rigorous per-prefix AS path validation

is the goal

• Protect against origin forgery and AS-Path monkey in the middle attacks

• Not merely showing that a received AS path is not impossible

• Yes, this is S-BGP-like not SO-BGP-like 2011.05.02 The Human Threat 7"

Page 8: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Path Shortening Attack

2011.05.02 The Human Threat 8

X

Z

W $ $ $

A B

$

$

Expected Path – A->X->W->B Diverted Path - A->X->Z->W->B There Are Many Many Other Attacks

ZB

XZB WB B

Page 9: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Forward Path Signing

2011.05.02 The Human Threat 9

B cryptographically signs the message to W Sb(B->W) W signs messages to X and Z encapsulating B’s message

Sw(W->X (Sb(B->W))) and Sw(W->Z (Sb(B->W)))

X signs the message to A Sx(X->A (Sw(W->X (Sb(B->W))))

Z can only sign Sz(Z->X (Sw(W->Z (Sb(B->W))))

X

Z

W $ $ $

A B

ZB

XWB WB B

X

Page 10: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Capability Negotiation • It is assumed that consenting routers

will use BGP capability exchange to agree to run BGPsec between them

• The capability will, among other things remove the 4096 PDU limit for updates

• If BGPsec capability is not agreed, then only traditional BGP data are sent

2011.05.02 The Human Threat 10"

Page 11: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Replay Attack

2011.05.02 The Human Threat 11"

R0

R1

R2

R3 R4

0 1 0

3 1 0

Page 12: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

2011.05.02 The Human Threat 12"

Replay Attack

R0

R1

R2

R3 R4

0 1 0

3 1 0

0 2 0

X

Page 13: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Replay Reduction • Announcement replay is a vulnerability • Therefore freshness is critical • So originating announcer signs with a

relatively short signature lifetime • Origin re-announces prefix well within

that lifetime, AKA beaconing • Suggested to be days, but can be hours

for truly critical infrastructure 2011.05.02 The Human Threat 13"

Page 14: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Hash Signed (To & Te) by Router Key AS0-Rtr-xx

^RtrCert

Origination by AS0 to AS1

2011.05.02 The Human Threat 14"

NLRI AS0 AS1

• To and Te are times of signature origination and expiration

• Signature has a well-jittered validity end time, Te, of days

• Re-announcement by origin, AKA beaconing, every ~(Te-To)/3

• ROA is not needed as prefix is sufficient to find it in RPKI as today

Signed Forward

Reference

Sig0

New Optional Transitive Attribute

Page 15: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

2011.05.02 The Human Threat 15"

Announcement AS1 to AS2

AS1 AS2 ^RtrCert

• R1 signing over R0’s signature is same as signing over entire R0 announcement

• Non-originating router signatures do not have validity periods

• But when they receive a beacon announcement, they must propagate it

Signed Forward

Reference

^RtrCert NLRI AS0 AS1 Sig0

Hash Signed (To & Te) by Router Key AS0.rtr-xx

Sig1

Hash Signed by Router Key AS1-rtr-yy

Page 16: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Only at Provider Edges • This design protects only inter-domain

routing, not IGPs, not even iBGP • BGPsec will be used inter-provider, only

at the providers' edges • Of course, the provider’s iBGP will have

to carry the BGPsec information • Providers and inter-provider peerings

might be heterogeneous 2011.05.02 The Human Threat 16"

Page 17: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Simplex End Site

2011.05.02 The Human Threat 17"

Receives Unsigned & Trusts Up-streams

to Validate

Signs Own Prefix(es)

Signs Own Prefix(es)

Only Needs to Have Own Private Key, No Other Crypto or RPKI Data

No Hardware Upgrade!!

Page 18: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Informal BGPsec Group chris morrow (google) dave ward (juniper) doug maugham (dhs) doug montgomery (nist) ed kern (cisco) heather schiller (uunet) jason schiller (uunet) john scudder (juniper) kevin thompson (nsf) keyur patel (cisco) kotikalapudi sriram (nist) luke berndt (dhs) matt lepinski (bbn)

pradosh mohapatra (cisco) randy bush (iij) rob austein (isc) ruediger volk (dt) russ housley (vigilsec) russ mundy (sparta) sam weiler (sparta) sandy murphy (sparta) sharon goldberg (boston uni) steve bellovin (columbia uni) steve kent (bbn) warren kumari (google)

2011.05.02 The Human Threat 18"

Page 19: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

The Real Threats

2011.05.02 The Human Threat 19"

Page 20: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

RPKI Reliability Do you want bet your

reachability on all these being reliable?

RCynic Gatherer Validated

Cache

Trust Anchor IANA IANA

ARIN ARIN APNIC APNIC

UUNET UUNET PSGnet PSGnet

UUcust UUcust

IIJ IIJ

SIA

SIA

SIA

SIA

2011.05.02 The Human Threat 20"

Page 21: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

UUcust

Reliability Via Hosted Publication

Reducing the Number of Publication Points Improves Things

But …

Repository with

Multiple Publication

Points

IANA IANA

ARIN ARIN APNIC APNIC

UUNET UUNET PSGnet

PSGnet

UUcust

IIJ IIJ

2011.05.02 The Human Threat

Publication Protocol draft-ietf-sidr-publication

21"

Page 22: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Think DNS Root Anycast & ccTLD Anycast

2011.05.02 The Human Threat 22"

Page 23: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

2011.05.02 The Human Threat

Global RPKI

Asia Cache

NoAm Cache

Euro Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

in-PoP Cache

Cust Facing

Cust Facing

Cust Facing

Cust Facing

Cust Facing

High Priority

Lower Priority

Do Not Overload Global RPKI

23 Have Cache in POP

23"

Page 24: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Covering a Customer

My Infrastructure

Unused Static (non BGP) Cust

BGP Cust

2011.05.02 The Human Threat 24

I Issue a ROA for the Covering Prefix

24"

I need to do this to protect Static Customers and my Infrastructure

Page 25: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Covering a Customer

My Infrastructure

Unused Static (non BGP) Cust

BGP Cust

2011.05.02 The Human Threat 25

But if I Issue a ROA for the Covering Prefix

Before My Customers issue ROAs for These

25"

Page 26: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

Covering a Customer

My Infrastructure

Unused Static (non BGP) Cust

BGP Cust

2011.05.02 The Human Threat 26

If I Issue a ROA for the Covering Prefix

Before My Customers issue ROAs for These Their Routing Becomes Invalid!

26"

Page 27: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

0/0

Public Key

98.0.0.0/8

Public Key

98.128.0.0/16

Public Key

RGnet

ARIN

IANA

98.128.0.0/1724

AS 3130

ROA

98.128.0.0/17

Public Key

EE Cert

CA

CA

CA

2011.05.02 The Human Threat

Up-Chain Expiration

98.128.0.0/17

Public Key

PSGnet CA

Sloppy Admin Cert Soon to Expire!

These are not Identity Certs

So Who Do You Call?

So My ROA will become

Invalid! 27"

Page 28: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

ROA Invalid but I Can Route

• The ROA will become Invalid

• My announcement will just become NotFound, not Invalid

• Unless my upstream has a ROA for the covering prefix, which is likely

2011.05.02 The Human Threat 28"

Page 29: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

2011.05.02 The Human Threat 29"

0/0

Public Key

98.0.0.0/8

Public Key

98.128.0.0/16

Public Key

RGnet

ARIN

IANA

98.128.0.0/17-24

AS 3130

ROA

98.128.0.0/17

Public Key

EE Cert

CA

CA

CA Ghostbusters!

98.128.0.0/17

Public Key

PSGnet CA

BEGIN:vCard VERSION:3.0 FN:Human's Name N:Name;Human's;Ms.;Dr.;OCD;ADD ORG:Organizational Entity ADR;TYPE=WORK:;;42 Twisty Passage;Deep Cavern; WA; 98666;U.S.A. TEL;TYPE=VOICE,MSG,WORK:+1-666-555-1212 TEL;TYPE=FAX,WORK:+1-666-555-1213 EMAIL;TYPE=INTERNET:[email protected] END:vCard

Ghostbusters Record

draft-ietf-sidr-ghostbusters

Page 30: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

What if No Answer • What if the ‘threatening’ cert’s maintainer does not answer or maintain their cert?

• Can I appeal up-stream of them?

• Will the grandparents take care of the children?

2011.05.02 The Human Threat 30"

Page 31: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

0/0

Public Key

98.0.0.0/8

Public Key

98.128.0.0/16

Public Key

RGnet

ARIN

IANA

98.128.0.0/17-24

AS 3130

ROA

98.128.0.0/17

Public Key

EE Cert

CA

CA

CA

2011.05.02 The Human Threat

Grandparent Rescue

98.128.0.0/17

Public Key

PSGnet CA

Sloppy Admin Cert Soon to Expire!

Saved by Grandparent

31"

Deep Policy & Liability

Issues

Page 32: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

0/0

Public Key

98.0.0.0/8

Public Key

98.128.0.0/16

Public Key

RGnet

ARIN

IANA

98.128.0.0/16-24

AS 3130

ROA

98.128.0.0/16

Public Key

EE Cert

CA

CA

CA

2011.05.02 The Human Threat 32

Authoritarian Expiration

98.128.0.0/16

Public Key

PSGnet CA

So My Cert is Soon to Become

Invalid! Who Do You Call?

Cert Task Force Address Policy

Rob’s New Policies

Authoritarian Issuer

32"

Page 33: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

And if You Believe “Them is Us”

Read the ARIN PPML Mailing List

2011.05.02 The Human Threat 33"

Page 34: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

But in the End, You Control Your Policy

“Announcements with Invalid origins MAY be used, but SHOULD be less preferred than those with Valid or NotFound.” -- draft-ietf-sidr-origin-ops But if I do not reject Invalid, what is all this for?

2011.05.02 The Human Threat 34"

Page 35: BGP Security – The Human Threat - RIPE 62 · EE Cert CA CA CA 2011.05.02 The Human Threat Up-Chain Expiration 98.128.0.0/17 Public Key PSGnet CA Sloppy Admin Cert Soon to Expire!

THIS WORK IS SPONSORED IN PART BY THE DEPARTMENT OF HOMELAND SECURITY UNDER AN INTERAGENCY AGREEMENT WITH THE AIR FORCE RESEARCH LABORATORY (AFRL).

2011.05.02 The Human Threat 35"

we Take your Scissors Away and turn them into plowshares


Recommended