Nmap Development mailing list archives

ACK is being sent with a sequence of 0 every time.


From: James Rogers <jamesmrogers () gmail com>
Date: Wed, 13 Jun 2012 15:35:50 -0400

As I was working on the spurious port closed bug I noticed something
strange: we don't set a sequence number in the ACK packets we send.

SENT (0.5123s) TCP 10.0.1.103:46853 > 74.207.254.18:80 A ttl=44
id=49043 iplen=40  >>>>>  seq=0  <<<< win=1024

as you can see the seq=0.

According to what I think I am reading ACK packets are supposed to
have a sequence number set too.   It is a big red flag to always be
sending the same seq number in the same kind of packet.

In "scan_engine.cc" [Modified] line 3372 of 6239

if (pspec->pd.tcp.flags & TH_ACK)
    ack = seq32_encode(USI, tryno, pingseq);
else
    seq = seq32_encode(USI, tryno, pingseq);

So the ack packet will not set a sequence number.   When I tried this:

if (pspec->pd.tcp.flags & TH_ACK)
    ack = seq32_encode(USI, tryno, pingseq);

seq = seq32_encode(USI, tryno, pingseq);

it worked in adding a seq to the ACK segment, but the send to 443 and
to 80 then had the same seq number, which would just be confusing.

Would like input on how to proceed here.  Of if this is even a bug.
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: