I have read the TCP Connection Establishment on Wikipedia
In brief the packets to start are
- SYN, with a (hopefully) random sequence number A from the client.
- SYN-ACK, responding, with A+1 and (hopefully) random sequence number B from the server.
- ACK, responding with B+1.
Theoretically, a client cannot open a connection to a server, without reading the packets. That is where brute force might come in.
My questions are
Is brute force usually necessary? (assuming a modern OS, and an unencrypted connection)
If so, are we talking about a brute force of a
short
(65k possibilities) or anint
(4 billion)?- Is it relevant for SSL/TLS/HTTPS connections?
- Is it relevant for SSH?
I am asking because it has been implied in the answers this question that the IP address can be spoofed with little effort by someone who knows how.