SOCKS Group: Challenger Member: Lichun Zhan. Agenda Introduction SOCKS v4 SOCKS v5 Summary Conclusion References Questions.

Slides:



Advertisements
Similar presentations
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Advertisements

Chapter 17 Networking Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
CCNA – Network Fundamentals
STUN Date: Speaker: Hui-Hsiung Chung 1.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
Chapter 7 – Transport Layer Protocols
Firewalls and Intrusion Detection Systems
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.
UDP - User Datagram Protocol UDP – User Datagram Protocol Author : Nir Shafrir Reference The TCP/IP Guide - ( Version Version.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
Networking Theory (part 2). Internet Architecture The Internet is a worldwide collection of smaller networks that share a common suite of communication.
Understanding Networks. Objectives Compare client and network operating systems Learn about local area network technologies, including Ethernet, Token.
Introduction To Networking
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and Protocols Socket Programming Instructor: Dr. Mohamed Hefeeda.
Circuit & Application Level Gateways CS-431 Dick Steflik.
FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. 6 Packet Filtering By Whitman, Mattord, & Austin© 2008 Course Technology.
I NTRODUCTION OF S OCKET P ROGRAMMING L.Aseel AlTurki King Saud University.
Gursharan Singh Tatla Transport Layer 16-May
Chapter Overview TCP/IP Protocols IP Addressing.
FIREWALL TECHNOLOGIES Tahani al jehani. Firewall benefits  A firewall functions as a choke point – all traffic in and out must pass through this single.
Host Identity Protocol
Port Knocking Software Project Presentation Paper Study – Part 1 Group member: Liew Jiun Hau ( ) Lee Shirly ( ) Ong Ivy ( )
Packet Filtering. 2 Objectives Describe packets and packet filtering Explain the approaches to packet filtering Recommend specific filtering rules.
8: Network Security8-1 Security in the layers. 8: Network Security8-2 Secure sockets layer (SSL) r Transport layer security to any TCP- based app using.
CHAPTER 2 PCs on the Internet Suraya Alias. The TCP/IP Suite of Protocols Internet applications – client/server applications The client requested data.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Networking Basics TCP/IP TRANSPORT and APPLICATION LAYER Version 3.0 Cisco Regional Networking Academy.
Chapter 6: Packet Filtering
1 NAT Network Address Translation Motivation for NAT To solve the insufficient problem of IP addresses IPv6 –All software and hardware need to be updated.
Chapter 13 – Network Security
1 Chapter Overview TCP/IP DoD model. 2 Network Layer Protocols Responsible for end-to-end communications on an internetwork Contrast with data-link layer.
Jaringan Komputer Dasar OSI Transport Layer Aurelio Rahmadian.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
Transport Layer Layer #4 (OSI-RM). Transport Layer Main function of OSI Transport layer: Accept data from the Application layer and prepare it for addressing.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 26.
Packet Filtering Chapter 4. Learning Objectives Understand packets and packet filtering Understand approaches to packet filtering Set specific filtering.
11 TRANSPORT LAYER PROTOCOLS Chapter 6 TCP and UDP SPX and NCP.
TCP/IP Protocols Contains Five Layers
SOCKS (SOCKet Secure) Presentation by: Group KangKong
1 Networking Chapter Distributed Capabilities Communications architectures –Software that supports a group of networked computers Network operating.
1 Chapter Overview Password Protection Security Models Firewalls Security Protocols.
1 Chapter 8 – TCP/IP Fundamentals TCP/IP Protocols IP Addressing.
Security, NATs and Firewalls Ingate Systems. Basics of SIP Security.
Prepared by: Azara Prakash L.. Contents:-  Data Transmission  Introduction  Socket Description  Data Flow Diagram  Module Design Specification.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
IP addresses IPv4 and IPv6. IP addresses (IP=Internet Protocol) Each computer connected to the Internet must have a unique IP address.
SOCKS By BITSnBYTES (Bhargavi, Maya, Priya, Rajini and Shruti)
Socket Programming.
Chapter 8 Network Security Thanks and enjoy! JFK/KWR All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking:
Lecture 6 Networked Systems Network Operating Systems Introduction to Sockets HTTP – FTP – TCP - UDP Client-Server Model.
Lesson 2a © 2005 Cisco Systems, Inc. All rights reserved. SNPA v4.0—2-1 Firewall Technologies and the Cisco Security Appliance.
1 An Introduction to Internet Firewalls Dr. Rocky K. C. Chang 12 April 2007.
TOOLS FOR PROXYING. Tools for Proxying Many available applications provide proxy capabilities. The major commercial vendors have embraced hybrid technologies.
Data Communications and Networks Chapter 6 – IP, UDP and TCP ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
1 Network Communications A Brief Introduction. 2 Network Communications.
Securing Access to Data Using IPsec Josh Jones Cosc352.
Communication Networks NETW 501 Tutorial 2
Team: Unison Richard Bhuleskar Atul Patil Vinit Mahedia Virendra Kucherriya Vasanthnag Vasili.
SOCKET PROGRAMMING Presented By : Divya Sharma.
Chapter 5 Network and Transport Layers
The Transport Layer Implementation Services Functions Protocols
Understand Networking Services
* Essential Network Security Book Slides.
Networking Theory (part 2)
CS4470 Computer Networking Protocols
Introduction to Network Security
Networking Theory (part 2)
Presentation transcript:

SOCKS Group: Challenger Member: Lichun Zhan

Agenda Introduction SOCKS v4 SOCKS v5 Summary Conclusion References Questions

Introduction SOCKS was originally developed by David and Michelle Koblas. It is modified and extended by Ying-Da Lee -- SOCKS v4. SOCKS v5 is defined in RFC 1928 by IETF.

Introduction – What is SOCKS SOCKS is a generic, proxy protocol for TCP/IP based networking application. It provides a flexible framework for developing secure communications by easily integrating other security technologies. SOCKS consists of two parts: SOCKS server and SOCKS client.

Introduction – SOCKS Server and Client SOCKS server is a program that is run on a host that can communicate directly with both the Internet and the internal computers on the network. SOCKS client is a specially modified Internet client programs that contacts the SOCKS server instead of sending requests directly to the Internet. According to the OSI model, the SOCKS server is implemented at the application layer.The SOCKS client is implemented between the application and transport layers.

Application Transport Physical Application Transport Physical Application Transport Physical ClientSOCKSServer Place In OSI Layer

Introduction – How does it work? The client connects to a SOCKS proxy server. The proxy server connects to the application server on behalf of the client. The proxy server relays data between the client and the application server. For the application server, the proxy server is the client.

Introduction – Connection Setup User SOCKS Proxy Server SOCKS Connection Setup TCP Connect and SOCKS Request SOCKS Reply TCP Connect (SYN) TCP Connect ACK

Introduction – Data Relay User SOCKS Proxy Server SOCKS Data Relay Phase Packet

SOCKS V4 – Three functions CONNECT:makes connection requests. BIND: sets up proxy circuits Relays application data

V4 – CONNECT request & reply Request (from client to SOCKS server): | VN | CD | DSTPORT | DSTIP | USERID |NULL| # of bytes: variable 1 (if granted, SOCKS server makes connection to the destination server.) Reply( from SOCKS server to client) : | VN | CD | DSTPORT | DSTIP | # of bytes: (SOCKS server closes the connection if reject, or ready relay data on both directions)

V4 – BIND request & reply Request(from client to let SOCKS server prepare inbound connection): | VN | CD | DSTPORT | DSTIP | USERID |NULL | # of bytes: variable 1 Reply(from SOCKS server to client): | VN | CD | DSTPORT | DSTIP | # of bytes: bind(), getsockname(), listen(), send IP and port to app., accept().

V4 Extension It eliminates the requirement for SOCKSv4 clients to resolve internal and external domain names. Appending the unresolved domain names to the SOCKSv4 client requests, SOCKSv4 servers can attempt to resolve domain names | VN | CD | DSTPORT| DSTIP x | USERID |NULL| HOSTNAME |NULL| # of bytes: variable 1 variable 1

V4 – How it is plugged in (UNIX) The SOCKS client replace calls to the socket functions such as connect (), getsocketname (), bind (), accept (), listen () and select () - with its own versions of these functions. Makefile of the program used to compile the network client program is modified. The resulting program is linked to the SOCKS library. The SOCKS library intercepts the connection attempt and opens up a connection to the SOCKS server.

V4 Weakness Lack of strong authentication. The requirement to recompile applications with SOCKSv4 client library.

SOCKS v5 (rfc 1928) – New Functions Authentication Encompass domain name and IPv6 address. Support UDP-based applications

V5 - Authentication Method Negotiation 1 The application client declares to the SOCKSv5 server the authentication methods it can support The SOCKSv5 server sends a message to the client announcing the method the client should use The SOCKSv5 server determines the authentication method based on the security policy defined in the SOCKSv5 server's configuration. If the client's declared methods fail to meet the security requirement, the SOCKSv5 server drops communication

V5 - Authentication Method Negotiation | VER | NMETHODS | METHODS | |VER | METHOD| | 1 | 1 | 1 to 255 | | 1 | 1 | The values currently defined for METHOD are: X'00' NO AUTHENTICATION REQUIRED X'01' GSSAPI · X'02' USERNAME/PASSWORD · X'03' CHAP · X'04' to X'7F' IANA ASSIGNED · X'80' to X'FE' RESERVED FOR PRIVATE METHODS · X'FF' NO ACCEPTABLE METHODS

Username/Password Authentication for SOCKS v5. Defined in RFC 1929 Consists of two simple messages From the client to the SOCKS server stating the username and password to use From the server to the client, stating whether the authentication succeeded or not.

GSS-API Authentication Method for SOCKS v5 Defined in RFC GSS-API: generic security service API. Establishing a GSS-API security context to encapsulates negotiation protocol for mechanism selection and the agreement of security service options. GSS-API per-message protection calls encapsulate TCP/UDP traffic between client and server.

V5 –Domain Name and IPv6 Address. Request & Reply: | VER | REP | RSV | ATYP | BND. ADDR | BND.PORT| | 1 | 1 |x ’ 00 ’ | 1 | variable | 2 | The values currently defined for ATYP are: X'01' IP v4 address X'03' DOMAINNAME X'04' IP v6 address

V5 – Support UDP Association UDP association creates a virtual proxy circuit for traversing UDP-based application data. The proxy circuit for UDP is a pair of addresses from the communication endpoints that send and receive datagrams UDP headers encapsulate application data including the destination address of a datagram. UDP request header: | RSV | FRAG | ATYP | DST.ADDR | DST.PORT | DATA | | 2 | 1 | 1 | Variable | 2 | Variable |

Control Flow of SOCKS (v4 & v5)

Summary 1 A single communication protocol authenticates users and establishes the communication channel transfers user information from the SOCKS client to the SOCKS server for user authentication authenticates the user and the channel guarantees the integrity of TCP and UDP channels

Summary 2 Application-Independent Proxy It establishes communication channels, and manages and protects the channel for any application. Can protect new applications without requiring additional development.

Summary 3 Flexible protection through a variety of access control policies SOCKS delivers TCP and UDP connections through a proxy mechanism at the TCP/UDP layer, therefore it works with any application, and virtually all IP layer technologies, such as firewalls, NAT, and private IP. SOCKS adds the flexibility to manage the network through access control policies based on user, application, and time, in addition to source and destination addresses.

Summary 4 Bi-directional proxy support SOCKS identifies communication targets through domain names, overcoming the private IP address restrictions. SOCKS can also use domain names to establish communication between separate LANs with redundant IP addresses.

Conclusion – SOCKS is widely used… As a network firewall As a generic application proxy In virtual private networks(VPN). For extranet applications.

References txt 04.txt sp sp

Thank You ! Questions?