|
Сканирование TCP SYNОчевидный метод, основанный на принципах создания TCP-соединения и состоящий в последовательной передаче на объект сканирования TCP SYN-запросов на создание соединения на различные порты. Если порт открыт, то на данный сканирующий запрос будет получен ответ TCP SYN АСК; если же порт закрыт - ответом будет TCP RST. Сканирование TCP FINВ основу данного метода легли некоторые тонкости реализации протокола TCP в различных сетевых ОС: на передаваемый TCP FIN-запрос закрытые порты отвечают пакетом с флагом RST, а открытые порты данное сообщение игнорируют. Однако сетевые ОС фирмы Microsoft таким методом просканировать не удастся, так как в их реализации протокола TCP передача пакета TCP RST в ответ на подобный запрос не предусмотрена. Детально данный метод описал Уриэль Маймон (Uriel Maimon) в Phrack 49, article 15. Сканирование с использованием IP-фрагментацииЭтот метод служит логическим продолжением предыдущих двух методов, отличаясь от них усложнением задачи обнаружения сканирования. Суть его состоит в разбиении TCP SYN- или TCP FIN-зaпpoca на несколько маленьких IP-фрагментов (минимальный размер поля данных в IP-фрагменте 8 байт, следовательно, TCP SYN-запрос, имеющий минимальный размер 20 байт, можно разбить на три фрагмента). Однако у этого метода сканирования может быть незапланированный побочный эффект: некоторые некорректные реализации TCP/IP, получив подобные маленькие IP-фрагменты, вызывают сбой операционной системы. Сканирование ТАР IDENTБольшинство UNIX-систем по умолчанию используют ТАР IDENT сервис на 113-м порту, задача которого заключается в предоставлении удаленным пользователям информации о существующих на сервере в данный момент соединениях. Входными параметрами ТАР-сервера являются <localport> (интересующий нас порт сервисной службы на сервере) и <foreignport> (порт клиента, подключившегося к данной службе сервера). Выходными параметрами ТАР-сервера являются сообщения вида <localport>, <foreignport>: USERID : <systemtype> : <conn-info> или <localport>, <foreignport> : ERROR : <errortype> Пример выходных данных ТАР-сервера: 6191 , 23 : USERID : UNIX : joe 6191 , 23 : USERID : MULTICS : StJohns.DODCSC.a 6191 , 23 : USERID : OTHER : StJohns.DODCSC.a 6191 , 23 : USERID : TAC : MCSJ-MITMUL 6191 , 23 : USERID : UNIX : a6X#-Yp,3147,2910 6191, 23 : USERID : OTHER: wewishyouamerrychristmasand 6191 , 23 : ERROR : NO-USER Подробнее о выходных данных ТАР-сервера вы можете узнать в RFC1413, а мы лишь заметим, что для определения активности одного порта на сервере требуется перебор портов клиента <foreignport> от 1 000 до 65 535, что делает данный метод чрезвычайно неэффективным. Внимательный читатель, наверное, заметил, что все вышеописанные методы открытого сканирования перечислялись "от простого к сложному". К чему все эти сложности? Ответ очевиден: создатели методов имели вполне понятное желание обойти появляющиеся автоматизированные системы обнаружения сканирования. Поэтому до тех пор, пока не были разработаны все эти методы, имела место "гонка" между системами атаки и системами обнаружения и последовательно появлялись новые (на тот момент) методы сканирования.
[25291]
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|