CS426Fall 2010/Lecture 341 Computer Security CS 426 Lecture 34 DNS Security.

Slides:



Advertisements
Similar presentations
Naming Security Nick Feamster CS 6250 Fall DNS: Mapping Names to Addresses ClientLocal DNS resolver root,.edu troll-gw.gatech.edu
Advertisements

Sergei Komarov. DNS  Mechanism for IP hostname resolution  Globally distributed database  Hierarchical structure  Comprised of three components.
Domain Name System. DNS is a client/server protocol which provides Name to IP Address Resolution.
Computer Networks: Domain Name System. The domain name system (DNS) is an application-layer protocol for mapping domain names to IP addresses Vacation.
The Domain Name System Overview Introduction DNS overview How DNS helps us? Summary.
Application Layer At long last we can ask the question - how does the user interface with the network?
Domain Name System: DNS
DNS Security Extensions (DNSSEC) Ryan Dearing. Topics History What is DNS? DNS Stats Security DNSSEC DNSSEC Validation Deployment.
CPSC 441: DNS1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes derived.
Foundations of Network and Computer Security J J ohn Black Lecture #35 Dec 9 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
DNS. Outline r Domain Name System r DNS Hierarchy r Resolution.
Chapter 25 Domain Name System
Domain Name System | DNSSEC. 2  Internet Protocol address uniquely identifies laptops or phones or other devices  The Domain Name System matches IP.
NET0183 Networks and Communications Lecture 25 DNS Domain Name System 8/25/20091 NET0183 Networks and Communications by Dr Andy Brooks.
1 Spring Semester 2009, Dept. of Computer Science, Technion Internet Networking recitation #2 DNS and DHCP.
TODAY & TOMORROW PRESENTED BY: JAMES SPEIRS CHARLES HIGBY BRADY REDFEARN Domain Name System (DNS)
CS 4396 Computer Networks Lab
1 Domain Name System (DNS). 2 DNS: Domain Name System Internet hosts: – IP address (32 bit) - used for addressing datagrams – “name”, e.g.,
Domain Name System (DNS)
TELE 301 Lecture 11: DNS 1 Overview Last Lecture –Scheduled tasks and log management This Lecture –DNS Next Lecture –Address assignment (DHCP)
Ch-9: NAME SERVICES By Srinivasa R. Gudipati. To be discussed.. Fundamentals of Naming Services Naming Resolution The Domain Name System (DNS) Directory.
Chapter 16 – DNS. DNS Domain Name Service This service allows client machines to resolve computer names (domain names) to IP addresses DNS works at the.
Domain Names System The Domain Name System (DNS) is a hierarchical distributed naming system for computers, services, or any resource connected to the.
Computer Networks: Domain Name System. The domain name system (DNS) is an application-layer protocol for mapping domain names to IP addresses Vacation.
CSUF Chapter 6 1. Computer Networks: Domain Name System 2.
IIT Indore © Neminath Hubballi
CS526Topic 19: DNS Security1 Information Security CS 526 Topic 19: DNS Security.
Written By: David Dagon Manos Antonakakis Paul Vixie Georgia Institute of Georgia Institute ofInternet Systems. Technology Technology Consortium Wenke.
Domain names and IP addresses Resolver and name server DNS Name hierarchy Domain name system Domain names Top-level domains Hierarchy of name servers.
DNS: Domain Name System
1 DNS: Domain Name System People: many identifiers: m SSN, name, Passport # Internet hosts, routers: m IP address (32 bit) - used for addressing datagrams.
By Chris Racki. Outline  Introduction  How DNS works  A typical DNS lookup  Caching for later  Vulnerabilities of DNS  Anatomy of a cache poisoning.
October 15, 2002Serguei A. Mokhov, 1 Intro to DNS SOEN321 - Information Systems Security.
Chapter 17 Domain Name System
1 Application Layer Lecture 6 Imran Ahmed University of Management & Technology.
October 8, 2015 University of Tulsa - Center for Information Security Microsoft Windows 2000 DNS October 8, 2015.
DNS Security Pacific IT Pros Nov. 5, Topics DoS Attacks on DNS Servers DoS Attacks by DNS Servers Poisoning DNS Records Monitoring DNS Traffic Leakage.
Netprog: DNS and name lookups1 Address Conversion Functions and The Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Packet Filtering & Firewalls. Stateless Packet Filtering Assume We can classify a “good” packet and/or a “bad packet” Each rule can examine that single.
Internet and Intranet Protocols and Applications Lecture 5 Application Protocols: DNS February 20, 2002 Joseph Conron Computer Science Department New York.
1 Kyung Hee University Chapter 18 Domain Name System.
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
CPSC 441: DNS 1. DNS: Domain Name System Internet hosts: m IP address (32 bit) - used for addressing datagrams m “name”, e.g., - used by.
Internet Address and Domain Name Service (DNS)
EE 122: Lecture 20 (Domain Name Server - DNS) Ion Stoica Nov 15, 2001 (* based on the some on-line slides of J. Kurose & K. Rose and of Raj Jain)
* Agenda  What is the DNS ?  Poisoning the cache  Short term solution  Long term solution.
DNS Cache Poisoning. History 1993 – DNS protocol allowed attacker to inject false data which was then cached 1997 – BIND 16-bit transaction ids not randomized,
DNS Security Extension 1. Implication of Kaminsky Attack Dramatically reduces the complexity and increases the effectiveness of DNS cache poisoning –No.
DNS Cache Poisoning – The Next Generation by Joe Stewart, GCIH Presented by Stephen Karg CS510, Advanced Security Portland State University Oct. 24, 2005.
BZUPAGES.COM. Presented to: Sir. Muizuddin sb Presented by: M.Sheraz Anjum Roll NO Atif Aneaq Roll NO Khurram Shehzad Roll NO Wasif.
DNS Security 1. Fundamental Problems of Network Security Internet was designed without security in mind –Initial design focused more on how to make it.
Domain Name System (DNS)
1. Internet hosts:  IP address (32 bit) - used for addressing datagrams  “name”, e.g., ww.yahoo.com - used by humans DNS: provides translation between.
COMP2322 Lab 3 DNS Steven Lee Feb. 19, Content Understand the Domain Name System (DNS). Analyze the DNS protocol with Wireshark. 2.
COMP 431 Internet Services & Protocols
Domain Name System INTRODUCTION to Eng. Yasser Al-eimad
Basics of the Domain Name System (DNS) By : AMMY- DRISS Mohamed Amine KADDARI Zakaria MAHMOUDI Soufiane Oujda Med I University National College of Applied.
Grades update. Homework #1 Count35 Minimum Value47.00 Maximum Value Average
Short Intro to DNS (part of Tirgul 9) Nir Gazit. What is DNS? DNS = Domain Name System. For translation of host names to IPs. A Distributed Database System.
Internet infrastructure 1. Infrastructure Security r User expectations  Reliable service  Reliable endpoints – although we know of spoofing and phishing.
MAN-IN-THE-MIDDLE ATTACK STEGANOGRAPHY Lab# MAC Addresses and ARP  32-bit IP address:  network-layer address  used to get datagram to destination.
DNS Security Advanced Network Security Peter Reiher August, 2014
DNS Security.
DNS Security Issues SeongHo Cho DPNM Lab., POSTECH
Domain Name System (DNS)
DNS Cache Poisoning Attack
DNS security.
Information Security CS 526 Omar Chowdhury
DNS: Domain Name System
Domain Name System Refs: Chapter 9 RFC 1034 RFC 1035.
Presentation transcript:

CS426Fall 2010/Lecture 341 Computer Security CS 426 Lecture 34 DNS Security

Domain Name System Translate host names to IP addresses –E.g.,  –Hostnames are human-friendly –IP addresses keep changing And back –From IP addresses to DNS name Analogy: Phone book for the Internet –Where they differ? CS4262Fall 2010/Lecture 34

DNS is a Distributed Database Information is stored in a distributed way Highly dynamic Decentralized authority CS426Fall 2010/Lecture 343

CS426Fall 2010/Lecture 344 Domain Name System Hierarchical Name Space root edu net org ukcom ca wisc illinois purdue indiana umich cs ece www

Domain Name Space Domain: A node in the DNS tree DNS Zones –A zone is a group of nodes in the tree, authoritatively served by an authoritative nameserver. –Each zone may be sub-divided, the parent zone Authority servers –Answer queries about their zones –Provide mapping for leaf nodes or downward delegation Hierarchical service –Root name servers for top-level domains –Authoritative name servers for subdomains CS4265Fall 2010/Lecture 34

Domain Name Space (cont’) CS4266Fall 2010/Lecture 34

DNS Resolver: Recursive Resolver Recursive resolver –Normally thought of as a “DNS server” –Accept queries from users, understand the zone hierarchy, interact with the authority servers –Cache answers CS4267Fall 2010/Lecture 34 From wikipedia

DNS Resolver: Stub Resolver Stub resolver –Not interact with the zone hierarchy –Pose basic queries to recursive servers –May cache answers –PC, client applications CS4268Fall 2010/Lecture 34 From wikipedia

A Normal DNS Lookup Stub resolver asks “ Assume no previous results cached at the recursive resolver Query the root servers (authority servers for “.” zone) –Answer: downward delegation –com NS a.gtld-servers.netNS: Name Server –a.gtld-servers.net A A: Address Query the “.com” zone authority servers –Answer: downward delegation –google.com NS ns1.google.com –ns1.google.com A CS4269Fall 2010/Lecture 34

A Normal DNS Lookup (cont’) Query the “google.com” zone authority servers – Answer: A The answer is returned to the stub resolver The results are cached by the recursive resolver CS42610Fall 2010/Lecture 34

CS426Fall 2010/Lecture 3411 Caching DNS responses are cached –Quick response for repeated translations –Useful for finding servers as well as addresses NS records for domains Negative results are cached –Save time for nonexistent sites, e.g. misspelling Cached data periodically times out –Each record has a TTL field

CS426Fall 2010/Lecture 3412 Inherent DNS Vulnerabilities Users/hosts typically trust the host-address mapping provided by DNS –What bad things can happen with wrong DNS info? DNS resolvers trust responses received after sending out queries –How to attack? Responses can include DNS information unrelated to the query Obvious problems –No authentication for DNS responses

CS426Fall 2010/Lecture 3413 Pharming Exploit DNS poisoning attack –Change IP addresses to redirect URLs to fraudulent sites –Potentially more dangerous than phishing attacks –No solicitation is required DNS poisoning attacks have occurred: –January 2005, the domain name for a large New York ISP, Panix, was hijacked to a site in Australia. –In November 2004, Google and Amazon users were sent to Med Network Inc., an online pharmacy –In March 2003, a group dubbed the "Freedom Cyber Force Militia" hijacked visitors to the Al-Jazeera Web site and presented them with the message "God Bless Our Troops"

CS426Fall 2010/Lecture 3414 DNS cache poisoning (Vulnerability 1) (Chris Schuba in 1993) DNS resource records (see RFC 1034) –An “A” record supplies a host IP address –A “NS” record supplies name server for domain Example –evil.org NS ns.yahoo.com /delegate to yahoo –ns.yahoo.com A / address for yahoo Result –If resolver looks up then evil name server will give resolver address for yahoo –Lookup yahoo through cache goes to

Defense Using The Bailiwicks Rules The bailiwick system prevents foo.com from declaring anything about com, or some other new TLD, or Using the bailiwicks rules –The root servers can return any record –The com servers can return any record for com –The google.com servers can return any record for google.com CS42615Fall 2010/Lecture 34

DNS cache poisoning: Racing to Respond First CS42616Fall 2010/Lecture 34

DNS Cache Poisoning Attacker wants his IP address returned for a DNS query When the resolver asks ns1.google.com for the attacker could reply first, with his own IP What is supposed to prevent this? Transaction ID –16-bit random number –The real server knows the number, because it was contained in the query –The attacker has to guess CS42617Fall 2010/Lecture 34

CS426Fall 2010/Lecture 3418 DNS cache poisoning (Vulnerability 2) Responding before the real nameserver –An attacker can guess when a DNS cache entry times out and a query has been sent, and provide a fake response. –The fake response will be accepted only when its 16- bit transaction ID matches the query –CERT reported in 1997 that BIND uses sequential transaction ID and is easily predicted fixed by using random transaction IDs

CS426Fall 2010/Lecture 3419 DNS cache poisoning (Vulnerability 3) Improve the chance of responding before the real nameserver (discovered by Vagner Sacramento in 2002) –Have many (say hundreds of) clients send the same DNS request to the name server Each generates a query –Send hundreds of reply with random transaction IDs at the same time –Due to the Birthday Paradox, the success probability can be close to 1

CS426Fall 2010/Lecture 3420 DNS cache poisoning (Vulnerability 4) Kaminsky Attack –Big security news in summer of 2008 –DNS servers worldwide were quickly patched to defend against the attack In previous attacks, when the attacker loses the race, the record is cached, with a TTL. –Before TTL expires, no attack can be carried out –Posining address for google.com in a DNS server is not easy.

Guess the ID Early versions of DNS servers deterministically incremented the ID field Vulnerabilities were discovered in the random ID generation –Weak random number generator –The attacker is able to predict the ID if knowing several IDs in previous transactions Birthday attack –Force the resolver to send many identical queries, with different IDs, at the same time –Increase the probability of making a correct guess CS42621Fall 2010/Lecture 34

What is New in the Kaminsky Attack? The bad guy does not need to wait to try again The bad guy asks the resolver to look up –If the bad guy lost the race, the other race for will be suppressed by the TTL If the bad guy asks the resolver to look up 1.google.com, 2.google.com, 3.google.com, and so on –Each new query starts a new race Eventually, the bad guy will win –he is able to spoof 183.google.com –So what? No one wants to visit 183.google.com CS42622Fall 2010/Lecture 34

Kaminsky-Style Poisoning A bad guy who wins the race for “183.google.com” can end up stealing “ as well The malicious response –google.com NS – A –OR –google.com NS ns.badguy.com CS42623Fall 2010/Lecture 34

Kaminsky-Style Poisoning (cont’) Can start anytime; no waiting for old good cached entries to expire No “wait penalty” for racing failure The attack is only bandwidth limited Defense (alleviate, but not solve the problem) –Also randomize the UDP used to send the DNS query, the attacker has to guess that port correctly as well. CS42624Fall 2010/Lecture 34

DNS Poisoning Defenses Difficulty to change the protocol –Protocol stability (embedded devices) –Backward compatible Long-term –Cryptographic protections E.g., DNSSEC, DNSCurve –Require changes to both recursive and authority servers –A multi-year process Short-term –Only change the recursive server –Easy to adopt CS42625Fall 2010/Lecture 34

Short-Term Defenses Source port randomization –Add 16-bits entropy –resource intensive (select on a potentially large pool of ports) –NAT could de-randomize the port DNS 0x20 encoding –From Georgia tech, CCS 2008 Tighter logic for accepting responses CS42626Fall 2010/Lecture 34

DNS-0x20 Bit Encoding DNS labels are case insensitive Matching and resolution is entirely case insensitive A resolver can query in any case pattern –E.g., –It will get the answer for CS42627Fall 2010/Lecture 34

DNS-0x20 DNS Encoding (cont’) A DNS response contains the query being asked When generating the response, the query is copied from the request exactly into the response –The case pattern of the query is preserved in the response Open source implementations exhibit this behavior –The DNS request is rewritten in place The mixed pattern of upper and lower case letters constitutes a channel, which can be used to improve DNS security –Only the real server knows the correct pattern CS42628Fall 2010/Lecture 34

Query Encoding Transforms the query into all lowercase Encrypt the query with a key shared by all queries on the recursive server (A) The cipher text is used to encode the query –0: buff[i] |= 0x20 –1: buff[i] &= 0x20 CS42629Fall 2010/Lecture 34

DNS-0x20 Encoding Analysis Do existing authority servers preserve the case pattern? –Scan 75 million name servers, 7 million domains Only 0.3% mismatch observed CS42630Fall 2010/Lecture 34

DNS-0x20 Encoding Analysis (cont’) Not every character is 0x20 capable Improve the forgery resistance of DNS messages only in proportion to the number of upper or lower case characters –cia.gov6-bit entropy –licensing.disney.com12-bit entropy –163.com3-bit entropy TLDs are also vulnerable to Kaminsky-style attacks; but they have few 0x20-capable bits CS42631Fall 2010/Lecture 34

CS426Fall 2010/Lecture 3432 Other DNS attacks Attacking home routers/gateways Incidence in Mexica in 2008 –an sent to users – include URL (HTTP requests) to the HTTP- based interface of wireless routers –using the default password to reconfigure the router/gateway

CS426Fall 2010/Lecture 3433 Readings for This Lecture Optional: An Illustrated Guide to the Kaminsky DNS VulnerabilityAn Illustrated Guide to the Kaminsky DNS Vulnerability Dan Kaminsky's Black Hat presentation (PowerPoint)Black Hat presentation

CS426Fall 2010/Lecture 3434 Coming Attractions … Network Security Defenses