Nmap - the Network Mapper . Утилита для сканирования и исследования безопасности сети. В руках хакера программные средства сканирования сети являются едва ли не основным инструментом для осуществления взлома (наподобие отладчика машинных кодов null HIEW ). Nmap помогают взломщику в конечном итоге до тонкостей разобраться в структуре сети, собрать информацию о ользователях и о сетевом трафике исследуемого сегмента. Системный администратор может воспользоваться Nmap для сканирования своего сегмента сети с целью выяснения возможности их применения против него самого, после чего модернизировать средства защиты сети.... Опции выбора метода сканирования -sT (scan TCP) - использовать метод TCP connect(). Наиболее общий метод сканирования TCP-портов. Функция connect(), присутствующая в любой ОС, позволяет создать соединение с любым портом удаленной машины. Если указанный в качестве аргумента порт открыт и прослушивается сканируемой машиной, то результат выполнения connect() будет успешным (т.е. соединение будет установлено), в противном случае указанный порт является закрытым, либо доступ к нему заблокирован средствами защиты. Для того, чтобы использовать данный метод, пользователь может не иметь никаких привилегий на сканирующем хосте. Этот метод сканирования легко обнаруживается целевым (т.е. сканируемым) хостом, поскольку его log-файл будет содержать запротоколированные многочисленные попытки соединения и ошибки выполнения данной операции. Службы, обрабатывающие подключения, немедленно заблокируют доступ адресу, вызвавшему эти ошибки. -sS (scan SYN) - использовать метод TCP SYN. Этот метод часто называют "полуоткрытым" сканированием, поскольку при этом полное TCP-соединение с портом сканируемой машины не устанавливается. Nmap посылает SYN-пакет, как бы намереваясь открыть настоящее соединение, и ожидает ответ. Наличие флагов SYN|ACK в ответе указывает на то, что порт удаленной машины открыт и прослушивается. Флаг RST в ответе означает обратное. Если Nmap принял пакет SYN|ACK, то в ответ немедленно отправляет RST-пакет для сброса еще не установленного соединения (реально эту операцию выполняет сама ОС). Очень немного сайтов способны обнаружить такое сканирование. Пользователь должен иметь статус root для формирования поддельного SYN-пакета. Для ускорения процесса опроса портов при сканировании больших сетей совместно с опцией -sS вы можете использовать ярлык, позволяющий опросить какой-либо порт на всех активных объектах сканируемой вами сети намного быстрее, чем при использовании одной опции -p. Это можно сделать с помощью ярлыка -PS . Например, если будет обнаружена новая уязвимость в sendmail, вам может потребоваться за короткое время обнаружить, на каких машинах sendmail установлен. Команда запуска Nmap будет выглядеть следующим образом (пример): IP nmap -n -sS -p25 -PS25 24.0.0.0/8 -sF,-sX,-sN (scan FIN, scan Xmas, scan NULL) - "невидимое" FIN, Xmas Tree и NULL-сканирование. Эти методы используются в случае, если SYN-сканирование по каким-либо причинам оказалось неработоспособным. Так, некоторые файрволлы и пакетные фильтры "ожидают" поддельные SYN-пакеты на защищенные ими порты, и программы типа Synlogger или Courtney способны отследить SYN-сканирование. Идея заключается в следующем. В FIN-сканировании в качестве запроса используется FIN-пакет. В Xmas Tree используется пакет с набором флагов FIN|URG|PSH, а NULL-сканирование использует пакет без флагов. Согласно рекомендации RFC 973 п. 64, ОС сканируемого хоста должна ответить на такой пакет, прибывший на закрытый порт, пакетом RST, в то время как открытый порт должен игнорировать эти пакеты. Разработчики Microsoft Windows, как обычно, решили полностью игнорировать все общепринятые стандарты и пойти своим путем. Поэтому любая ОС семейства Windows не посылает в ответ RST-пакет, и данные методы не будут работать с этими ОС. Однако во всем есть свои плюсы, и в Nmap этот признак является основным для различения операционных систем, обладающих таким свойством. Если в результате FIN-сканирования вы получили список открытых портов, то это не Windows. Если же все эти методы выдали результат, что все порты закрыты, а SYN-сканирование обнаружило открытые порты, то вы скорей всего имеете дело с ОС Windows. К сожалению, Windows не единственная ОС, обладающая этим недостатком. К таким ОС относятся также Cisco, BSDI, IRIX, HP/UX и MVS. Все эти ОС не отправляют RST-пакеты. -sP (scan Ping) -sP (scan Ping) - ping-"сканирование". Иногда вам необходимо лишь узнать адреса активных хостов в сканируемой сети. Nmap может сделать это, послав ICMP-сообщение "запрос эха" на каждый IP -адрес, указанный вами. Хост, отправивший ответ на эхо, является активным. Некоторые сайты (например microsoft.com) блокируют эхо-пакеты. По этой причине Nmap также посылает TCP ACK-пакет на 80-й порт сканируемого хоста (по умолчанию). Если в ответ вы получили RST-пакет, хост активен. Третий метод использует SYN-пакет и ожидает в ответ RST либо SYN|ACK. Для пользователей, не обладающих статусом root, используется метод connect(). Для root-пользователей Nmap по умолчанию использует параллельно оба метода - ICMP и ACK. Вы можете изменить это, используя опцию '-P', описанную ниже. Заметим, что ping-сканирование по умолчанию выполняется в любом случае и только активные хосты подвергаются сканированию. Используйте эту опцию только в случае, если вы хотите выполнить только ping-опрос, не производя сканирования портов. -sV (scan Version) - включение режима определения версий служб, за которыми закреплены сканируемые порты. После окончания сканирования будет получен список открытых TCP и/или UDP-портов. Без этой опции в списке напротив каждого порта будет указана служба, которая обычно использует данный порт (эта информация берется из базы данных "общеизвестных" портов, файл nmap-services). При включенной опции будет запущена подсистема определения версий служб, которая проведет последовательное тестирование этих портов с целью определения типов и версий служб, за которыми закреплены обнаруженные порты. Файл, названный nmap-service-probes используется для определения оптимальтых тестов, с помощью которых можно получить максимально точную информацию в данных условиях. Nmap пытается определить протокол службы (ftp, ssh, telnet, http), имя приложения (ISC Bind, Apache httpd, Solaris telnetd), номер версии и дополнительную информацию (версия протокола SSH). Если Nmap откомпилирован с поддержкой OpenSSL, он осуществит подключение к SSL-серверу и попытается определить, какая служба работает "за" шифрованием. Если обнаружена служба RPC, Nmap предпримет атаку на RPC по методу "грубой силы" для определения номера программы RPC и номера версии. Заметьте, что опция -A также включает этот режим. Для получения более подробной информации смотрите статью http://www.cherepovets-city.ru/insecure/runmap/runmap-versionscan.htm .Опция --version_trace указывает Nmap на необходимость получения полной информации о передаваемых и принимаемых в процессе тестирования данных. -sU (scan UDP) - сканировать UDP-порты. Этот метод используется для определения, какие UDP-порты (RFC 768) на сканируемом хосте являются открытыми. На каждый порт сканируемой машины отправляется UDP-пакет без данных. Если в ответ было получено ICMP-сообщение "порт недоступен", это означает, что порт закрыт. В противном случае предполагается, что сканируемый порт открыт. Некоторые считают сканирование UDP-портов бесполезным занятием. Мы в этом случае напоминаем о известной "дыре" в демоне rpcbind ОС Solaris. Он может быть обнаружен на любом из недокументированных UDP-портов с номером, больше 32770. Если вы обнаружите его, то будет уже не важно, блокируется ли 111-й порт файрволлом или нет. К сожалению, сканирование UDP-портов проходит очень медленно, поскольку практически все ОС следуют рекомендации RFC 1812 (раздел 4.3.2.8) по ограничению скорости генерирования ICMP-сообщений "порт недоступен". Например, ядро Linux (каталог net/ipv4/icmp.h) ограничивает генерирование таких сообщений до 80 за 4 секунды с простоем 0,25 секунды, если это ограничение было превышено. У ОС Solaris еще более жесткое ограничение (2 сообщения в секунду), и поэтому сканирование Solaris проходит еще более медленно. Nmap определяет параметры этого ограничения, и соответственно уменьшает количество генерируемых запросов, предотвращая тем самым затопление сети ненужными пакетами, которые игнорируются целевой машиной. Как обычно, Microsoft снова все проигнорировала, и не использует в своих ОС никаких ограничений. Поэтому вы очень быстро можете просканировать все 65535 UDP-портов хоста, работающего под управлением ОС Windows. -sO (scan Open protocol) - сканирование протоколовIP . Данный метод используется для определения IP -протоколов, поддерживаемых сканируемым хостом. Метод заключается в передаче хосту IP -пакетов без какого-либо заголовка для каждого протокола сканируемого хоста. Если получено сообщение "Протокол недоступен", то данный протокол хостом не используется. В противном случае Nmap предполагает, что протокол поддерживается хостом. Некоторые ОС (AIX, HP-UX, Digital UNIX) и файрволлы могут блокировать передачу сообщений "Протокол недоступен". По этой причине все сканируемые протоколы будут "открыты" (т.е. поддерживаются). Поскольку описанная техника схожа с методом сканирования UDP-портов, ограничение скорости генерации ICMP-сообщений также будет иметь место. Однако поле "тип протокола" IP -заголовка состоит всего лишь из 8 бит, поэтому 256 протоколов будут отсканированы за приемлемое время. -sI (scan Idle) - позволяет произсести абсолютно невидимое сканирование портов. Атакующий может просканировать цель, не посылая при этом пакетов от своего IP -адреса. Вместо этого используется метод IdleScan, позволяющий просканировать жертву через так называемый хост-"зомби". Кроме абсолютной невидимости, этот тип сканирования позволяет определить политику доверия между машинами на уровне протокола IP. Листинг результатов показывает открытые порты со стороны хоста-"зомби". Таким образом, можно просканировать цель с использованием нескольких "зомби", которым цель может "доверять", в обход файрволлов и пакетных фильтров. Такого рода информация может быть самой важной при выборе целей "первого удара". Вы можете указать конкретный порт для проверки изменения IPID на хосте-"зомби". В противном случае Nmap будет использовать номер порта по умолчанию для "tcp ping". -sA (scan ACK) - использовать ACK-сканирование. Этот дополнительный метод используется для определения набора правил (ruleset) файрволла. В частности, он помогает определит, защищен ли сканируемый хост файрволлом или просто пакетным фильтром, блокирующим входящие SYN-пакеты. В этом методе на сканируемый порт хоста отправляется ACK-пакет (со случайными значениями полей acknowledgement number и sequence number). Если в ответ пришел RST-пакет, порт классифицируется как "нефильтруемый". Если ответа не последовало (или пришло ICMP-сообщение о недоступности порта), порт классифицируется как "фильтруемый". Заметим, что Nmap не выдает "нефильтруемые" порты в результатах, поэтому если вы не обнаружите ни одного открытого порта при использовании этого типа сканирования, это будет означать, что все порты просканированы и являются нефильтруемыми. Обращаем ваше внимание, что этот метод никогда не покажет состояние порта "открыт" в результатах сканирования. -sW (scan Window) - использовать метод TCP Window. Этот метод похож на ACK-сканирование, за исключением того, что иногда с его помощью можно определять открытые порты точно так же, как и фильтруемые/нефильтруемые. Это можно сделать, проверив значение поля Initial Window TCP-пакета, возвращаемого хостом в ответ на посланный ему запрос, ввиду наличия определенных особенностей обработки данного поля у некоторых ОС. Список уязвимых операционных систем включает в себя по крайней мере несколько версий AIX, Amiga, BeOS, BSDI, Cray, Tru64 UNIX, DG/UX, OpenVMS, Digital UNIX, FreeBSD, HP-UX, OS/2, IRIX, MacOS, NetBSD, OpenBSD, OpenStep, QNX, Rhapsody, SunOS 4.X, Ultrix, VAX и VxWorks. Для более подробной информации смотрите архив nmap-hackers. -sR (scan RPC) - использовать RPC-сканирование. Этот метод используется совместно с другими методами сканирования и позволяет определить программу, которая обслуживает RPC-порт, и номер ее версии. Для этого все открытые TCP/UDP-порты хоста затопляются NULL-командами оболочки SunRPC, после чего определяются RPC-порты и закрепленные за ними программы. Таким образом, вы легко получаете информацию, которую могли бы получить с помощью команды 'rpcinfo -p', даже если portmapper сканируемого хоста закрыт файрволлом или TCP-wrapper'ом. -sL (scan List) - получить список сканируемых адресов. Эта опция позволяет вам получить список адресов хостов, которые БУДУТ просканированы Nmap , до начала процесса сканирования. По умолчанию определяются имена хостов, однако это можно запретить, используя опцию -n. Опция может использоваться в случае, когда вам необходимо определить имена большого количества хостов по их адресам и т.д. -b (bounche scan) - использовать атаку "Прорыв через FTP". Интересной "возможностью" протокола FTP (RFC 959) является поддержка "доверенных" (proxy) ftp-соединений. Другими словами, с доверенного хоста source.com можно соединиться с ftp-сервером target.com и отправить файл, находящийся на нем, на любой адрес Internet! Заметим, что данная возможность известна с 1985 года (когда был написан этот RFC). Nmap использует эту "дыру" для сканирования портов с "доверенного" ftp-сервера. Итак, вы можете подключиться к ftp-серверу "над" файрволлом и затем просканировать заблокированные им порты (например 139-й). Если ftp-сервер позволяет читать и записывать данные в какой-либо каталог (например /incoming), вы также можете отправить любые данные на эти порты. Аргумент, указываемый после '-b', представляет собой URL сервера ftp, используемого в качестве "доверенного". Формат URL следующий: имя_пользователя:пароль@сервер:порт. Адрес сервера нужно указать обязательно, остальное можно не указывать. Скачать Nmap 4.11
Онлайн-сервис: http://nmap-online.com/ Следующие опции запрещены: Code: -o --resume --append-output --interactive -iL -iR -S -e --datadir --privileged -6 -f --mtu --stylesheet --webxml --iflist --packet-trace --spoof-mac --badsum Но, все же, иногда бывает полезен.
помогите. Почему у меня сканер не работает пишит какие то иероглифы и не сканит Microsoft Windows XP [Версия 5.1.2600] (С) Корпорация Майкрософт, 1985-2001. C:\Program Files\Nmap>nmap Starting Nmap 4.11 ( http://www.insecure.org/nmap ) at 2007-03-27 22:08 ╙Ёры№ёъю х тЁхь* (чшьр) pcap_open_live(ppp1, 104, 0, 20) FAILED. Reported error: Error opening adapter: ╤шёЄхьх эх єфрхЄё* эрщЄш єърчрээюх єёЄЁющёЄтю. (20). Will wait 5 seconds then r etry. pcap_open_live(ppp1, 104, 0, 20) FAILED. Reported error: Error opening adapter: ╤шёЄхьх эх єфрхЄё* эрщЄш єърчрээюх єёЄЁющёЄтю. (20). Will wait 25 seconds then retry. Call to pcap_open_live(ppp1, 104, 0, 20) failed three times. Reported error: Err or opening adapter: ╤шёЄхьх эх єфрхЄё* эрщЄш єърчрээюх єёЄЁющёЄтю. (20) There are several possible reasons for this, depending on your operating system: LINUX: If you are getting Socket type not supported, try modprobe af_packet or r ecompile your kernel with SOCK_PACKET enabled. *BSD: If you are getting device not configured, you need to recompile your kern el with Berkeley Packet Filter support. If you are getting No such file or dire ctory, try creating the device (eg cd /dev; MAKEDEV <device>; or use mknod). SOLARIS: If you are trying to scan localhost and getting '/dev/lo0: No such fil e or directory', complain to Sun. I don't think Solaris can support advanced lo calhost scans. You can probably use "-P0 -sT localhost" though. QUITTING! C:\Program Files\Nmap>