Сканирование портов - 10 Сентября 2010 - WIKI сайт про всё, что можно подумать
E-mail:
Пароль:

Wiki сайт: Всё про всё

Меню сайта
Главная » 2010 » Сентябрь » 10 » Сканирование портов
12:06 PM
Сканирование портов

                                                             

Иногда у вас может возникнуть потребность узнать какие сервисы предоставляет определенный хост. Для этого существует ряд различных программ сканирования портов. Простейший вариант - это программы типа SATAN (Security Analysis Tool for Auditing Networks), которые устанавливают соединение с каждым TCP-портом, открывая полное TCP-соединение. Преимущества этого метода заключаются в том, что пользователю, занимающемуся сканированием, не нужно самому составлять ip-пакет, который будет использован для сканирования, потому что он использует стандартные системные вызовы, и ему не нужен доступ администратора ( обычно нужен, чтобы использовать SOCK RAW или открывать /dev/bpf, /dev/nit и т.д.). Недостатком этого метода заключается в том, что его легче обнаружит ь, причем несколькими способами, в частности TCP Wrapper'ами by Wietse Venema.Для устранения этого недостатка были придуманы методы сканирования без установления полного TCP-соединения, т.н. 'полуоткрытое сканирование'. 

 

Процесс установки TCP-соединения состоит из трех фаз: сторона, устанавливающая соединение, сначала посылает TCP-пакет с установленным флагом SYN, после чего принимающая сторона посылает TCP-пакет с установленными флагами SYN и ACK в случае, если порт открыт, или сбрасывает соединение с флагом RST если порт не активен. Третья фаза происходит когда сторона, устанавливающая соединение, посылает финальный TCP-пакет с установленным флагом ACK ( само собой все эти пакеты имеют соответствующие sequence- и ack-номера, и т.д. ). Теперь соединение установлено. 


Сканирования с SYN-флагом. SYN-сканер посылает только первый пакет из трех и ждет SYN|ACK или RST. Когда он получит либо то, либо другое, он будет знать, активен этот порт или нет. Основное преимущество этого метода заключается в том,что он не обнаруживается программами типа "SATAN" или TCP Wrappers by Wietse Venema. Основные недостатки этого метода: Этот метод обнаруживается некоторыми программами,которые проверяют попытки коннекта с SYN-флагом ( например tcplog ), а также он обнаруживается netstat(1)'ом. Сторона,устанавливающая соединение, обычно должна составлять весь IP-пакет. Для этого необходимо иметь доступ к SOCK_RAW ( в большинстве операционок: getprotbyname('raw') ) или /dev/bpf (Berkeley Packet Filter), /dev/nit (Sun 'Network Interface Tap') и т.д. Для этого необходимо, как правило, иметь уровень администратора. 
Stealth-сканирование. Этот метод основан на некорректном сетевом коде в BSD. Учитывая то,что в большинстве операционных систем используется BSD'шный сетевой код или производный от него,этот способ работает на большинстве систем ( наиболее очевидное исключение - маршрутиризаторы Cisco ). Этот метод трудно обнаружить. Даже зная сам метод, разработка обнаруживающего алгоритма весьма проблематична без устранения самой ошибки. Недостатки этого способа: Этот метод основан на ошибках в сетевом коде. Это значит, что возможно, а точнее скорее всего, эти ошибки будут исправлены. Например в OpenBSD это уже исправлено. Нельзя поручиться, что этот способ будет нормально работать в конкретной обстановке. Результаты могут быть разными в зависимости от платформы и операционной системы, т.е. э тот способ не вполне надежен. Используются TCP пакеты с установленными ACK и FIN флагами. Их надо использовать,потому что,если такой пакет послать в порт при неоткрытом соединении,всегда возвратится пакет с флагом RST. 

 

Существуют несколько методов, использующих этот принцип: метод #1: Послать FIN-пакет. Если принимающий хост возвращает RST, значит порт неактивен,если RST не возвращается, значит порт активен. Учитывая тот факт, что этот метод работает на таком количестве хостов, это - грустное свидетельство тому, какой некорректный сетевой код в большинстве операционных систем. метод #2: Послать ACK-пакет. Если TTL возвращаемых пакетов меньше, чем в остальных полученных RST-пакетах, или если размер окна больше нуля, то скорее всего порт активен.



 

Категория: Советы Безопасности при Использовании компьютера | Просмотров: 9 | Добавил: torayevtm | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Код *: