> Его привёл как пример того, как ICMP может включаться при TCP/IP
> взаимодествиях.ICMP может включаться при сетевых взаимодействиях. Но как раз из-за всяких удодов которые думают что удавить его это круто - на него всерьез давно уже никто не рассчитывает.
> формировать корректные заголовки, что в некоторых техниках
> определения удалённой ОС, заведомо не производится.
Ключевое слово - в НЕКОТОРЫХ. Плох тот сканер который эксклюзивно закладывается на протокол который в 50% случаев элементарно не работает.
> ну так, чтоб при некорректном значении поля protocol в IP заголовке, icmp_send
> не срабатывал?
"Как мне сломать логику сетевых протоколов?". Пойти в дворники и не портить сети, запуская свои кривые лапки в протоколы без понимания нафига они вот такие, бэть. Кулсисопам не приходило в голову что если пакеты отсылаются - на это были некие причины? Для красоты пакеты никто не рассылает.
А что до маскировки - вы или уж в случае TCP как-то отвечаете на SYN пакет и тогда легитимный клиент может конектиться дальше. Но тогда и сканер увидит порт. Или уж дропаете SYN пакеты, молча в тряпочку, но тогда и легитимные клиенты ткнувшись в это увидят глухой таймаут. Возможны варианты типа сабжа, но они катят только для непубличных сервисов. А детектирование операционки можно делать по туевой хуче критериев. А хоть тем же параметрам TCP/IP типа sequence numbers и прочим интимным особенностям.