pfsense:suricata:alerts:suricata_stream_3way_handshake_synack_with_wrong_ack
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
pfsense:suricata:alerts:suricata_stream_3way_handshake_synack_with_wrong_ack [2020/03/01 18:05] – removed peter | pfsense:suricata:alerts:suricata_stream_3way_handshake_synack_with_wrong_ack [2021/01/15 00:59] (current) – created peter | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== PFSense - Suricata - Alerts - SURICATA STREAM 3way handshake SYNACK with wrong ack ====== | ||
+ | |||
+ | The best solution is to disable that rule. | ||
+ | |||
+ | ---- | ||
+ | |||
+ | When processing the TCP 3 way handshake (3whs), Suricata’s TCP stream engine will closely follow the setup of a TCP connection to make sure the rest of the session can be tracked and reassembled properly. | ||
+ | |||
+ | Re-transmissions of SYN/ACKs are silently accepted, unless they are different somehow. | ||
+ | |||
+ | In some cases where not the initial SYN/ACK was used by the client, but instead a later one. Suricata however, had accepted the initial SYN/ | ||
+ | |||
+ | If people have the stream events enabled _and_ pay attention to them, a noisy session like this should certainly get their attention. | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== Analysis ===== | ||
+ | |||
+ | In this case the curious thing is that the extra SYN/ACK(s) have different properties: the sequence number is different. | ||
+ | |||
+ | Whats happening on the wire: | ||
+ | |||
+ | TCP SSN 1: | ||
+ | |||
+ | < | ||
+ | -> SYN: SEQ 10 | ||
+ | <- SYN/ACK 1: ACK 11, SEQ 100 | ||
+ | <- SYN/ACK 2: ACK 11, SEQ 1000 | ||
+ | -> ACK: SEQ 11, ACK 101 | ||
+ | </ | ||
+ | |||
+ | TCP SSN 2: | ||
+ | |||
+ | < | ||
+ | -> SYN: SEQ 10 | ||
+ | <- SYN/ACK 1: ACK 11, SEQ 100 | ||
+ | <- SYN/ACK 2: ACK 11, SEQ 1000 | ||
+ | -> ACK: SEQ 11, ACK 1001 | ||
+ | </ | ||
+ | |||
+ | It’s clear that in SSN 1 the client ACKs the first SYN/ACK while in SSN 2 the 2nd SYN/ACK is ACK’d. | ||
pfsense/suricata/alerts/suricata_stream_3way_handshake_synack_with_wrong_ack.1583085919.txt.gz · Last modified: 2020/07/15 09:30 (external edit)