* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Attacks and hacker tools - International Computer Institute
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Wireless security wikipedia , lookup
TCP congestion control wikipedia , lookup
Parallel port wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Deep packet inspection wikipedia , lookup
Distributed firewall wikipedia , lookup
Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 1 Reconnaissance “casing the joint” Let’s take a close look at: Reconnaissance with whois Reconnaissance with DNS A few words about a Registrar: Organization where you register a domain name Verifies uniqueness of name Enters domain name into various databases: whois & DNS Polytechnic University Attacks 2 List of registrars from internic.net: Polytechnic University Attacks 3 Whois databases Input: domain name or company name Output: registrar, whois server, dns server Some useful whois sites: www.internic.net For com, net and org top-level domains www.allwhois.com For country-code top-level domains, e.g., jp, fr Two steps First find target’s registrar Then whois target at registrar Polytechnic University Attacks 4 Internic Whois: Target “kazaa” Polytechnic University Attacks 5 Whois: next step Do whois at registrar, eg, register.com Input: domain name, IP address, net administrator name Output: Names of people (administrator, billing contact) Telephone numbers E-mail addresses Name servers and IP addresses Polytechnic University Attacks 6 Whois at kazaa’s registrar Polytechnic University Attacks 7 Reconnaissance: IP Ranges ARIN: American Registry for Internet Numbers Maintains whois database that includes IP address ranges in US RIPE: Europe APNIC: Asia Polytechnic University Attacks 8 Query at ARIN Polytechnic University Attacks 9 Why whois databases needs to be publicly available If you’re under attack, can analyze source address of packets. Can use whois database to obtain info about the domain from where the attack is coming. Can inform admin that their systems are source of an attack Polytechnic University Attacks 10 Reconnaissance: DNS database Let’s quickly review DNS: distributed database implemented in hierarchy of many DNS servers Authoritative name server: for a given domain (e.g., poly.edu), provides server name to IP address mappings for servers (Web, email, ftp, etc) in domain Primary and secondary name server for reliability Polytechnic University Attacks 11 Root DNS Servers com DNS servers yahoo.com DNS servers amazon.com DNS servers org DNS servers pbs.org DNS servers edu DNS servers poly.edu umass.edu DNS servers DNS servers Figure 2.18 Portion of the hierarchy of DNS servers Polytechnic University Attacks 12 DNS: queries root DNS server 2 3 TLD DNS server 4 5 local DNS server dns.poly.edu 1 8 requesting host 7 6 authoritative DNS server dns.cs.umass.edu cis.poly.edu gaia.cs.umass.edu Polytechnic University Attacks 13 DNS records DNS: distributed db storing resource records (RR) RR format: (name, Type=A name is hostname value is IP address Type=NS name is domain (e.g. foo.com) value is IP address of authoritative name server for this domain Polytechnic University value, type, ttl) Type=MX value is name of mailserver associated with name Attacks 14 DNS protocol, messages Name, type fields for a query RRs in reponse to query records for authoritative servers additional “helpful” info that may be used Query and reply messages sent Over UDP on port 53 Polytechnic University Attacks 15 DNS: caching and updating records once (any) DNS server learns mapping, it caches mapping cache entries timeout (disappear) after some time Polytechnic University Attacks 16 Interrogating DNS servers Attacker first gets primary or secondary authoritative server for target organization using whois. Attacker can then query the DNS by sending DNS query messages. Tools (often available in Unix and Windows machines; also available at web sites): nslookup host dig Polytechnic University Attacks 17 nslookup Avaiable in most unix & Windows machines Get dialpad DNS server IP address from whois set type=any “get all” Polytechnic University Attacks 18 Reconnaissance summary Obtaining information from public databases: whois databases • Tool: web sites DNS database • Tool: nslookup Defense Keep to a minimum what you put in the public database: only what is necessary Polytechnic University Attacks 19 Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 20 Network mapping Goal: Learn about a remote network attacker 121.27.2.1 121.27.2.4 firewall? Internet firewall? Internal network 121.27.2.16 Polytechnic University Attacks 21 Network mapping Attacker uses ping sweeps to determine live hosts Attacker uses port scans to determine live services Attacker often uses traceroute to determine path to each host discovered during ping sweep. Overlay results from traceroute to create an approximate network diagram Polytechnic University Attacks 22 Traceroute traceroute: gaia.cs.umass.edu to www.eurecom.fr Three delay measements from gaia.cs.umass.edu to cs-gw.cs.umass.edu 1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms trans-oceanic 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms link 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * * means no reponse (probe lost, router not replying) 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms Polytechnic University Attacks 23 Traceroute: How it works Source sends UDP packets to target Each to an unlikely port 3 packets with the same TTL, then increments TTL When router decrements TTL to 0, sends back to source ICMP packet type 11, code 0, TTL expired When target receives packet, sends back to source ICMP packet type 3, code 0, destination port unreachable Polytechnic University Attacks 24 Ping Sweep Ping Recall ICMP messages are directly encapsulated in IP datagrams (protocol 1) To ping a host: send ICMP Echo Request (ICMP type 8) Host responds with ICMP Echo Reply (type 0) So let’s ping the entire IP address range Use automated tool for this ping sweep If firewall blocks ping packets: Try sweeping with TCP SYN packets to port 80 Or try sending UDP packets to possible ports Polytechnic University Attacks 25 Port scanning Now that we have a map with some hosts, let’s find out what ports are open on a target host 65,535 TCP ports; 65,535 UDP ports Web server: TCP port 80 DNS server: UDP port 53 Mail server: TCP port 25 Port scanning tools can scan: List of ports Range of ports All possible TCP and UDP ports Attacker may scan a limited set of ports, to avoid detection Polytechnic University Attacks 26 Interlude TCP segment structure 32 bits source port # ACK: ACK # valid sequence number acknowledgement number head not UA P R S F len used checksum RST, SYN, FIN: connection estab (setup, teardown commands) Polytechnic University dest port # counting by bytes of data (not segments!) Receive window Urg data pnter Options (variable length) application data (variable length) Attacks 27 Interlude: TCP seq. #’s and ACKs Seq. #’s: byte stream “number” of first byte in segment’s data ACKs: seq # of next byte expected from other side Host A User types ‘C’ Host B host ACKs receipt of ‘C’, echoes back ‘C’ host ACKs receipt of echoed ‘C’ simple telnet scenario Polytechnic University Attacks time 28 Interlude: TCP Connection Establishment Three way handshake: Step 1: client host sends TCP SYN segment to server SYN=1, ACK=0 specifies initial seq # no data Step 2: server host receives SYN, replies with SYN-ACK segment SYN=1, ACK=1 server host allocates buffers specifies server initial seq. # Step 3: client receives SYN-ACK, replies with ACK segment, which may contain data SYN=0, ACK=1 Polytechnic University Attacks 29 TCP: Reset packet If machine receives a TCP packet it is not expecting, it responds with TCP packet with RST bit set. For example when no process is listening on destination port For UDP, machine returns ICMP “port unreachable” instead Polytechnic University Attacks 30 Nmap (1) Extremely popular usually run over linux rich feature set, exploiting raw sockets need root to use all features Ping sweeping over any range of IP addresses with ICMP, SYN, ACK OS determination Polytechnic University Port scanning Over any range of ports Almost any type of TCP, UDP packet Source IP address spoofing Decoy scanning Packet fragmentation Timing Options Excellent reference: Nmap man page Attacks 31 Nmap (2) Input: nmap [Scan Type] [Options] <target hosts> Default for port scanning: ports 1-1024 plus ports listed in nmap service file Output: open ports: syn/ack returned; port is open unfiltered ports: RST returned: port is closed but not blocked by firewall filtered ports: nothing returned; port is blocked by firewall Polytechnic University Attacks 32 Nmap (3): ping sweep Nmap –sP –v 116.27.38/24 Sends ICMP echo request (ping) to 256 addresses Can change options so that pings with SYNs, ACKs… -sP = ping -v = verbose Polytechnic University Attacks 33 Nmap (4): polite port scan nmap –sT -v target.com Attempts to complete 3-way handshake with each target port Sends SYN, waits for SYNACK, sends ACK, then sends FIN to close connection If target port is closed, no SYNACK returned Instead RST packet is typically returned TCP connect scans are easy to detect Target (e.g. Web server) may log completed connections Gives away attacker’s IP address Polytechnic University Attacks 34 Nmap (5) : TCP SYN port scan nmap –sS -v target.com Stealthier than polite scan Send SYN, receive SYNACK, send RST Send RST segment to avoid an accidental DoS attack Stealthier: hosts do not record connection But routers with logging enabled will record the SYN packet Faster: don’t need to send FIN packet Polytechnic University Attacks 35 Nmap (6): TCP ACK scans Many filters (in firewalls and routers) only let internal systems hosts initiate TCP connections Drop packets for which ACK=0 (ie SYN packet): no sessions initiated externally To learn what ports are open through firewall, try an ACK scan (segments with ACK=1) ACK dest port 2031 firewall ACK dest port 2032 RST Polytechnic University I learned port 2032 is open through the firewall Internal Network Attacks 36 Nmap (7): UDP port scans UDP doesn’t have SYN, ACK, RST packets nmap simply sends UDP packet to target port ICMP Port Unreachable: interpret port closed Nothing comes back: interpret port open • False positives common Polytechnic University Attacks 37 Nmap (8): Obscure source Attacker can enter list of decoy source IP addresses into Nmap For each packet it sends, Nmap also sends packets from decoy source IP addresses For 4 decoy sources, send five packets Attacker’s actual address must appear in at least one packet, to get a result If there are 30 decoys, victim network will have to investigate 31 different sources! Polytechnic University Attacks 38 Nmap (9): TCP stack fingerprinting In addition to determining open ports, attacker wants to know OS on targeted machine: exploit machine’s known vulnerabilities sophisticated hacker may set up lab environment similar to target network TCP implementations in different OSes respond differently to illegal combinations of TCP flag bits. Polytechnic University Attacks 39 Nmap (10): Fingerprinting Nmap sends SYN to open port NULL to open port (no flag bits set) SYN/FIN/URG/PSH to open port SYN to closed port ACK to closed port FIN/PSH/URG to closed port UDP to closed port Nmap includes a database of OS fingerprints for hundreds of platforms Polytechnic University Attacks 40 Nmap (11): examples nmap -v target.com Scans all TCP default ports on target.com; verbose mode nmap -sS -O target.com/24 First pings addresses in target network to find hosts that are up. Then scans default ports at these hosts; stealth mode (doesn’t complete the connections); tries to determine OS running on each scanned host nmap -sX -p 22,53,110,143 198.116.*.1-127 Sends an Xmas tree scan to the first half of each of the 255 possible subnets in the 198.116/16. Testing whether the systems run ssh, DNS, pop3, or imap nmap -v -p 80 *.*.2.3-5 finds all web servers on machines with IP addresses ending in .2.3, .2.4, or .2.5 Polytechnic University Attacks 41 Defenses against network mapping Filter using firewalls and packet-filtering capabilities of routers Block incoming ICMP packets, except to the hosts that you want to be pingable Filter Time Exceeded ICMP messages leaving your network Close all unused ports Scan your own systems to verify that unneeded ports are closed Intrusion Detection Systems Polytechnic University Attacks 42 Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 43 Review of interconnection devices Hubs Switches Routers Polytechnic University Attacks 44 Hubs Hubs are essentially physical-layer repeaters: bits coming from one link go out all other links at the same rate no frame buffering no CSMA/CD at hub: adapters detect collisions provides net management functionality twisted pair hub Polytechnic University Attacks 45 Sniffing Attacker is inside firewall Requirements Attacker’s host connected to shared medium NIC should be in “promiscuous mode” • processes all frames that come to NIC Sniffer has two components Capture Packet analysis Polytechnic University Grab and file away: userids and passwords credit card numbers secret e-mail conversations Island hopping attack: Take over single machine (eg virus) Install sniffer, observe passwords, take over more machines, install sniffers Attacks 46 Passive sniffing Easy to sniff: 802.11 traffic Ethernet traffic passing through a hub • Any packets sent to hub is broadcast to all interfaces • Not true for a switch Cable modem traffic Popular sniffers Wireshark (saw this in CS 684) tcpdump (for unix) Snort (sniffing and intrusion detection) Polytechnic University Attacks 47 Active Sniffing through a switch How does attacker sniff packets sent to/from the victim? attacker switch victim Have to get victim’s packets to attacker! Polytechnic University Attacks 48 Sniffing through a switch: flooding switch memory approach Host sends flood of frames with random source MAC addresses Switch’s forwarding table gets filled with bogus MAC addresses When “good packet arrives,” dest MAC address not in switch memory Switch broadcasts real packets to all links Sniff all the broadcast packets Polytechnic University Attacks 49 Defenses Tie MAC addresses to switch ports Available on high-end switches Sophisticated configuration Give priority to existing mappings Only replace them when timeout expires Polytechnic University Attacks 50 Sniffing through LAN: poison victim’s ARP table approach Idea: have client’s traffic diverted to attacker (1) Send fake ARP response, mapping router IP address to attacker’s MAC address (0) Sniff all frames that arrive. Configure so that IP packets arriving from victim are attacker forwarded to default router (3) Packets are forwarded from attacker’s host to default router victim (2) Victim sends traffic switch destined to outside world. Poisoned ARP table causes traffic to be sent to attacker Polytechnic University default router for LAN outside world Attacks 51 Powerful sniffing tools Dsniff and ettercap Flooding switch memory ARP poisoning Poisoning DNS Polytechnic University Attacks 52 Sniffing defenses Encrypt data: IPsec, SSL, PGP, SSH Get rid of hubs: complete migration to switched network Use encryption for wireless and cable channels Configure switches with MAC addresses Turn off self learning Eliminates flooding problem Intrusion detection systems: Lookout for large numbers of ARP replies Honeypot Create fake account and send password over network Identify attacker when it uses the password Polytechnic University Attacks 53 Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 54 IP address spoofing (1) SA: 36.220.9.59 DA: 212.68.212.7 145.13.145.67 212.68.212.7 Attacker doesn’t want actions traced back Simply re-configure IP address in Windows or Unix. Or enter spoofed address in an application e.g., decoy packets with Nmap Polytechnic University Attacks 55 IP address spoofing (2) 145.13.145.67 SA: 36.220.9.59 DA: 212.68.212.7 attacker 36.220.9.59 212.68.212.7 victim SA: 212.68.212.7 DA: 36.220.9.59 But attacker cannot interact with victim. Unless attacker is on path between victim and spoofed address. Polytechnic University Attacks 56 IP spoofing with TCP? Can an attacker make a TCP connection to server with a spoofed IP address? Not easy: SYNACK and any subsequent packets sent to spoofed address. If attacker can guess initial sequence number, can attempt to send commands Send ACK with spoofed IP and correct seq #, say, one second after SYN But TCP uses random initial sequence numbers. Polytechnic University Attacks 57 Defense: Ingress filtering: access ISP 127.32.1.1 x 127.32.1.1 privately administered x Internet 222.22/16 Polytechnic University Attacks 58 Ingress Filtering: Upstream ISP (1) 12.12/24 regional ISP BGP update: 12.12/24, 34.35/24 34.34/24 tier-1 ISP 56.56/24 BGP update: 56.56/24, 78.78/24 regional ISP 78.78/24 Polytechnic University Attacks 59 Ingress Filtering: Upstream ISP (2) 12.12/24 BGP update: 12.12/24, 34.34/24 Filter all but 12.12/24 and 34.34/24 34.34/24 56.56/24 BGP update: 56.56/24, 78.78/24 Filter all but 56.56/24 and 78.78/24 78.78/24 Polytechnic University Attacks 60 Ingress Filtering: Upstream ISP (3) 12.12/24 regional ISP 56.56.1.1 x Filter all but 12.12/24 and 34.34/24 34.34/24 tier-1 ISP Filter all but 56.56/24 and 78.78/24 56.56/24 regional ISP 78.78/24 Polytechnic University Attacks 61 Ingress Filtering: Upstream ISP (3) 12.12/24 34.34.1.1 regional ISP Filter all but 12.12/24 and 34.34/24 34.34/24 spoofed packet gets through! tier-1 ISP Filter all but 56.56/24 and 78.78/24 56.56/24 regional ISP 78.78/24 Polytechnic University Attacks 62 Ingress filtering: summary Effectiveness depends on widespread deployment at access ISPs Deployment in upstream ISPs helps, but does not eliminate IP spoofing Filtering can impact router forwarding perf Even if universally deployed at access, hacker can still spoof another address in its access network 12.12/24 See RFC 2827 “Network Ingress Filtering: Defeating DDoS” Polytechnic University Attacks 63 Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 64 Session hijacking Take control of one side of a TCP connection Marriage of sniffing and spoofing Alice telnet Bob Alice Attacker Polytechnic University Attacks 65 Session hijacking: The details Attacker is on segment where traffic passes from Alice to Bob Attacker sniffs packets Sees TCP packets between Bob and Alice and their sequence numbers Attacker jumps in, sending TCP packets to Bob; source IP address = Alice’s IP address Bob now obeys commands sent by attacker, thinking they were sent by Alice Principal defense: encyrption Attacker does not have keys to encrypt and insert meaningful traffic Polytechnic University Attacks 66 Session hijacking: limitation 2. to resync, Alice sends segment with correct seq # 1. weird ACK # for data never sent Alice Bob is getting segments from attacker and Alice. Source IP address same, but seq #’s different. Bob likely drops connection. Polytechnic University Attacker Bob Attacker’s solution: • Send unsolicited ARP replies to Alice and Bob with non-existent MAC addresses • Overwrite IP-to-MAC ARP tables • Alice’s segments will not reach Bob and vice-versa • But attacker continues to hear Bob’s segments, communicates with Bob Attacks 67 Session Hijacking Tools: Hunt http://lin.fsid.cvut.cz/~kra/index.html Provides ARP poisoning Netcat General purpose widget Very popular Polytechnic University Attacks 68 Denial-of-Service Prevent access by legitimate users or stop critical system processes Vulnerability attack: Send a few crafted messages to target app that has vulnerability Malicious messages called the “exploit” Remotely stopping or crashing services Connection flooding Overwhelming connection queue with SYN flood Bandwidth flooding attack: Polytechnic University Overwhelming communications link with packets Strength in flooding attack lies in volume rather than content Attacks 69 DoS and DDoS DoS: source of attack small # of nodes source IP typically spoofed DDoS From thousands of nodes IP addresses often not spoofed Good book: Internet Denial of Service by J. Merkovic, D. Dittrich, P. Reiher, 2005 Polytechnic University Attacks 70 Interlude: IP datagram format 32 bits header length (bytes) “type” of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to type of ver head. len service length fragment 16-bit identifier flgs offset upper time to Internet layer live checksum total datagram length (bytes) for fragmentation/ reassembly 32 bit source IP address 32 bit destination IP address Options (if any) data (variable length, typically a TCP or UDP segment) Polytechnic University Attacks 71 IP Fragmentation and Reassembly Example 4000 byte datagram MTU = 1500 bytes 1480 bytes in data field offset = 1480/8 Polytechnic University length ID fragflag offset =4000 =x =0 =0 One large datagram becomes several smaller datagrams length ID fragflag offset =1500 =x =1 =0 length ID fragflag offset =1500 =x =1 =185 length ID fragflag offset =1040 =x =0 =370 Attacks 72 DoS: examples of vulnerability attacks Land: sends spoofed packet with source and dest address/port the same Ping of death: sends oversized ping packet Jolt2: sends a stream of fragments, none of which have offset of 0. Rebuilding consumes all processor capacity. Polytechnic University Teardrop, Newtear, Bonk, Syndrop: tools send overlapping segments, that is, fragment offsets incorrect. Patches fix the problem, but malformed packet attacks continue to be discovered. Attacks 73 Connection flooding: Overwhelming connection queue w/ SYN flood (1) Recall client sends SYN packet with initial seq. number when initiating a connection. TCP on server machine allocates memory on its connection queue, to track the status of the new halfopen connection. For each half-open connection, server waits for ACK segment, using a timeout that is often > 1 minute Polytechnic University Attack: Send many SYN packets, filling connection queue with half-open connections. Can spoof source IP address! When connection queue is exhausted, no new connections can be initiated by legit users. Need to know of open port on victim’s machine: Port scanning. Attacks 74 DoS: Overwhelming connection queue with SYN flood (2) amateur attack: attacker Connection queue freed up with RST segment victim Alice Polytechnic University Expert attack: Use multiple source IP addresses, each from unresponsive addresses. Attacks 75 SYN flood defense: SYN cookies (1) SYN with ISNA Host A SYN-ACK with ISNB= cookie Host B When SYN segment arrives, host B calculates function (hash) based on: Source and destination IP addresses and port numbers, and a secret number Host B uses resulting “cookie” for its initial seq # (ISN) in SYNACK Host B does not allocate anything to half-open connection: Does not remember A’s ISN Does not remember cookie Polytechnic University Attacks 76 SYN flood defense: SYN cookies (2) If SYN is legitimate Host A returns ACK Host B computes same function, verifies function = ACK # in ACK segment Host B creates socket for connection Legit connection established without the need for half-open connections Polytechnic University If SYN-flood attack with spoofed IP address No ACK comes back to B for connection. No problem: B is not waiting for an ACK What if Host A sends only ACK (no SYN)? Will host B establish a connection? Attacks 77 Overwhelming link bandwidth with packets Attack traffic can be made similar to legitimate traffic, hindering detection. Flow of traffic must consume target’s bandwidth resources. Attacker needs to engage more than one machine => DDoS May be easier to get target to fill-up its upstream bandwidth: async access Example: attacking BitTorrent seeds Polytechnic University Attacks 78 Distributed DoS: DDos bot Attacker takes over many machines, called “bots”. Potential bots are machines with vulnerabilities. bot attacker Internet victim bot bot processes wait for command from attacker to flood a target bot Polytechnic University Attacks 79 DDoS: Reflection attack DNS server reply request request DNS server reply request attacker reply DNS server victim request reply Source IP = victim’s IP DNS server Polytechnic University Attacks 80 DDoS: Reflection attack Spoof source IP address = victim’s IP Goal: generate lengthy or numerous replies for short requests: amplification Without amplification: would it make sense? January 2001 attack: requests for large DNS record generated 60-90 Mbps of traffic Reflection attack can be also be done with Web and other services Polytechnic University Attacks 81 DDoS Defenses Don’t let your systems become bots Keep systems patched up Employ egress antispoof filtering on external router. Filter dangerous packets Vulnerability attacks Intrusion prevention systems Polytechnic University Over-provisioning of resources Abundant bandwidth Large pool of servers ISP needs abundant bandwidth too. Multiple ISPs Signature and anomaly detection and filtering Upstream hopefully Rate limiting Limit # of packets sent from source to dest Attacks 82 DNS attacks Reflector attack: already discussed Leverage DNS for attacks on arbitrary targets Denying DNS service Stop DNS root servers Stop top-level-domain servers (e.g. .com domain) Stop local (default name servers) Use fake DNS replies to redirect user Poisoning DNS: Insert false resource records into various DNS caches False records contain IP addresses operated by attackers Polytechnic University Attacks 83 DDos DNS Attack Oct 21, 2002 Ping packets sent from bots to the 13 DNS root servers. Goal: bandwidth flood servers Minimal impact: DNS caching rate limiting at upstream routers: filter ping when they arrive at an excessive rate During attack, some networks filtered pings; corresponding root servers remained up. Root server attack is easy to defend: download root server database to local (default) name servers Not much data in root server; changes infrequently TLD servers are more volatile Similar kind of attack in May 2004, Feb 2007 Polytechnic University Attacks 84 DNS attack: redirecting hub or WiFi 1 network client 2 attacker 1. Client sends DNS query to its local DNS server; sniffed by attacker 2. Attacker responds with bogus DNS reply Polytechnic University local DNS server Issues: • Must spoof IP address: set to local DNS server (easy) •Must match reply ID with request ID (easy) •May need to stop reply from the local DNS server (harder) Attacks 85 Poisoning DNS Cache (1) Poisoning: Attempt to put bogus records into DNS name server caches Bogus records could point to attacker nodes Attacker nodes could phish But unsolicited replies are not accepted at a name server. Name servers use IDs in DNS messages to match replies to queries So can’t just insert a record into a name server by sending a DNS reply message. But can send a reply to a request. Polytechnic University Attacks 86 Poisoning local DNS server (2) authoritative DNS for poly.edu 2. iterative DNS queries 1. DNS query poly.edu=? 3. DNS reply poly.edu= 17.32.8.9 Attacker in Australia: 17.32.8.9 Polytechnic University Local DNS Server (eg, Berkeley) Goal: Put bogus IP address for poly.edu in local Berkeley DNS server 1) Attacker queries local DNS server 2) Local DNS makes iterative queries 3) Attacker waits for some time; sends a bogus reply, spoofing authoritative server for poly.edu. Attacks 87 Poisoning local DNS server (3) authoritative DNS for poly.edu 1. DNS query ftp.poly.edu=? Poisoned local DNS server (eg, Berkeley) 2. DNS query ftp.poly.edu=? Attacker in Australia 17.32.8.9 Polytechnic University DNS response can provide IP address of malicious server! Attacks 88 DNS Poisoning (4) Issues: Attacker needs to know sequence number in request message sent to upstream server • Not easy! Attacker may need to stop upstream name server from responding • So that server under attack doesn’t get suspicious • Ping of death, DoS, overflows, etc Polytechnic University Attacks 89 DNS attacks: Summary DNS is a critical component of the Internet infrastructure But is surprisingly robust: DDoS attacks against root servers have been largely unsuccessful Poisoning and redirection attacks are difficult unless you can sniff DNS requests • And even so, may need to stop DNS servers from replying DNS can be leveraged for reflection attacks against non-DNS nodes Polytechnic University Attacks 90 Attacks & Hacker Tools Before talking about defenses, need to look at network from attacker’s perspective Reconnaissance Network mapping Port scanning Sniffing Polytechnic University IP address spoofing Session hijacking DoS DDoS Attacks 91