CITS3002 Computer Networks  
prev
next CITS3002 help3002 CITS3002 schedule  

TCP/IP Sequence Number Attacks

We'll consider a representative problem with TCP/IP by examining how TCP/IP establishes sessions between endpoints.

A three-way handshake is employed in the TCP open sequence.

If machine A wishes to establish a connection with machine B, A transmits the following message:

  A->B : SYN, ISNa           

This initial packet request has the synchronize sequence number bit (SSN) set in its header, and an initial 32-bit unsigned sequence number ISNa.

B replies with:

  B->A : SYN, ISNb, ACK(ISNa)

to provide its own initial sequence number, ISNb, and to acknowledge ISNa.

A will finally acknowledge ISNb with

  A->B : ACK(ISNb)           

and the connection is established.

This session establishment is considered secure, provided that the initial sequence numbers are so random that they cannot be guessed. If strictly conforming to RFC-793, each TCP/IP implementation is expected to employ its sequence number as a 32-bit counter, modified every 4usec.


CITS3002 Computer Networks, Lecture 11, Security of TCP/IP, p9, 15th May 2024.