Oblivious DNS: Practical Privacy for DNS Queries Paul Schmitt - - PowerPoint PPT Presentation

oblivious dns practical privacy for dns queries
SMART_READER_LITE
LIVE PREVIEW

Oblivious DNS: Practical Privacy for DNS Queries Paul Schmitt - - PowerPoint PPT Presentation

Oblivious DNS: Practical Privacy for DNS Queries Paul Schmitt (Princeton) Anne Edmundson (Princeton) Allison Mankin (Salesforce) Nick Feamster (Princeton) Conventional DNS 2 Root Server www.foo.com? 3 1 TLD Server Client Recursive DNS


slide-1
SLIDE 1

Oblivious DNS: Practical Privacy for DNS Queries

Paul Schmitt (Princeton) Anne Edmundson (Princeton) Allison Mankin (Salesforce) Nick Feamster (Princeton)

slide-2
SLIDE 2

Recursive DNS Server TLD Server Authoritative Server Client Root Server

Conventional DNS

1 2 3 4

www.foo.com?

slide-3
SLIDE 3
  • Client identity and query

are viewable at and prior to the recursive (ISP) server

  • DNS operators can be

targets of data requests

Recursive DNS Server TLD Server Authoritative Server Client Root Server

Conventional DNS

1 2 3 4

www.google.com www.amazon.com www.bing.com

slide-4
SLIDE 4

Recursive DNS Server TLD Server Authoritative Server Client Root Server

Conventional DNS

1 2 3 4

  • Services now offer open

DNS resolvers with promise of deleting logs

  • Shifts trust to these

providers

  • Other techniques do not

fully protect user privacy: ○ DNS-over-TLS ○ DNS-over-HTTPS ○ QNAME minimization

www.google.com www.amazon.com www.bing.com

slide-5
SLIDE 5

Oblivious DNS

Goal:

  • Separate user identity

from query Requirements:

  • Compatible with

existing infrastructure

  • Minimize overhead

Recursive DNS Server Clients ODNS Stub ODNS Authoritative Server TLD Server Root Server

1 2 3 4 Stub encrypts & formats domain with a session key User queries NOT visible at recursive server

slide-6
SLIDE 6

Oblivious DNS

Goal:

  • Separate user identity

from query Requirements:

  • Compatible with

existing infrastructure

  • Minimize overhead

Recursive DNS Server Clients ODNS Stub ODNS Authoritative Server TLD Server Authoritative Server Root Server TLD Server Root Server

1 2 3 4 5 6 7 Stub encrypts & formats domain with a session key ODNS authoritative acts as a recursive resolver User queries NOT visible at recursive server User identities NOT visible at ODNS Authoritative server

slide-7
SLIDE 7

ODNS Crypto Overhead

  • Roughly ~1-2 ms for

crypto operations using standard libraries

  • Symmetric

encryption/decryption is lightweight

slide-8
SLIDE 8

ODNS Crypto Overhead

  • Roughly ~1-2 ms for

crypto operations using standard libraries

  • Symmetric

encryption/decryption is lightweight

slide-9
SLIDE 9

ODNS WAN Latency

  • Latency to ODNS

Resolver added to each query

  • Widespread anycast

deployment to mitigate WAN latency

slide-10
SLIDE 10

Key Distribution

  • Anycast for scalability
  • Special query reaches the

nearest anycast server

  • Server responds with

public key and name

slide-11
SLIDE 11

ODNS Overhead: Page Load Time

slide-12
SLIDE 12

ODNS Overhead: Page Load Time

Different CDNs / javascript resources

slide-13
SLIDE 13

ODNS Overhead: Page Load Time

How is ODNS better in some cases?

slide-14
SLIDE 14

ODNS Overhead: Page TTFB

slide-15
SLIDE 15

ODNS Overhead: Page TTFB

Directed to CDNs that are closer

slide-16
SLIDE 16

Impact on Recursive Cache

  • Simulated with trace
  • f ~8M queries
  • If caching at stub,

ODNS reduces traffic burden on the recursive resolver

slide-17
SLIDE 17

Impact on Cache (2)

  • Undesirable cache

entries?

  • Some resolvers ignore

TTL = zero

  • “Bad” == ODNS entry

causing non-ODNS to be ejected

slide-18
SLIDE 18

Discussion

  • Challenges:

○ EDNS0 Client Subnet ○ QNAME length ○ 0x20 bit encoding

  • Policy-based routing
slide-19
SLIDE 19

Thank you

Paul Schmitt pschmitt@cs.princeton.edu

slide-20
SLIDE 20

Backup slides

slide-21
SLIDE 21

Why Not Tor?

  • Latency (median)

○ ODNS: 31.31 ms ○ Tor: 276.76 ms

  • Censorship

concerns

  • Exit node can be

associated with traffic

slide-22
SLIDE 22

Protocol

  • Stub encrypts query with

session key and session key with resolver public key

  • Stub appends resolver

name to encrypted query

  • ODNS resolver decrypts

session key with private key, query with session key, and encrypts response

slide-23
SLIDE 23

QNAME Length

  • QNAME = 4 sets
  • f 63 bytes
  • base64 encoding

○ 0x20 bit encoding issue

slide-24
SLIDE 24

EDNS0 Client Subnet

  • Must avoid some

recursive resolvers