Subject: Re: IP source address security issue
To: Charles M. Hannum <mycroft@ai.mit.edu>
From: Alan Barrett <barrett@daisy.ee.und.ac.za>
List: netbsd-bugs
Date: 01/27/1995 12:11:14
> Unfortunately, this solution flies right in the face of section 1.2 of
> RFC 1323.
As long as the initial sequence numbers increase at a rate between zero
and the appropriate maximum, I don't see why the rate need be constant.
Section 1.2 of RFC 1323 is talking about the maximum rate.
I suggest the following changes:
* in tcp_init() in tcp_subr.c, instead of initialising tcp_iss to 1,
initialise it to a random 32-bit value (or perhaps a 31-bit value
for TCP_COMPAT_42). Note that the danger of re-using old ISNs after
a reboot is independent of the value of the first ISN chosen after
reboot.
* in tcp_slowtimo() in tcp_timer.c, instead of resetting tcp_iss to 0
in the TCP_COMPAT_42 code, just clear the 2**31 bit using 'tcp_iss &=
0x7fffffff'.
* wherever TCP_ISSINCR or TCP_ISSINCR/2 or whatever is used, instead
use a random value between 1 and {TCP_ISSINCR or TCP_ISSINCR/2 or
whatever}.
--apb (Alan Barrett)