Title: DNS Cookies draft-eastlake-dnsext-cookies-01.txt
1DNS Cookiesdraft-eastlake-dnsext-cookies-01.txt
- Donald E. Eastlake 3rd
- Donald.Eastlake_at_motorola.com
- 1-508-786-7554
2DNS Cookies
- Provides weak authentication of queries and
responses. Can be viewed as a weak version of
TSIG. - No protection against on-path attackers, that
is, no protection against anyone who can see the
plain text queries and responses. - Requires no set-up or configuration.
3DNS Cookies (cont.)
- Intended to greatly reduce
- Forged source IP address traffic amplification
DOS attacks. - Forged source IP address recursive server work
load DOS attacks. - Forged source IP address reply cache poisoning
attacks.
4The COOKIE OPT Option
- A new Option to the OPT-RR
1 1 1 1 1 1 1 1 1 1 2 2 2 2
2 2 2 2 2 2 3 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
------------------------
-------- OPTION-CODE TBD
OPTION-LENGTH 18
------------------------
-------- Resolver
Cookie upper half
------------------------
-------- Resolver
Cookie lower half
------------------------
-------- Server
Cookie upper half
------------------------
-------- Server
Cookie lower half
------------------------
-------- Error Code
----------------
5Resolver Warm Fuzzies
- If DNS Cookies Enforced
- Resolver puts a COOKIE in queries with
- A Resolver Cookie that varies with server
- Truncated HMAC(server-IP-address, resolver
secret) - The resolver cached Server Cookie for that Cookie
if it has one - Resolver ignores all replies that do not have the
correct Resolver Cookie - Caches new Server Cookie and retries query if it
gets a Bad Cookie error with a correct Resolver
Cookie
6Simplified Server Warm Fuzzies
- If DNS Cookies Enforced
- Server puts a COOKIE in replies with
- A Server Cookie that varies with resolver
- Truncated HMAC(resolver-IP-address, server
secret) - The Resolver Cookie if there was one in the
corresponding query - If query received with bad or no Server Cookie,
send back short error message
7Example
Resolver
Server
Query RC123, SC???,E0
ErrReply RC123, SC789, EBadC
SC789
Query RC123, SC789,E0
AnsReply RC123, SC789,E0
ForgedQuery RCXYZ, SC???,E0
ErrReply RCXYZ, SC789, EBadC
ForgedReply RC???, SC???,E0
8Complexities
- Bad guy Resolver behind a NAT
- Could get Server Cookie and attack other
resolvers behind the NAT - Solution Mix Resolver Cookie into Server Cookie
hash so multiple resolvers that appear to be at
the same IP address are distinguished - Anycast Servers
- Need to use the same server secret or assure that
queries from the same resolver usually go to the
same server