Covert Channels inside DNS



Similar documents
On Robust Covert Channels Inside DNS

Project 4: IP over DNS Due: 11:59 PM, Dec 14, 2015

Frequently Asked Questions

A Comparative Performance Evaluation of DNS Tunneling Tools

System Requirements Orion

How do I get to

DOMINO Broadband Bonding Network

Bypassing firewalls Another hole in the wall ;-) Présentation pour «La nuit du hack» le 13 Juin 2009

Reverse Shells Enable Attackers To Operate From Your Network. Richard Hammer August 2006

Introduction To Computer Networking

The Problem with TCP. Overcoming TCP s Drawbacks

ETSI TS V1.1.1 ( )

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas

IPv6 Workshop: Location Date Security Trainer Name

Introduction to computer networks and Cloud Computing

idatafax Troubleshooting

Attack and Defense Techniques

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

How To Monitor And Test An Ethernet Network On A Computer Or Network Card

Guideline for setting up a functional VPN

DDoS attacks on electronic payment systems. Sean Rijs and Joris Claassen Supervisor: Stefan Dusée

For version p (September 4, 2012)

Network Security. Network Packet Analysis

3. The Domain Name Service

La couche transport dans l'internet (la suite TCP/IP)

School of Information Science (IS 2935 Introduction to Computer Security, 2003)

Performance Analysis of IPv4 v/s IPv6 in Virtual Environment Using UBUNTU

Technical Support Information Belkin internal use only

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

CIT 380: Securing Computer Systems

Final for ECE374 05/06/13 Solution!!

Evaluation of VoIP in a Mobile Environment using an end-to-end Handoff Mechanism

VPN over Satellite A comparison of approaches by Richard McKinney and Russell Lambert

ClickShare Network Integration

Computer Networks: DNS a2acks CS 1951e - Computer Systems Security: Principles and Prac>ce. Domain Name System

Performance Assessment and Analysis of DNS Tunneling Tools

Overview of Computer Networks

Applications that Benefit from IPv6

1 hours, 30 minutes, 38 seconds Heavy scan. All scanned network resources. Copyright 2001, FTP access obtained

SIDN Server Measurements

Voice-Over-IP. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Computer Networks - CS132/EECS148 - Spring

Packet Capture. Document Scope. SonicOS Enhanced Packet Capture

Bluetooth Low Energy

Overview of TCP/IP. TCP/IP and Internet

Networking Technology Online Course Outline

Network Security: Workshop. Dr. Anat Bremler-Barr. Assignment #2 Analyze dump files Solution Taken from

Conditions affecting performance of a WebEx session.

EXPLORER. TFT Filter CONFIGURATION

Covert Channels. Some instances of use: Hotels that block specific ports Countries that block some access

Mise en pratique : installation d'openvpn sur OpenWRT

Security vulnerabilities in the Internet and possible solutions

Virtual Private Network Using Peer-to-Peer Techniques

Parallels Plesk Panel. VPN Module for Parallels Plesk Panel 10 for Linux/Unix Administrator's Guide. Revision 1.0

How To Understand A Network Attack

Getting started with IPv6 on Linux

D1.2 Network Load Balancing

GoToMyPC Corporate Advanced Firewall Support Features

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Network performance in virtual infrastructures

Memory Eye SSTIC Yoann Guillot. Sogeti / ESEC R&D yoann.guillot(at)sogeti.com

Network Monitoring. By: Delbert Thompson Network & Network Security Supervisor Basin Electric Power Cooperative

Install MS SQL Server 2012 Express Edition

Data Exfiltration and DNS

LESSON Networking Fundamentals. Understand TCP/IP

Voice over IP. Demonstration 1: VoIP Protocols. Network Environment

Parallels Plesk Panel

Computer Networks Network architecture

The Fundamentals of Intrusion Prevention System Testing

First Midterm for ECE374 02/25/15 Solution!!

Operational Problems in IPv6: Fallback and DNS issues

Voice over IP (VoIP) Overview. Introduction. David Feiner ACN Introduction VoIP & QoS H.323 SIP Comparison of H.323 and SIP Examples

Top-Down Network Design

ITL Lab 5 - Performance Measurements and SNMP Monitoring 1. Purpose

Test Methodology White Paper. Author: SamKnows Limited

Internet Services. Amcom. Support & Troubleshooting Guide

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

Chapter 6 Configuring the SSL VPN Tunnel Client and Port Forwarding

WOPR 12 Resource Monitoring During Performance Testing

Stateful Firewalls. Hank and Foo

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

Personnalisez votre intérieur avec les revêtements imprimés ALYOS design

Internet Protocol: IP packet headers. vendredi 18 octobre 13

13 Virtual Private Networks 13.1 Point-to-Point Protocol (PPP) 13.2 Layer 2/3/4 VPNs 13.3 Multi-Protocol Label Switching 13.4 IPsec Transport Mode

Edgewater Routers User Guide

ICOM : Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

Firewall Testing. Cameron Kerr Telecommunications Programme University of Otago. May 16, 2005

Abstract. Introduction. Section I. What is Denial of Service Attack?

Effect of anycast on K-root

Allocating Network Bandwidth to Match Business Priorities

Bridgit Conferencing Software: Security, Firewalls, Bandwidth and Scalability

GregSowell.com. Mikrotik Security

Internet Privacy Options

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links

About Firewall Protection

The Picture must be Clear. IPTV Quality of Experience

ReadyNAS Remote White Paper. NETGEAR May 2010

From Centralization to Distribution: A Comparison of File Sharing Protocols

EKT 332/4 COMPUTER NETWORK

Firewall Firewall August, 2003

Transcription:

Covert Channels inside DNS Lucas Nussbaum Lucas Nussbaum Covert Channels inside DNS 1 / 23

Introduction On many networks, to access the Internet: you have to pay (airports, train stations, hotels) or you have to log in (universities networks) Only service available to all users: DNS Question How can one access the whole Internet (without logging in) using only DNS? Lucas Nussbaum Covert Channels inside DNS 2 / 23

DNS - Domain Name System phone book for the Internet UDP, port 53 Types of records: A: karok.imag.fr 129.88.69.11 CNAME: www-id.imag.fr karok.imag.fr TXT: text... $ dig -t txt imag.fr Institut d Informatique et de Mathematiques Appliquees IMAG BP 53 F-38041 GRENOBLE Cedex 9 (France) or IMAG 46 Av. Felix Viallet F-38031 GRENOBLE Cedex 1 v=spf1 mx ip4:129.88.34.204?all Lucas Nussbaum Covert Channels inside DNS 3 / 23

DNS - Hierarchy and Delegation Lucas Nussbaum Covert Channels inside DNS 4 / 23

Tunneling data inside DNS - Principle encapsulation of data in DNS packets use a rogue DNS server on the Internet to decode data and send it to other servers Firewall DNS server Internet Server Internet Lucas Nussbaum Covert Channels inside DNS 5 / 23

Covert Channels Definition parasitic communication channel that draws bandwidth from another channel in order to transmit information without the authorization or knowledge of the latter channel s designer, owner or operator. Storage channels - communicate by modifying a stored object Timing channels - transmit information by affecting the relative timing of events Examples: Steganography, IP over HTTP, IP over ICMP Lucas Nussbaum Covert Channels inside DNS 6 / 23

Covert Channels inside DNS - implementations NSTX: IP over DNS uses base64 to upload uses TXT records without encoding to download unmaintained, buggy code (segfaults, mem leaks) splits IP packets in chunks OzymanDNS: encapsulates a TCP stream in DNS packets (typical use: SSH over DNS) implements a TCP-like machine to reorder/retransmit packets uses TXT and EDNS0 crashes very frequently; not able to run performance measurements Lucas Nussbaum Covert Channels inside DNS 7 / 23

Covert Channels inside DNS - implementations Iodine: better codebase than NSTX uses base32 or base64 uses NULL records and EDNS0 splits IP packets into chunks Lucas Nussbaum Covert Channels inside DNS 8 / 23

TUNS Features: IP over DNS uses only CNAME records (both for upload and download) doesn t split IP packets, reduces MTU instead (1-1 mapping) no need to bother with TCP state machine, reordering / retransmitting prototype written in Ruby (perf. problems with pnet::dns!) tries to be RFC-compliant Lucas Nussbaum Covert Channels inside DNS 9 / 23

TUN/TAP virtual network interfaces tap: layer 2 (ethernet frames) tun: layer 3 (IP packets) userspace application can associate with them and send/receive packets to/from the OS network stack used by openvpn, vtun, bochs, qemu, virtualbox available on all common platforms (incl. MS Windows) Lucas Nussbaum Covert Channels inside DNS 10 / 23

Base32? Base64? Goal: encode binary stream as text Base32: 32 values (5 bits) per character [A-Z][2-7] Base64: 64 values (6 bits) per character [A-Z][a-z][0-9]-+ DNS (RFC 1034): <label> ::= <letter> [ [ <ldh-str> ] <let-dig> ] <ldh-str> ::= <let-dig-hyp> <let-dig-hyp> <ldh-str> <let-dig-hyp> ::= <let-dig> "-" <let-dig> ::= <letter> <digit> <letter> ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case <digit> ::= any one of the ten digits 0 through 9 Note that while upper and lower case letters are allowed in domain names, no significance is attached to the case. That is, two names with the same spelling but different case are to be treated as if identical. Lucas Nussbaum Covert Channels inside DNS 11 / 23

Base32? Base64? Base64: 64 characters DNS: 63 characters [A-z][a-z][0-9]- nstx: [A-Z][a-z][0-9]-_ Lucas Nussbaum Covert Channels inside DNS 12 / 23

Sending and receiving data Sending from client to server: easy. Just encapsulate data in a DNS packet as soon as it is received. Receiving from server: harder. Client polls server with nearly empty requests. Server answers with data. Improvement: Server keeps requests for a little while if there s nothing to send. Lucas Nussbaum Covert Channels inside DNS 13 / 23

Performance? Compare NSTX, Iodine, TUNS (OzymanDNS is too buggy) Latency? Bandwidth? How does performance evolve when the network conditions degrade? Lucas Nussbaum Covert Channels inside DNS 14 / 23

Experimental setup client emulator server Using 3 Grid 5000 nodes (Helios) Running on Linux 2.6.22 - i686, not amd64 Using Linux TC/Netem for network emulation Emulation parameters applied when packets exit the emulator node For all experiments: output bandwidth of emulator node limited to 1 Mbps Lucas Nussbaum Covert Channels inside DNS 15 / 23

Latency - ping started by client (-i 1) 250 200 Ideal NSTX - UP Iodine - UP Tuns - UP perceived RTT (ms) 150 100 50 0 0 50 100 150 200 emulated RTT (ms) Lucas Nussbaum Covert Channels inside DNS 16 / 23

Latency - ping started by server (-i 1) 1400 1200 Ideal NSTX Iodine Tuns perceived RTT (ms) 1000 800 600 400 200 0 0 50 100 150 200 emulated RTT (ms) Lucas Nussbaum Covert Channels inside DNS 17 / 23

Bandwidth - upload (client to server) 500 400 NSTX Iodine Tuns bandwidth (Kbps) 300 200 100 0 0 50 100 150 200 emulated RTT (ms) Lucas Nussbaum Covert Channels inside DNS 18 / 23

Bandwidth - download (server to client) 500 400 NSTX Iodine Tuns bandwidth (Kbps) 300 200 100 0 0 50 100 150 200 emulated RTT (ms) Lucas Nussbaum Covert Channels inside DNS 19 / 23

Bandwidth under 2% loss - upload bandwidth (Kbps) 200 150 100 50 NSTX Iodine Tuns NSTX - no loss Iodine - no loss Tuns - no loss 0 0 50 100 150 200 emulated RTT (ms) Lucas Nussbaum Covert Channels inside DNS 20 / 23

Demo IMAG-VPN? Accessing the Internet from Grid 5000? Lucas Nussbaum Covert Channels inside DNS 21 / 23

Conclusion IP over DNS works! KISS (Keep It Simple, Stupid) works Tuns: about 700 LOC Performance? Ruby: not as fast as C code (big surprise!) pnet::dns is SLOW But good design can replace fast code (having both is better, of course) NSTX and Iodine perform a lot better But often don t work in real networks In experiments: no intermediate DNS servers Lucas Nussbaum Covert Channels inside DNS 22 / 23

Legal issues Code pénal, article 323-1: Le fait d accéder ou de se maintenir, frauduleusement, dans tout ou partie d un système de traitement automatisé de données est puni de deux ans d emprisonnement et de 30000 euros d amende. Lorsqu il en est résulté soit la suppression ou la modification de données contenues dans le système, soit une altération du fonctionnement de ce système, la peine est de trois ans d emprisonnement et de 45000 euros d amende. Code pénal, article 323-3-1: Le fait, sans motif légitime, d importer, de détenir, d offrir, de céder ou de mettre à disposition un équipement, un instrument, un programme informatique ou toute donnée conçus ou spécialement adaptés pour commettre une ou plusieurs des infractions prévues par les articles 323-1 à 323-3 est puni des peines prévues respectivement pour l infraction elle-même ou pour l infraction la plus sévèrement réprimée. Lucas Nussbaum Covert Channels inside DNS 23 / 23