Почему при SYN-сканировании портов отсутствует RST?
По идее, этот RST должна генерировать операционная система сканера в ответ на левый (с её точки зрения) SYN/ACK, о котором она ничего не знает (ибо сканер отсылает самодельный IP пакет через raw сокет, мимо TCP/IP стека операционной системы). Однако на ОС сканера может быть настроен statefull firewall с политикой DROP, или режим blackhole, когда когда попытки соединения на неоткрытые порты или левые пакеты просто отбрасываются.
Потому что так работает nmap. RST не отправляется специально:Эту технику часто называют сканированием с использованием полуотрытых соединений, т.к. вы не открываете полного TCP соединения. Вы посылаете SYN пакет, как если бы вы хотели установить реальное соединение и ждете. Ответы SYN/ACK указывают на то, что порт прослушивается (открыт), а RST (сброс) на то, что не прослушивается. Если после нескольких запросов не приходит никакого ответа, то порт помечается как фильтруемый. Порт также помечается как фильтруемый, если в ответ приходит ICMP сообщение об ошибке недостижимости (тип 3, код 1,2, 3, 9, 10 или 13). 
https://nmap.org/man/ru/man-port-scanning-techniqu...
Если запускать nmap с правами обычного пользователя, у него не будет доступа к сети в обход ОС и тогда сканирование пойдет CONNECT-методом. Это дольше по времени, заметнее на целевой системе и вот тогда RST-пакет отправляется.