Tunneling and Securing TCP Services Nathan Green.

Slides:



Advertisements
Similar presentations
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 4.5 Transport Layer Security.
Advertisements

Cryptography and Network Security Chapter 16
Web security: SSL and TLS
SSL Protocol By Oana Dini. Overview Introduction to SSL SSL Architecture SSL Limitations.
TLS Introduction 14.2 TLS Record Protocol 14.3 TLS Handshake Protocol 14.4 Summary.
Cryptography and Network Security
Secure Socket Layer.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Unifying the conceptual levels of network security through use of patterns Ph.D Dissertation Proposal Candidate: Ajoy Kumar, Advisor: Dr Eduardo B. Fernandez.
Socket Layer Security. In this Presentation: need for web security SSL/TLS transport layer security protocols HTTPS secure shell (SSH)
J. Wang. Computer Network Security Theory and Practice. Springer 2009 Chapter 5 Network Security Protocols in Practice Part II.
Internet Security Protocols
Working Connection Computer and Network Security - SSL, IPsec, Firewalls – (Chapter 17, 18, 19, and 23)
7-1 Chapter 7 – Web Security Use your mentality Wake up to reality —From the song, "I've Got You under My Skin“ by Cole Porter.
An Introduction to Secure Sockets Layer (SSL). Overview Types of encryption SSL History Design Goals Protocol Problems Competing Technologies.
BASIC CRYPTOGRAPHY CONCEPT. Secure Socket Layer (SSL)  SSL was first used by Netscape.  To ensure security of data sent through HTTP, LDAP or POP3.
Securing Network Communication. 2 Security Issues in Communication Privacy  Anyone can see content Integrity  Someone might alter content Authentication.
Cryptography and Network Security
Cryptography and Network Security Chapter 17
K. Salah 1 Chapter 31 Security in the Internet. K. Salah 2 Figure 31.5 Position of TLS Transport Layer Security (TLS) was designed to provide security.
CSCE 790: Computer Network Security Chin-Tser Huang University of South Carolina.
Chapter 8 Web Security.
Announcement Final exam: Wed, June 9, 9:30-11:18 Scope: materials after RSA (but you need to know RSA) Open books, open notes. Calculators allowed. 1.
SYSTEM ADMINISTRATION Chapter 13 Security Protocols.
SSL and https for Secure Web Communication CSCI 5857: Encoding and Encryption.
Secure Socket Layer (SSL)
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
SSL / TLS in ITDS Arun Vishwanathan 23 rd Dec 2003.
Behzad Akbari Spring 2012 (These slides are based on lecture slides by Lawrie Brown)
Andreas Steffen, , 11-SSH.pptx 1 Internet Security 1 (IntSi1) Prof. Dr. Andreas Steffen M. Liebi Institute for Internet Technologies and Applications.
Cosc 4765 SSL/TLS and VPN. SSL and TLS We can apply this generally, but also from a prospective of web services. Multi-layered: –S-http (secure http),
Introduction to Secure Sockets Layer (SSL) Protocol Based on:
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Network Security Essentials Chapter 5
Cryptography and Network Security (CS435) Part Fourteen (Web Security)
Web Security : Secure Socket Layer Secure Electronic Transaction.
Cryptography and Network Security (SSL)
1 SSL - Secure Sockets Layer The Internet Engineering Task Force (IETF) standard called Transport Layer Security (TLS) is based on SSL.
1 Security Protocols in the Internet Source: Chapter 31 Data Communications & Networking Forouzan Third Edition.
Web Security Web now widely used by business, government, individuals but Internet & Web are vulnerable have a variety of threats – integrity – confidentiality.
Network and Internet Security Prepared by Dr. Lamiaa Elshenawy
Encryption protocols Monil Adhikari. What is SSL / TLS? Transport Layer Security protocol, ver 1.0 De facto standard for Internet security “The primary.
SSL(HandShake) Protocol By J.STEPHY GRAFF IIM.SC(C.S)
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
SSH. 2 SSH – Secure Shell SSH is a cryptographic protocol – Implemented in software originally for remote login applications – One most popular software.
Lecture 6 (Chapter 16,17,18) Network and Internet Security Prepared by Dr. Lamiaa M. Elshenawy 1.
@Yuan Xue CS 285 Network Security Secure Socket Layer Yuan Xue Fall 2013.
Cryptography CSS 329 Lecture 13:SSL.
PRESENTATION ON SECURE SOCKET LAYER (SSL) BY: ARZOO THAKUR M.E. C.S.E (REGULAR) BATCH
Network security Presentation AFZAAL AHMAD ABDUL RAZAQ AHMAD SHAKIR MUHAMMD ADNAN WEB SECURITY, THREADS & SSL.
The Secure Sockets Layer (SSL) Protocol
Virtual Private Networks
Cryptography and Network Security
Secure Sockets Layer (SSL)
CSCE 715: Network Systems Security
Visit for more Learning Resources
Originally by Yu Yang and Lilly Wang Modified by T. A. Yang
Cryptography and Network Security
Cryptography and Network Security
SSL (Secure Socket Layer)
The Secure Sockets Layer (SSL) Protocol
Transport Layer Security (TLS)
Cryptography and Network Security
MESSAGE ACCESS AGENT: POP AND IMAP
Presentation transcript:

Tunneling and Securing TCP Services Nathan Green

Outline Concept of Tunneling Tunneling Protocols –SSL –SSH –SOCKS Examples of Useful Tunnels

Introduction Many popular protocols were designed before security became a major issue –FTP –POP –Telnet –HTTP

Vulnerabilities Sniffing – a problem because many protocols (SMTP, POP, HTTP, etc) transmit data in clear text. Connection hijacking – after a successful authentication, an attacker can take over the connection and initiate requests/intercept replies

Vulnerabilities False Authentication – many protocols rely solely on IP or domain names Data Spoofing – attackers can easily manipulate/inject packets (MitM) Implementation/configuration – misconfigured systems can put machines at risk DoS Attacks

Unfortunately, most companies can’t afford to discontinue the use of POP or FTP since many still use them A solution to this problem is tunneling

Tunneling Tunneling is the transmission of data intended for private use through a public network Tunnel: a virtual link between two network nodes Generally accomplished by encapsulating the private data and protocol information within public network packets so the private protocol appears to the public as ordinary data

Low Level Tunneling Protocols Layer 2 –L2F: Layer 2 Forwarding –PPTP: Point-To-Point Tunneling Protocol –L2TP: Layer 2 Tunneling Protocol Layer 3 –IPSec: IP Security Protocol –VTP: Virtual Terminal Protocol –ATMP: Ascend Tunnel Management Protocol

High-Level Tunneling Protocols SSL SSH SOCKS

SSL: Secure Sockets Layer Encrypts communications between Web servers and Web browsers for tunneling over the Internet. SSL alone is nothing but a handshake and encryption. Developed by Netscape for securing HTTP Not clear at what level it is implemented. Transport? Session? Application layer?

SSL: Secure Sockets Layer

SSL Architecture Has two layers of protocols...

SSL Architecture SSL Handshake Protocol –Negotiation of security algorithms and parameters –Key exchange –Server/client authentication SSL Alert Protocol –Error messages SSL Change Cipher Spec Protocol –A single message that indicates the end of the SSL handshake SSL Record Protocol –Fragmentation –Compression –Message authentication –Encryption

SSL Handshake Protocol Establishes a TCP/IP connection Client/server negotiate encryption and MAC algorithms Negotiate cryptographic keys to be used. The client and server agree on the level of security they will use

SSL Handshake Protocol 1)The client sends the server the client's SSL version number, cipher settings, session-specific data, and other information that the server needs to communicate with the client using SSL. 2) The server sends the client the server's SSL version number, cipher settings, session-specific data, and other information that the client needs to communicate with the server over SSL. The server also sends its own certificate. INTERNET

Server Authentication Sample Certificate

5) Both the client and the server use the master secret to generate the session keys, which are symmetric keys used to encrypt and decrypt information exchanged during the SSL session and to verify its integrity (that is, to detect any changes in the data between the time it was sent and the time it is received over the SSL connection). 7) The server sends a message to the client informing it that future messages from the server will be encrypted with the session key. It then sends a separate (encrypted) message indicating that the server portion of the handshake is finished. 6) The client sends a message to the server informing it that future messages from the client will be encrypted with the session key. It then sends a separate (encrypted) message indicating that the client portion of the handshake is finished. SSL Handshake Protocol 3) The client creates the pre-master secret for the session, encrypts it with the server’s public key obtained from the server’s certificate, and sends it to the server Optional: Server requests client authentication: the client also signs another piece of data that is unique to this handshake and known by both the client and server. In this case, the client sends both the signed data and the client's own certificate to the server along with the encrypted pre-master secret. The server then authenticates the client 4) The server uses its private key to decrypt the pre-master secret, and then performs a series of steps (which the client also performs, starting from the same pre-master secret) to generate the master secret. Does this different ways: RSA, Fixed DH, Ephemeral DH, Anonymous DH, Fortezza INTERNET

In the case of server authentication, the client encrypts the pre-master secret with the server's public key. Only the corresponding private key can correctly decrypt the secret, so the client has some assurance that the identity associated with the public key is in fact the server with which the client is connected. Otherwise, the server cannot decrypt the pre-master secret and cannot generate the symmetric keys required for the session, and the session will be terminated. This is the normal operation condition of the secure channel. At any time, due to internal or external stimulus (either automation or user intervention), either side may renegotiate the connection, in which case, the process repeats itself.

Single message that indicates end of handshake SSL Change Cipher Spec Protocol

SSL Alert Protocol Fatal alerts and warnings

SSL Record Protocol Fragment: separated into blocks Compress MAC: Message Authentication Code, a cryptographic checksum Encrypt

SSL Record Protocol Format

Difference Between SSL and TLS Not much –TLS is the IETF protocol standard that grew out of SSL 3.0, documented by RFC 2246 –TLS doesn’t support Fortezza key exchange/encryption –More alert codes in SSL –TLS current version number is 3.1

SSH SSH is a protocol for secure remote login, shell, and file copying other secure network services over an insecure network Replace RSH, RCP, RLOGIN Runs at application layer Uses RSA public key cryptography Data flow directions client->server and server->client are independent, may use different algos (i.e. 3DES+SHA1 and Blowfish+MD5) Currently SSH v2 is the standard

SSH Components The Transport Layer Protocol provides server authentication, confidentiality, and integrity. It may optionally also provide compression. The transport layer will typically be run over a TCP/IP connection. The User Authentication Protocol authenticates the client-side user to the server. It runs over the transport layer protocol. The Connection Protocol multiplexes the encrypted tunnel into several logical channels. It runs over the user authentication protocol. –these logical channels can be used for a wide range of purposes secure interactive shell sessions TCP port forwarding

Difference Between SSL and SSH SSL originally intended for web sessions SSL is a drop-in which other applications run over Server authentication optional SSL alone is just a handshake and encryption SSH originally intended for replacing telnet and FTP SSH is a Swiss-army-knife designed to do many different things Server authentication required SSH alone allows you to do lots of different things

SOCKS A security protocol used to communicate through a firewall or proxy server Defined in RFC 1928

SOCKS When a TCP-based client wishes to establish a connection to an object that is reachable only via a firewall, it must open a TCP connection to the appropriate SOCKS port on the SOCKS server system. The SOCKS service is conventionally located on TCP port If the connection request succeeds, the client enters a negotiation for the authentication method to be used, authenticates with the chosen method, then sends a relay request. The SOCKS server evaluates the request, and either establishes the appropriate connection or denies it.

Example of Useful Tunnels POP3 –Open a secure tunnel using SSH –Needs an accessible shell account on the server –$ ssh -L 110:mail.my.org:110 tunnel.my.org –Set mail client to query ‘localhost’ as the POP3 server IMAP –Same setup, different port number (220) Telnet –$ ssh -L 23:server.my.org:23 tunnel.my.org –$ telnet localhost

Alternatives IPv6 VPN IPSec