1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-15 10:17:20 +00:00
freebsd/sys
Bill Fenner 764d8cef56 A more complete fix for the "land" attack, removing the "quick fix" from
rev 1.66.  This fix contains both belt and suspenders.

Belt: ignore packets where src == dst and srcport == dstport in TCPS_LISTEN.
 These packets can only legitimately occur when connecting a socket to itself,
 which doesn't go through TCPS_LISTEN (it goes CLOSED->SYN_SENT->SYN_RCVD->
 ESTABLISHED).  This prevents the "standard" "land" attack, although doesn't
 prevent the multi-homed variation.

Suspenders: send a RST in response to a SYN/ACK in SYN_RECEIVED state.
 The only packets we should get in SYN_RECEIVED are
 1. A retransmitted SYN, or
 2. An ack of our SYN/ACK.
 The "land" attack depends on us accepting our own SYN/ACK as an ACK;
 in SYN_RECEIVED state; this should prevent all "land" attacks.

We also move up the sequence number check for the ACK in SYN_RECEIVED.
 This neither helps nor hurts with respect to the "land" attack, but
 puts more of the validation checking in one spot.

PR:             kern/5103
1998-01-21 02:05:59 +00:00
..
alpha Suggested by: bde 1998-01-20 09:09:24 +00:00
amd64 Suggested by: bde 1998-01-20 09:09:24 +00:00
compat sigh....forgot to update the DEBUG printf 1998-01-05 01:17:42 +00:00
compile
conf Sync with sys/i386/conf/files.i386 revision 1.186. 1998-01-18 15:09:34 +00:00
ddb Some fixes from John Hood: 1997-12-05 05:36:58 +00:00
dev - Add binary compatibility support for obsolete console/mouse ioctls 1998-01-20 03:37:27 +00:00
fs - Move SETKLOC and CLEARKLOCK macros into uion.h. 1998-01-20 10:02:54 +00:00
geom There is no ccdread() nor ccdwrite(). 1997-11-18 14:39:04 +00:00
gnu update the AWE32 wave table driver to Iwai's 0.4.2c version. This also 1998-01-08 23:13:22 +00:00
i386 Suggested by: bde 1998-01-20 09:09:24 +00:00
isa - Add binary compatibility support for obsolete console/mouse ioctls 1998-01-20 03:37:27 +00:00
isofs/cd9660 Unspammed nested include of <vm/vm_zone.h>. 1997-12-27 02:56:39 +00:00
kern Set p_retval for the correct process in getpriority(). This fixes 1998-01-19 12:39:00 +00:00
libkern Make our v_usecount vnode reference count work identically to the 1998-01-06 05:26:17 +00:00
miscfs - Move SETKLOC and CLEARKLOCK macros into uion.h. 1998-01-20 10:02:54 +00:00
modules Include <machine/pc/display.h>, not <i386/include/pc/display.h>. This is 1998-01-16 17:58:55 +00:00
msdosfs Unspammed nested include of <vm/vm_zone.h>. 1997-12-27 02:56:39 +00:00
net Add a macro to accurately calculate the length of a struct ifreq when 1998-01-13 02:56:21 +00:00
netatalk Make INET a proper option. 1998-01-08 23:42:31 +00:00
netinet A more complete fix for the "land" attack, removing the "quick fix" from 1998-01-21 02:05:59 +00:00
netipx Make INET a proper option. 1998-01-08 23:42:31 +00:00
netkey Last major round (Unless Bruce thinks of somthing :-) of malloc changes. 1997-10-12 20:26:33 +00:00
netnatm Fixed a sloppy common-style declaration. 1997-12-20 00:13:51 +00:00
netns Make INET a proper option. 1998-01-08 23:42:31 +00:00
nfs Increase the minimum bootp reply packet size from 16 (bogus) to 300 (correct). 1998-01-18 18:46:20 +00:00
nfsclient Increase the minimum bootp reply packet size from 16 (bogus) to 300 (correct). 1998-01-18 18:46:20 +00:00
nfsserver Lots of improvements, including restructring the caching and management 1997-12-29 00:25:11 +00:00
pc98 Sync with sys/i386/isa/syscons.c revision 1.246. 1998-01-20 10:53:26 +00:00
pccard - Support for multiple PD6832 controllers. Each found 6832 is assigned 1998-01-20 21:11:03 +00:00
pci - Support for multiple PD6832 controllers. Each found 6832 is assigned 1998-01-20 21:11:03 +00:00
powerpc/include
rpc Resolve conflicts. 1997-05-28 04:45:15 +00:00
scsi the pt driver should make one DEVFS entry for each one found rather than 1998-01-06 08:28:46 +00:00
sys Moved most of the (source-level) compatibility hacks for the vfsconf 1998-01-20 10:36:42 +00:00
tools Use __inline instead of inline to prevent pedantic compiler warnings. 1997-12-19 23:25:16 +00:00
ufs Tie up some loose ends in vnode/object management. Remove an unneeded 1998-01-17 09:17:02 +00:00
vm Tie up some loose ends in vnode/object management. Remove an unneeded 1998-01-17 09:17:02 +00:00
Makefile Commit a long-forgotten tweak for building tags in /usr/src/sys. 1997-07-13 07:36:20 +00:00