The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure...

38
The Impact of DNSSEC on the Internet Landscape Matthäus Wander <[email protected]> Duisburg, June 19, 2015

Transcript of The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure...

Page 1: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

The Impact of DNSSEC on the Internet Landscape

Matthäus Wander <[email protected]>

Duisburg, June 19, 2015

Page 2: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Outline

∙ Domain Name System

∘ Security problems

∘ Attacks in practice

∙ DNS Security Extensions (DNSSEC)

∘ Protection and new problems

∘ Adoption in practice

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 2

Page 3: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DOMAIN NAME SYSTEM

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 3

Page 4: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Domain Name System (DNS)

∙ Distributed Database

∙ Hierarchical Namespace

∙ Resolve domain names to data (e.g. IP address)

∘ Data sets: resource records

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 4

Stub Resolver Recursive Resolver Recursive Resolver

Authoritative

Name Servers

Page 5: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNS Spoofing Attacks

∙ Attacker Goals:

∘ Divert application to another server

∘ Deny service

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 5

Stub Resolver Recursive Resolver Recursive Resolver

Authoritative

Name Servers

Page 6: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNS Spoofing Attacks

∙ On-path attacker:

∘ Sees query, spoofs response (e.g. public WiFi)

∙ Off-path attacker:

∘ Predicts query, spoofs response (anywhere in the Internet)

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 6

Stub Resolver Recursive Resolver Recursive Resolver

Authoritative

Name Servers

Page 7: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Man-in-the-Middle Attack

∙ Man-in-the-middle (MITM) attacker:

∘ Sees query, spoofs response

∙ Filtering of resolver users

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 7

Stub Resolver Recursive Resolver Recursive Resolver

Authoritative

Name Servers

Page 8: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Man-in-the-Middle Attack

∙ Man-in-the-middle (MITM) attacker:

∘ Sees query, spoofs response

∙ Filtering of resolver users

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 8

Stub Resolver Recursive Resolver

Authoritative

Name Servers

Page 9: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Man-in-the-Middle Attack

∙ MITM attack on IP router:

∘ Deep Packet Inspection of DNS traffic

∘ Router sees query, spoofs response

∙ Effective filtering of all DNS queries in network

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 9

Stub Resolver ISP Router Recursive Resolver

Authoritative

Name Servers

Page 10: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Probing for DNS Injectors

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 10

Vantage

point

Cum

ula

ted r

esp

on

se

s

Round-trip time [s]

Responses for „facebook.com“

Published in:

IEEE Access, 2014

Page 11: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Published in:

IEEE Access, 2014 DNS Injection over Time

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 11

Responses for „facebook.com“

Page 12: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Impact Assessment on Third Parties

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 12

Unrelated third party routed

through censored country

Published in:

IEEE Access, 2014

Page 13: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Open Resolver Measurement

∙ Worldwide impact of Chinese DNS injection

∙ Top-level domains

∘ 1144 name servers

∙ Multiple vantage points

∘ 255k open resolvers worldwide

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 13

Sender Open

Resolver

Destination:

TLD server www.minghui.org.s1.verteiltesysteme.net. IN A ?

Published in:

IEEE Access, 2014

Page 14: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Open Resolver Results

∙ 15k resolvers (6%) affected by Chinese DNS injection

∙ 14k affected when contacting „e.dns.kr“

Matthäus Wander 14 Country

Aff

ecte

d r

eso

lve

rs

Destination name server

Aff

ecte

d r

eso

lve

rs

Published in:

IEEE Access, 2014

Page 15: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

.kr Top-Level Domain Servers

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 15

Published in:

IEEE Access, 2014

Page 16: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Impact Assessment on Third Parties

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 16

Unrelated third party routed

through censored country

into

Published in:

IEEE Access, 2014

Page 17: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNSSEC

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 17

Page 18: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Concept

∙ Security goals: data integrity and authenticity

∙ Signatures pre-generated over DNS data sets

∙ End-to-end security between validator and signer

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 18

Authoritative

Name Server

Stub

Resolver

Recursive

Resolver

DNS zone

Recursive

Resolver

Page 19: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Public Key Distribution

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 19

.

Public key

net: key fingerprint

net.

Public key

verteiltesysteme.net: key fingerprint

verteiltesysteme.net.

Public key

Signed resource records

Resolver has copy

of root public key

Page 20: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Trust Model

∙ Authority limited to subnamespace

∙ Powerful root authority

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 20

Root Zone

Top-level

2nd level

DNSSEC

Page 21: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Cache Lock-in

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 21

DNS zone

Stub Resolver Recursive Resolver Recursive Resolver Authoritative Name Server

CD=1 CD=1

∙ End-to-end security: validation on end host

∘ Independent of validation failures on intermediate resolvers

∙ Request response without DNSSEC validation

∘ Problem: cache lock-in

Cache Cache Cache

Page 22: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Cache Lock-in

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 22

DNS zone

Stub Resolver Recursive Resolver Recursive Resolver Authoritative Name Server

CD=1 CD=1

∙ Omit intermediate resolvers

∙ Effectiveness of intermediate caching?

Cache Cache Cache

Page 23: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Trace-driven Simulation of Cache Effectiveness

∙ Cache models:

∘ Shared cache in front of 10k clients

∘ 10k independent caches

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 23

Clients Recursive

Resolver Authoritative

Name Servers collection point

Cache

Cache

Cache

Cache

Page 24: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Bandwidth Overhead

External traffic:

∙ Shared cache:

2.44 GBytes

∙ 10k caches:

7.55 GBytes

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 24

0

10000

20000

30000

40000

50000

60000

70000

80000

17 Sep 19 Sep 21 Sep 23 Sep 25 Sep 27 Sep 29 Sep

Qu

eri

es p

er

10

-min

bu

cke

t

Internal

0

10000

20000

30000

40000

50000

60000

70000

80000

17 Sep 19 Sep 21 Sep 23 Sep 25 Sep 27 Sep 29 Sep

Qu

eri

es p

er

10

-min

bu

cke

t

Internal

External (shared)

0

10000

20000

30000

40000

50000

60000

70000

80000

17 Sep 19 Sep 21 Sep 23 Sep 25 Sep 27 Sep 29 Sep

Qu

eri

es p

er

10

-min

bu

cke

t

Internal

External (shared)

External (10k)

Page 25: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Latency Overhead

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 25

Page 26: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Latency Overhead

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 26

+11 ms Q0,5

Q0,75

Q0,9

+24 ms

+74 ms

Utilize intermediate DNS caches

Fall back to autonomous resolution on failure

Page 27: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Privacy and Confidentiality

∙ Client: no privacy improvement

∘ Cleartext DNSSEC messages

∙ Server: discloses hash values of zone contents

∘ Server proves non-existence

∘ Hashing supposed to hide names

∙ Break NSEC3 hash values with GPU-based attacks

∘ One GPU reveals 65% .com hash values in 5 days

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 27

DNS zone

Client queries Server database

78a1 NSEC3 8e5d

h(„test“)=80a1

Published in:

IEEE NCA, 2014

Page 28: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

ADOPTION OF DNSSEC

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 28

Page 29: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Signed Top-Level Domains

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 29

Page 30: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Signed Second-Level Domains

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 30

TLD Domains

1. nl 2,279,702

2. br 566,694

3. cz 448,984

4. com 426,182

5. se 349,514

6. eu 320,311

7. fr 205,662

DNS zone

Server database

Total: 5,146,705 signed domains

8. no 119,759

9. be 92,385

10. net 81,391

11. org 46,382

12. ovh 29,372

13. nu 21,126

14. de 20,004

Page 31: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Algorithms and Key Sizes

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 31

Algorithm Domains

RSA/MD5 0

DSA/SHA-1 2,176

RSA/SHA-1 1,547,782

RSA/SHA-256 1,869,157

RSA/SHA-512 1,100

GOST R 34.10-2001 30

ECDSA P-256/SHA-256 29

ECDSA P-384/SHA-384 19

RSA Key Size Domains

512 13,674

768 25

1024 3,152,420

1032 535

1152 108

1280 185,825

1304 105

1536 106

2048 59,907

2560 1

3072 3

4096 5,135

Result Domains

No DNSKEY (dangling DS) 17,751

No trusted DNSKEY

(dangling DS)

1,066

No RRSIG for trusted DNSKEY 238

Signature expired 2,138

Signature verify failure 5

Validation failure 21,198

Validation success 3,416,700

0,6% domains fail validation >99% use RSA

Shortest RSA key per domain Survey of

3.4M domains

Page 32: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Measuring Validating Clients

32 Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander

https://SigOk.verteiltesysteme.net/a.png

Recursive Resolver

https://SigFail.verteiltesysteme.net/b.png

SigOk

SigFail

DNSKEY

Authoritative Name Server

Invisible 1px images

Published in:

LNCS PAM, 2013

Page 33: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNSSEC Validation

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 33

∙ 841k test results from 557k distinct IP addresses

Published in:

LNCS PAM, 2013

Page 34: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNSSEC Validation per Country

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 34

2012–2013

Median per country: 1%

Published in:

LNCS PAM, 2013

Page 35: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

DNSSEC Validation per Country

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 35

2014–2015

Median per country: 20%

Page 36: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Conclusions (1/2)

∙ DNS spoofing used for Internet filtering

∘ 6% resolvers worldwide affected by Chinese DNS injection

∘ Evidence of router-based DNS injection in Iran

∘ Political changes in DNS filtering observable from outside

∙ DNS caching causes lock-in on bogus data

∘ Trace-driven simulation shows moderate benefit of caching

∘ Suggestion: omit DNS caches on DNSSEC validation failure

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 36

Page 37: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Conclusions (2/2)

∙ DNSSEC secures data integrity and authenticity

∘ Hashing is ineffective for protecting the DNS database

∙ First-time survey of all DNSSEC signed domains

∘ 5M signed domains: >99% use RSA, 0.6% are broken

∙ 3-year measurement of validating clients

∘ Worldwide increase of DNSSEC adoption

∘ Varies by country (median 20%)

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 37

Page 38: The Impact of DNSSEC - uni-due.de · 19-06-2015  · GOST R 34.10-2001 30 Signature verify failure ECDSA P-256/SHA-256 29 ECDSA P-384/SHA-384 19 RSA Key Size Domains 512 13,674 768

Referenced Publications

∙ M. Wander, T. Weis:

Measuring Occurrence of DNSSEC Validation, Passive and Active Measurement (PAM), LNCS Springer, 2013.

∙ M. Wander, C. Boelmann, L. Schwittmann, T. Weis:

Measurement of Globally Visible DNS Injection, IEEE Access, 2014.

∙ M. Wander, L. Schwittmann, C. Boelmann, T. Weis:

GPU-based NSEC3 Hash Breaking, IEEE NCA, 2014. Awarded best student paper.

Universität Duisburg-Essen Verteilte Systeme

Matthäus Wander 38