NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/43510: kernel reply TCP-RST for bad checksum TCP-SYN packet



>Number:         43510
>Category:       kern
>Synopsis:       kernel reply TCP-RST for bad checksum TCP-SYN packet
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jun 25 10:10:00 +0000 2010
>Originator:     Ryo SHIMIZU
>Release:        NetBSD 5.1_RC3
>Organization:
Internet Initiative Japan Inc.
>Environment:
NetBSD netbsd 5.1_RC3 NetBSD 5.1_RC3 (GENERIC) #0: Sun Jun 13 03:21:24 UTC 2010 
 
builds%b8.netbsd.org@localhost:/home/builds/ab/netbsd-5-1-RC3/i386/201006130031Z-obj/home/builds/ab/netbsd-5-1-RC3/src/sys/arch/i386/compile/GENERIC
 i386
>Description:
kernel reply TCP-RST for bad checksum TCP-SYN packet to *non-listened* port.
Any bad checksum TCP packet must be always discarded. (RFC1122)

Bad checksum TCP-SYN packet for *listend-port* will be normally discarded.


send TCP-SYN packet to no-listend port(23456) on netbsd

        # /usr/pkg/sbin/hping2    -c 1 -S -p 23456 netbsd
        HPING netbsd (wm0 192.168.0.66): S set, 40 headers + 0 data bytes
        len=46 ip=192.168.0.66 ttl=64 id=0 sport=23456 flags=RA seq=0 win=0 
rtt=0.4 ms
        
        --- netbsd hping statistic ---
        1 packets tramitted, 1 packets received, 0% packet loss
        round-trip min/avg/max = 0.4/0.4/0.4 ms

send *BAD CHECKSUM* TCP-SYN packet to no-listend port(23456) on netbsd

        # /usr/pkg/sbin/hping2 -b -c 1 -S -p 23456 netbsd
        HPING netbsd (wm0 192.168.0.66): S set, 40 headers + 0 data bytes
        len=46 ip=192.168.0.66 ttl=64 id=0 sport=23456 flags=RA seq=0 win=0 
rtt=0.6 ms
        
        --- netbsd hping statistic ---
        1 packets tramitted, 1 packets received, 0% packet loss
        round-trip min/avg/max = 0.6/0.6/0.6 ms



Other OS discard bad checksum TCP-SYN packet.

        # /usr/pkg/sbin/hping2    -c 1 -S -p 23456 freebsd
        HPING freebsd (wm0 192.168.0.61): S set, 40 headers + 0 data bytes
        len=46 ip=192.168.0.61 ttl=64 DF id=20851 sport=23456 flags=RA seq=0 
win=0 rtt=0.6 ms
        
        --- freebsd hping statistic ---
        1 packets tramitted, 1 packets received, 0% packet loss
        round-trip min/avg/max = 0.6/0.6/0.6 ms

        # /usr/pkg/sbin/hping2 -b -c 1 -S -p 23456 freebsd
        HPING freebsd (wm0 192.168.0.61): S set, 40 headers + 0 data bytes
        
        --- freebsd hping statistic ---
        1 packets tramitted, 0 packets received, 100% packet loss
        round-trip min/avg/max = 0.0/0.0/0.0 ms



        # /usr/pkg/sbin/hping2 -c 1 -S -p 23456 windows
        HPING windows (wm0 192.168.0.44): S set, 40 headers + 0 data bytes
        len=46 ip=192.168.0.44 ttl=128 id=21611 sport=23456 flags=RA seq=0 
win=0 rtt=0.6 ms
        
        --- windows hping statistic ---
        1 packets tramitted, 1 packets received, 0% packet loss
        round-trip min/avg/max = 0.6/0.6/0.6 ms

        # /usr/pkg/sbin/hping2 -b -c 1 -S -p 23456 windows
        HPING windows (wm0 192.168.0.44): S set, 40 headers + 0 data bytes
        
        --- windows hping statistic ---
        1 packets tramitted, 0 packets received, 100% packet loss
        round-trip min/avg/max = 0.0/0.0/0.0 ms
>How-To-Repeat:
# /usr/pkg/sbin/hping2 -b -c 1 -S -p 23456 netbsd
>Fix:



Home | Main Index | Thread Index | Old Index