Nytro Posted February 18, 2013 Report Posted February 18, 2013 SECURITY ASSESSMENT OF THETRANSMISSION CONTROL PROTOCOL (TCP)Contents1. Preface.................................................................................................. 51.1. Introduction ..................................................................................................................................... 51.2. Scope of this document .................................................................................................................. 61.3. Organisation of this document........................................................................................................ 71.4. Typographical conventions............................................................................................................. 71.5 Acknowledgements ......................................................................................................................... 71.6. Advice and guidance to vendors .................................................................................................... 82. The Transmission Control Protocol................................................... 93. TCP header fields .............................................................................. 103.1. Source Port................................................................................................................................... 103.2. Destination port............................................................................................................................. 183.3. Sequence number ........................................................................................................................ 193.4. Acknowledgement number........................................................................................................... 203.5. Data Offset.................................................................................................................................... 213.6. Control bits.................................................................................................................................... 213.7. Window ......................................................................................................................................... 253.8. Checksum..................................................................................................................................... 263.9. Urgent pointer............................................................................................................................... 273.10. Options ....................................................................................................................................... 313.11. Padding....................................................................................................................................... 333.12. Data ............................................................................................................................................ 334. Common TCP options....................................................................... 344.1. End of Option List (Kind = 0) ........................................................................................................ 344.2. No Operation (Kind = 1)................................................................................................................ 344.3. Maximum Segment Size (Kind = 2).............................................................................................. 344.4. Selective Acknowledgement option.............................................................................................. 364.5. MD5 option (Kind=19)................................................................................................................... 384.6. Window scale option (Kind = 3).................................................................................................... 394.7. Timestamps option (Kind = 8) ...................................................................................................... 405. Connection-establishment mechanism........................................... 435.1. SYN flood...................................................................................................................................... 435.2. Connection forgery ....................................................................................................................... 465.3. Connection-flooding attack ........................................................................................................... 475.4. Firewall-bypassing techniques ..................................................................................................... 4936. Connection-termination mechanism ............................................... 506.1. FIN-WAIT-2 flooding attack .......................................................................................................... 507. Buffer management........................................................................... 537.1. TCP retransmission buffer............................................................................................................ 537.2. TCP segment reassembly buffer .................................................................................................. 567.3. Automatic buffer tuning mechanisms ........................................................................................... 588. TCP segment reassembly algorithm ............................................... 628.1. Problems that arise from ambiguity in the reassembly process................................................... 629. TCP congestion control .................................................................... 639.1. Congestion control with misbehaving receivers ........................................................................... 649.2. Blind DupACK triggering attacks against TCP ............................................................................. 669.3. TCP Explicit Congestion Notification (ECN)................................................................................. 7910. TCP API ............................................................................................ 8210.1 Passive opens and binding sockets ............................................................................................ 8210.2. Active opens and binding sockets .............................................................................................. 8311. Blind in-window attacks.................................................................. 8411.1. Blind TCP-based connection-reset attacks ................................................................................ 8411.2. Blind data-injection attacks......................................................................................................... 9012. Information leaking ......................................................................... 9112.1. Remote Operating System detection via TCP/IP stack fingerprinting........................................ 9112.2. System uptime detection ............................................................................................................ 9413. Covert channels............................................................................... 9514. TCP port scanning........................................................................... 9614.1. Traditional connect() scan .......................................................................................................... 9614.2. SYN scan.................................................................................................................................... 9614.3. FIN, NULL, and XMAS scans..................................................................................................... 9714.4. Maimon scan .............................................................................................................................. 9814.5. Window scan .............................................................................................................................. 9814.6. ACK scan.................................................................................................................................... 98415. Processing of ICMP error messages by TCP.............................. 10015.1. Internet Control Message Protocol........................................................................................... 10015.2. Handling of ICMP error messages ........................................................................................... 10115.3 Constraints in the possible solutions ......................................................................................... 10215.4. General countermeasures against ICMP attacks..................................................................... 10315.5. Blind connection-reset attack ................................................................................................... 10415.6. Blind throughput-reduction attack............................................................................................. 10715.7. Blind performance-degrading attack ........................................................................................ 10816. TCP interaction with the Internet Protocol (IP) ........................... 12016.1. TCP-based traceroute .............................................................................................................. 12016.2. Blind TCP data injection through fragmented IP traffic ............................................................ 12016.3. Broadcast and multicast IP addresses ..................................................................................... 12117. References ..................................................................................... 122Download:http://www.si6networks.com/publications/tn-03-09-security-assessment-TCP.pdf Quote