Summary:
- If IDS turns off the validation on TCP checksum, packet evasion is possible.
- First, establish the 3 way-handshake.
- Then, fool the IDS by sending a RST packet with bad TCP checksum.
- Then continue sending the EVIL packets.
In a nutshell, TCP timestamps can be included as a TCP option to specify the sending host's timestamp and echo the most recently received timestamp from the other side of the connection. The notion of time or timestamp is not the typical one since it denotes, for most operating systems except OpenBSD, a representation of the uptime of the host since the last reboot.
sysctl -a | grep net.ipv4.tcp_syncookies
net.ipv4.tcp_syncookies = 1