Security Assessment of the Transmission Control Protocol (TCP) (draft-ietf-tcpm-tcp-security-02.txt) Fernando Gont project carried out on behalf of UK.

Slides:



Advertisements
Similar presentations
73rd IETF meeting, November 16-21, 2008
Advertisements

Security Assessment of the Internet Protocol version 4 (IPv4) draft-ietf-opsec-ip-security Fernando Gont project carried out on behalf of UK CPNI 76th.
TCP/IP Christopher Zacky. lolwut Decimal Numbers.
CISCO NETWORKING ACADEMY Chabot College ELEC Transport Layer (4)
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
On the implementation of TCP urgent data (draft-gont-tcpm-urgent-data) Fernando Gont & A. Yourtchenko 73rd IETF meeting, November 16-21, 2008 Minneapolis,
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
CS 471/571 Transport Layer 5 Slides from Kurose and Ross.
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
Configuring a Router with RIP Basic Configuration and Show Commands.
1 Reading Log Files. 2 Segment Format
Networks I Transmission Control Protocol Instituto Tecnológico y de Estudios Superiores de Monterrey Campus Estado de México Prof. MSc. Ivan A. Escobar.
TCP: Transmission Control Protocol Overview Connection set-up and termination Interactive Bulk transfer Timers Improvements.
Instructor: Sam Nanavaty TCP/IP protocol. Instructor: Sam Nanavaty Version – Allows for the evolution of the protocol IHL (Internet header length) – Length.
Transmission Control Protocol (TCP) Basics
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
5/6/2015© 2010 Raymond P. Jefferis IIILect Transport Layer.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Chapter 7 – Transport Layer Protocols
TRANSPORT LAYER  Session multiplexing  Segmentation  Flow control (TCP)  Connection-oriented (TCP)  Reliability (TCP)
1 Transport Control Protocol. 2 Header Identifies the port number of a source application program. Used by the receiver to reply. (16-bit). Identifies.
CSCI-1680 Transport Layer I Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
Mitigating Teredo Routing Loop Attacks (draft-gont-6man-teredo-loops-00 ) Fernando Gont on behalf of UK CPNI IETF 79 November 7-12, Beijing, China.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Module A.  This is a module that some teachers will cover while others will not  This module is a refresher on networking concepts, which are important.
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
Lecture 23: Network Primer 7/15/2003 CSCE 590 Summer 2003.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Ongoing work at the IETF on TCP and IP security Fernando Gont project carried out on behalf of UK CPNI HACK.LU 09 Conference October 28-30, Luxembourg.
Gursharan Singh Tatla Transport Layer 16-May
Module A Panko and Panko Business Data Networks and Security, 9 th Edition © 2013 Pearson.
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.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transmission Control Protocol
More on TCP Acknowledgements Sequence Number Field Initial Sequence Number Acknowledgement Number Field.
Chapter 12 Transmission Control Protocol (TCP)
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
1 Requirements for Internet Routers (Gateways) and Hosts Relates to Lab 3. (Supplement) Covers the compliance requirements of Internet routers and hosts.
Slide #1 CIT 380: Securing Computer Systems TCP/IP.
1 CSE 5346 Spring Network Simulator Project.
NUS.SOC.CS2105 Ooi Wei Tsang Application Transport Network Link Physical you are still here.
UDP : User Datagram Protocol 백 일 우
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
1 Transmission Control Protocol (TCP) RFC: Introduction The TCP is intended to provide a reliable process-to-process communication service in a.
COMP2322 Lab 6 TCP Steven Lee April 1, TCP Transmission Control Protocol Transport layer protocol User Datagram Protocol (UDP) is another one 2.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
Port Scanning James Tate II
Introduction to TCP/IP networking
5. End-to-end protocols (part 1)
Chapter 17 and 18: TCP is connection oriented
Transport Layer.
TCP/IP Internetworking
Process-to-Process Delivery
© 2003, Cisco Systems, Inc. All rights reserved.
TCP/IP Internetworking
draft-bagnulo-tcpm-generalized-ecn-00 M. Bagnulo & B. Briscoe IETF97
CSCI-1680 Transport Layer I
TCP for DNS security considerations
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
November 7-12, Beijing,China.
Network Architecture Models: Layered Communications
Transport Layer 9/22/2019.
TCP Connection Management
Presentation transcript:

Security Assessment of the Transmission Control Protocol (TCP) (draft-ietf-tcpm-tcp-security-02.txt) Fernando Gont project carried out on behalf of UK CPNI 80th IETF meeting, Prague, Czech Republic March 27-April 1, 2011

Working Process At the Anaheim IETF, a process was agreed upon to evaluate the recommendations in this document. The process aims to categorize each recommendation as:  Implementation issues  Operational issues  Wiggle room in the specification  Bug in the document  Bug in the specification For each category, there is a clear way forward The process can be summarized with a set of questions.

Process flow “chart” Do we agree X is correct?  No: Bug in the document – remove.  Yes: CONTINUE Implementation issue?  Yes: Document (as updated to RFC 2525)  No: CONTINUE Operational (config) issue?  Yes: Is this a good default? Yes: Recommend default config No: Discuss as config option  No: CONTINUE

Process flow “chart” (cont.) Wiggle room in the specification?  Yes: Discuss as valid exception between MAY/SHOULD  No: Does this warrant adding wiggle room? Yes: Downgrade MUST to SHOULD No: CONTINUE Change the spec

Current version of the document TCPM began to review some recommendations on the mailing list and in Anaheim, but had difficulty since recommendations weren't clearly identified from rationale As agreed in Beijing IETF, version -02 is organized in RFC1122-style: recommendations are now more easily identified Much text was replaced with references to existing RFCs (more to come in this area) Reviews are highly needed (a few people have signed up, already)

Summary of recommendations Section# Recs 10. TCP API4 11. Blind In-window attacks Information Leaking5 13. Covert Channels0 14. TCP Port scanning3 15. TCP processing of ICMP TCP and IP Interaction 1 Section# Recs 3. Header Fields23 4. TCP Options18 5. Connection Establishment 8 6. Connection Termination 1 7. Buffer Management3 8. Segment Reassembly1 9. Congestion Control7

Technical Discussion

Acknowledgement number check The Acknowledgement Number was required to be:  SEG.ACK <= SND.NXT RFC 5961 [Ramaiah et al, 2010] proposed a stricter check:  SND.UNA - SND.MAX.WND <= SEG.ACK <= SND.NXT  If a segment does not pass this check, it should be dropped. Specification issue:  TCP MUST check that, on segments that have the ACK bit set, the Acknowledgment Number satisfies the expression: SND.UNA - SND.MAX.WND <= SEG.ACK <= SND.NXT  If a TCP segment does not pass this check, the segment MUST be dropped, and an ACK segment SHOULD be sent in response.

Acknowledgement number Some stacks fail to set the Acknowledgement Number to zero when the ACK bit is not set (e.g., SYN segments or RST segments) This may produce an information leakege Implementation issue:  TCP SHOULD set the Acknowledgement Number to zero when sending a TCP segment that does not have the ACK bit set (i.e., a SYN segment).

Urgent Pointer Basic Principle:  TCP MUST check that: Segment.Size - Data Offset * 4 > 0  If a TCP segment with the URG bit set does not pass this check, it MUST be silently dropped. Implemetation issue:  For TCP segments that have the URG bit set to zero, sending the TCP SHOULD set the Urgent Pointer to zero. Basic Principle:  A receiving TCP MUST ignore the Urgent Pointer field of TCP segments for which the URG bit is zero.