Думаю, я понял из вашего предыдущего объяснения.
ctstate=NEW для отказа в установлении новых кривых соединений, INVALID - для отказа в подмене адреса во время сессии.
Если я ошибаюсь, поправьте меня:
Если от атакуемого хоста к нам придет первый пакет подтверждения установления несуществующего соединения (SYN/ACK), то conntrack установит для него состояние NEW. Но т.к. от нас не было инициировано соединения с атакуемым хостом (SYN), то через какое-то время статус должен смениться на INVALID, т.е. пакет ассоциированный с несуществующим соединением.
На все такие пакеты мы должны ответить RST пакетом (-j REJECT --reject-with tcp-reset) и попытку атаки от нашего имени можно предотвратить.
У меня только вопрос, ESTABLISHED|RELATED сработает до или после INVALID?
Если я правильно понял вопрос, то
iptables -A -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A -i lo -j ACCEPT
iptables -A -p tcp --tcp-flags SYN,ACK SYN,ACK -m conntrack --ctstate NEW,INVALID -j REJECT --reject-with tcp-reset # защита от спуфинга
iptables -A -p tcp ! --syn -m conntrack --ctstate NEW -j DROP # защита NEW not SYN