Chapter 7

Application Layer

powered by FreeFind

Modified: 

7.1 DNS (Domain Name System)

Structure of Computer Names

DNS Client-Server Model

DNS Server Hierarchy

Root servers

At right are two examples of dividing domain name hierarchy into 3-levels among three servers.

  1. Root server - knows how to reach all organization-level servers in domain. Does not know anything about hosts.

  2. Organization server - knows how to reach root servers, lower-level servers, and some hosts.

  3. Lower-level server - know how to reach root servers, certain other servers, and hosts.

  4. Hosts - know how to reach server.

 

Resolving local address in hierarchy (b)

Server: a1.almond.candy.foobar.com authority for foobar.com except for walnut.candy.foobar.com

Requesting Host: p1.peanut.candy.foobar.com

Request: s1.soap.foobar.com

Resolving non-local address in hierarchy (b)

Servers:

Requesting Host: p1.peanut.candy.foobar.com

Request: w2.walnut.candy.foobar.com

 

Iterative query resolution - Server iteratively stepping through the hierarchy of servers to find authority for a name.

Recursive query resolution - Resolvers for applications request complete resolution, reply is IP or failure, not the name of another server to query.

Optimization of DNS performance

 

nslookup - Windows name lookup. Name servers respond with name database information useful to contact higher authority name server.

Resource records for domain ius.edu

DNS Spoofing - Tricking DNS server to provide bogus IP for a requested name.

Recursive queries opens the door for DSN spoofing because servers cache names learned from higher authority servers (i.e. not physically entered into name database).

Normal DNS operation; the server may need to consult a higher authority.
1. Searcher’s browser contacts DNS server for IP of www.search.com.
2. DNS server replies with IP 148.13.23.4 of www.search.com.
3. Browser sends search query to search engine at IP 148.13.23.4.
4. Search engine returns results.

 



Attacker masquerading as a search engine.
1. Attacker contacts DNS server for IP of www.search.com.
2. DNS server requests IP of www.search.com from higher authority DNS server.
3. DNS server receives attacker’s IP 147.17.32.6 response to www.search.com.
4. Searcher’s browser contacts DNS server for IP of www.search.com.
5. DNS server replies with attacker’s IP 147.17.32.6 of www.search.com.
6. Browser sends search query to attacker at IP 147.17.32.6.
7. Attacker returns results.



Attacker intercepting communication between searcher and search engine.
1. Attacker contacts DNS server for IP of www.search.com.
2. DNS server requests IP of www.search.com from higher authority DNS server.
3. DNS server receives attacker’s IP 147.17.32.6 response to www.search.com.
4. Searcher’s browser contacts DNS server for IP of www.search.com.
5. DNS server replies with attacker’s IP 147.17.32.6 of www.search.com.
6. Browser sends search query to attacker at IP 147.17.32.6.
7. Attacker forwards query to search engine.
8. Search engine sends response to attacker.
9. Attacker forwards response to searcher.

DNS spoofing results in using an attacker’s IP address instead of intended site.


DNS spoofing is amenable to brute force attacks.

Other Application-Level Services


Document last modified: