Наш провайдер rinet
UnixFAQ.ru
   :: Поиск  
   :: Самые новые ::

   :: Самые читаемые ::
   :: Реклама ::
гарантия качества. токарный станок с чпу в Петербурге
Любые документы для работы и не только. разрешение на работу санкт петербург.

Начало
Сетевая часть

Какова техника сканирования портов?

 (C) The Official RU.NETHACKF.A.Q. Revision 0.295 (Russian Edition)
from DZh (2:5030/493@fidonet.org, dzh@nether.net, dzh@tomcat.ru) and other


Иногда у вас может возникнуть потребность узнать, какие сервисы
предоставляет определенный хост. Для этого существует ряд различных
программ сканирования портов.

Простейший вариант - это программы типа 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 'NetworkInterfaceTap') и т.д. Для
этого необходимо, как правило, иметь уровень администратора.

Stealth-сканирование.
~~~~~~~~~~~~~~~~~~~~~
Этот метод основан на некорректном сетевом коде в BSD. Учитывая
то, что в большинстве операционных систем используется BSD'шный сетевой
код или производный от него, этот способ работает на большинстве систем
(наиболее очевидное исключение - маршрутиризаторы Cisco). Этот метод
трудно обнаружить. Даже зная сам метод, разработка обнаруживающего
алгоритма весьма проблематична без устранения самой ошибки. Недостатки
этого способа:
Этот метод основан на ошибках в сетевом коде. Это значит, что
возможно, а точнее скорее всего, эти ошибки будут исправлены. Например,
в OpenBSD это уже исправлено.
Нельзя поручиться,что этот способ будет нормально работать
в конкретной обстановке. Результаты могут быть разными в зависимости
от платформы и операционной системы, т.е. этот способ не вполне
надежен.

Используются TCP пакеты с установленными ACK и FIN флагами. Их надо
использовать, потому что, если такой пакет послать в порт при неоткрытом
соединении, всегда возвратится пакет с флагом RST. Существуют несколько
методов, использующих этот принцип:

метод #1:

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

метод #2

Послать ACK-пакет. Если TTL возвращаемых пакетов меньше, чем в
остальных полученных RST-пакетах, или если размер окна больше нуля,
то, скорее всего, порт активен.


Создано: Alexey Semenyaka

   :: Новости ::

Сайт снова оживлен на новой площадке.

sem, 22.11.2008

Новый участник проекта - Сергей Матвейчук

glebius, 30.01.2005

Новый участник проекта - Владимир Савкин

glebius, 24.01.2004

Сайт переехал на новую площадку. Теперь услуги co-location предоставляются компанией Best Telecommunications, за что им огромное спасибо.

glebius, 05.09.2003

Новый участник проекта - Андрей Павлов

glebius, 29.07.2002

Сайт вернулся к жизни. Два месяца назад отказал жесткий диск, до этого работавший безотказно и не подавая никаких признаков скорой смерти. Тк я по жизни разгильдяй, то бэкапа не было. Однако нашлись добрые люди, которые подкинули свои мирроры и кэши, и как видите, мы снова живем. Огромное человеческое спасибо Константину Елапину, Дмитрию Тейблюму и Александру Дилевскому из Яндекса, а также vasilich@softhome.net и kx@usp.ru.
Новый дизайн сайта сделал Андрей Селиванов.

glebius, 20.07.2002