Главная » Хабрахабр » [Перевод] Конференция DEFCON 16. Фёдор, хакер InSecure.org. NMAP-cканирование Интернет

[Перевод] Конференция DEFCON 16. Фёдор, хакер InSecure.org. NMAP-cканирование Интернет

Добрый день, меня зовут Фёдор, я из InSecure.org и я являюсь автором проекта сканера безопасности Nmap, выпущенного в свет в 1997 году. Я хотел бы поблагодарить всех, кто сюда пришёл, и сам Defcon за то, что меня сюда пригласили. Я большой поклонник таких конференций, куда могут прийти люди, испытывающие настоящую страсть к любительским технологиям, но не имеющие компаний, которые готовы заплатить тысячи долларов за билет.

Речь пойдёт о сканировании портов и о чём-то большем, чем сканирование портов, и если вам не нравится сканирование портов, то следующие 50 минут станут для вас худшим из кошмаров. Хочу предупредить вас, что это разговор не о том, как проводить кросс-сайтовые скриптовые атаки на социальные сети или как взламывать каналы Twitter.

Я имею в виду, что я могу ринуться в обнаружение некоторых ОС или действие обработчика скриптов Nmap так же, как Дэн может взять свой DNS и использовать его для туннелирования YouTube, чтобы обдурить какого-нибудь болвана, но в обоих случаях мы просто расширяем свою ключевую тему.
Моя тема, как видно из первого слайда, посвящена сканированию интернета. Потому что для меня говорить о чём-то другом будет так же непривычно, как услышать Дэна Камински, который не рассказывает о DNS. Я потратил много времени этим летом, сканируя десятков миллионов хостов в интернете и собирая необходимые данные.

Для меня сканирование является ценным само по себе, но если вам нужна какая-то причина, то в данном случае в этом случае у меня были некоторые конкретные цели проекта. И когда я рассказываю об этом людям, они часто спрашивают: «Зачем»? Первая – это собрать эмпирические данные и использовать их для расширения и улучшения функциональности Nmap, мы поговорим об этом чуть позже.

Есть множество людей, собирающих информацию о структурировании и населённости сетей, чтобы узнать, какие методы сканирования подходят лучше всего. Вторая цель — использовать данные для того, чтобы помочь знающим людям выполнять сканирование более эффективно. Так что вы сможете использовать мои эмпирические данные для своих собственных нужд, они помогут узнать, как проводить сканирование и собирать результаты. Но обычно они задаются вопросом, как настроить существующие инструменты сканирования, не находя ничего подходящего.

Потому что сканирование миллионов хостов выполняется в самых разных ситуациях, и при этом можно отследить, как Nmap на это реагирует. Третья цель состоит в том, чтобы обнаружить и устранить ошибки Nmap и повысить производительность для широкомасштабного сканирования. Мне удалось исправить ошибки, вызывающие сбой или «зависание» системы, ускорить процесс, выяснив, что именно вызывает замедление сканирования.

Четвёртая цель состоит в том, чтобы продемонстрировать технологии, которые можно использовать как для привычного сканирования, так и для широкомасштабного сканирования Интернета.

В первую очередь я хочу сказать, что лучше проводить десятки больших, но целевых сканирований вместо одного огромного сканирования. Идея состоит в том, что если это сканирование работает для 25 миллионов хостов, то оно наверняка справится со сканированием 25 тысяч хостов или сколько вам нужно просканировать.
Давайте рассмотрим проблемы, с которыми мне пришлось столкнуться при сканировании. Каждая из таких целей позволяет собрать полезные данные определённого рода, но проблемой является определение конкретных IP-адресов, которые нужно просканировать.

Для этого существует много возможностей: таблицы маршрутизации BGP, которые позволяют узнать, какие сети маршрутизированы, файлы DNS-зон, таблицы распределения регистров и т.д.

При этом фактически сканируются не компьютеры, а их список, потому что сами машины я сканирую позже. Я решил использовать собственный скриптовый генератор IP-адресов Nmap, позволяющий создать 25 000 000 IP-адресов, и ещё дополнительные 200 тысяч я сделал из-за возможных дубликатов. Это был способ генерации случайных номеров, но как только у вас появляются конкретные цели, которые нужно просканировать, возникает следующий вопрос: какой источник вы собираетесь использовать. В результате я получил список из 25 миллионов IP-адресов, который я использовал для сканирования.

Я собирался распространять клиент под названием Nmapster, который люди могли бы скачать. Здесь у меня было много идей, одна безумнее другой, например, P2P-сканирование. Но я решил, что ключевая цель – это сделать Nmap быстрее и эффективнее для повседневного сканирования и что лучше сосредоточиться на использовании самого Nmap, вместо того, чтобы создавать для него пользовательские программы. Он просканировал бы их компьютеры и сообщил, что мы собираем данные для обобщения.

Когда вы сканируете много хостов, люди могут возмутиться, а я не хочу, чтобы мой интернет-провайдер снова отказал мне в предоставлении услуг, но возможность быть арестованным выглядит ещё хуже. Вторым большим препятствием была незаконность подобных действий. Поэтому решил выходить в сеть через бесплатную беспроводную точку доступа моей соседки (аплодисменты и смех в зале).

Да нет, я просто шучу, к тому же у интернет-канала моей соседки не хватило бы пропускной способности для обработки такого количества трафика, который мне был нужен.

Через 15 минут после начала сканирования эти парни связались со мной, лихорадочно спрашивая, что, чёрт возьми, происходит, может, мой компьютер заражен самым страшным червем в интернете, потому что он сходит с ума и зондирует тысячи машин в секунду по всему интернету! Поэтому я решил воспользоваться ISP, которого я использую для колокации, и выполнять сканирование оттуда, то есть через оборудование, расположенное на его территории. Тогда они подумали, что я какой-то спамер или даже хуже, если такое возможно, и меня вообще нужно арестовать. Они предложили отключить меня, но я объяснил, чтобы они не волновались, я не пострадал, я делаю это для определённой цели. К счастью, оказалось, что они были пользователями Nmap и мне удалось объяснить, что это сканирование нужно для того, чтобы сделать мою программу более эффективной и производительной. Тут я испугался и подумал, что мне конец, мне придётся бросить мой проект и начать заниматься исследованием кросс-сайтовой уязвимости. На что они сказали: «ну что же, тогда можете продолжать»!

К несчастью, Министерство обороны США было не так любезно, им совсем не понравилось моё сканирование, и они заявили, чтобы я прекратил сканировать важные военные объекты. Я немного уменьшил скорость сканирования, потому что не хотел, чтобы у них перегорели предохранители, и продолжил это великое дело. Так что с тех пор я немного нервничаю, если над моей головой пролетают военные самолёты. Я подумал, что тут мне пригодится возможность Nmap пропускать сканирование определённых сетей, но они даже не дали бы мне определить эти сети, потому что они тоже являлись военными объектами.

Для некоторых случаев мне достаточно было получить результаты из незащищённого сегмента интернета, но для других было бы неплохо изучить, как это выглядит за файрволами компаний. Следующим препятствием для сканирования стали брандмауэры. С удовольствием скажу, что я смог пробиться через ряд файрволов не с помощью чего-то вроде продвинутой атаки фрагментации, а с помощью технологий, которые просто «просили» их предоставить нужные данные. Вы знаете, что они часто контролируют разные порты, поэтому изнутри открытая сеть выглядит совсем по-другому.

Существует множество крупных компаний, которые ежедневно сканируют свои сети с помощью Nmap, и они были счастливы внести свой вклад в виде данных, которые помогут его улучшить.

Сканирование интернета это долгая и тяжелая работа. Следующими проблемами стали производительность и точность. Ключевой целью стало улучшение производительность Nmap, потому что статистика его использования была неутешительной:

  • прошло времени с начала сканирования 93 ч 57 мин. 40 с (более 4-х дней);
  • всего за это время из 254868 запланированных хостов проведено UDP сканирование 65000 портов, находящихся на 2048 хостах;
  • за это время выполнено UDP сканирование около 11.34% запланированного количества, время на сканирование остальных хостов составит 688 ч 41 мин 48 с.

Когда ваша оценка оставшегося времени приводит к «переполнению целых чисел» и приносит один негатив, это не слишком обнадеживающий признак. Это конкретное сканирование все еще выполняется, и возможно, на конференции DEFCON в следующем году я расскажу, что из этого получилось. К счастью, некоторые из других наших сканирований закончились намного раньше, так что это своего рода введение в то, какие виды сканирования мы выполняли и почему.

Хорошим началом является обнаружение хостов, потому что первое, что вы хотите сделать при разведке сети – это обнаружить месторасположение хоста и выяснить, какие сети доступны для сканирования. Теперь давайте перейдем к более практичным советам, которые могут служить полезными деталями и дадут вам знать, как можно использовать это в качестве помощи для своего собственного сканирования. Поэтому вы не должны тратить время на сканирование IP-адресов, которые не прослушиваются хостами, и принять решение, какими методами выполнять сканирование.

Было время, когда большинство хостов отвечали на ICMP эхо-запросы или пинговали пакеты, которые Nmap по умолчанию направлял 80-му порту, но к сожалению, это время закончилось 10 лет назад.

Сейчас большинство компаний блокируют пакеты пингов и мне пришлось использовать более эффективные методы.

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

Те брандмауэры, которые пропускают синтетические пакеты, обычно блокируют пакеты ACK, и наоборот.

Как видите, ответ пришёл очень быстро и он показывает, что хост доступен. Я покажу быстрый пример использования Nmap с синтетическим пакетом для порта 80 сайта sun.com.

Затем мы используем для этого же хоста пакеты ACK, вы видите, что сканирование заняло больше времени, и хост нам не ответил, потому что заблокировал зондирование пингами.

В данном случае у нас имеется статический файрвол, который пропустил пакеты SYN и заблокировал пакеты ACK. Таким образом, можно понять, какой файрвол установлен на этом хосте – со статической или с динамической фильтрацией.

Я отвечу – нужно посылать оба вида пакетов, пока хост не пропустит один из них. Может возникнуть вопрос, какое же зондирование портов лучше использовать.

У вас имеется 65 тысяч портов, и часто невозможно выбрать те, которые работают лучше всего. Следующим вопрос состоит в том, какой порт нужно использовать. Это лучшая 10-ка портов для обнаружения хостов определённых типов. Поэтому я сделал выборку портов на основе эмпирических данных, которая показана на следующем слайде.

Некоторые люди могут посмотреть на этот список и спросить, а где же самые распространённые Windows порты 135 или 139?

Часть этих портов я бы рекомендовал «прощупывать» SYN-пакетами, другую часть – пакетами ACK. Однако помните, что я создавал свою базу данных на основе хорошо защищённых хостов, поэтому если вы испытываете проблемы с установкой брандмауэра, вам лучше блокировать эти порты Windows.

В этом случае закрытые UDP-порты лучше открытых, потому что они более склонны к ответу. Далее у нас имеется обнаружение хостов UDP. Закрытые же порты обычно отвечают такому пакету запретом, и это означает, что здесь находится хост. Открытые порты, получая чистый пакет, не знают, что с ним делать и просто игнорируют его. Порт 53 часто попадает в исключения файервола, потому что предназначен для DNS.

Некоторые системы охотно принимают эхо-запросы, зато блокируют остальные. Я также использовал ICMP-метод обнаружения хоста (PE, PM, PP). Например, администраторы Google.com не видят угрозы в приёме пакетов пинга, но блокируют запросы маски сети и метки времени, потому что считают, что их используют хакеры.

Поэтому советую использовать оба вида запросов – эхо-запрос и один из запросов второго вида. Другие администраторы явно блокируют эхо-запросы как хакерские, но забывают про блокировку запросов маски сети и штампа времени netmask/timestamp.

По умолчанию этот протокол использует 3 вида IP-пакетов: 1 (ICMP), 2 (IGMP) и 4 (IPinIP) с целью получения доступного ответа, если хост «жив». У нас имеется также новая возможность, которая называется Protocol Ping (PO). Я не проводил тестирование, чтобы выяснить, какие протоколы наиболее полезны, поэтому по умолчанию используются все 3.

На слайде приведён пример, когда я сгенерировал 50 тысяч IP-адресов и использовал сканирование пинга по умолчанию, в результате чего было найдено 3348 хостов за 1600 с, или 27 минут. Сейчас я хочу рассказать о различных технологиях обнаружения хостов, которые использовал, и вы можете спросить, какие из этой кучи наиболее ценны и какая между ними разница.

Но затем я решил использовать «продвинутое» сканирование, взял практически такой же список из 50 тысяч хостов и добавил несколько разных техник обнаружения, таких как эхо-ответ, метки времени, SYN-зондирование кучи портов и установил исходный порт 53 для того, чтобы замаскироваться под DNS. Это достаточно много компьютеров, и данное сканирование выглядит довольно успешным. Это позволило обнаружить 4473 «живых» хоста, но зато заняло немного больше времени – 4259 с.

Сравнение этих двух способов сканирования — с параметрами по умолчанию и «продвинутого» — показало, что второй занял на 167% больше времени (41 минута против 27) и обнаружил на 34% больше хостов.

Сейчас я хочу рассказать об апгрейдах Nmap, которые были проведёны на основе этих исследований.

68, в которой были устранены ошибки и улучшена производительность. На сайте http://nmap.org/changelog.html приведена последняя версия Nmap 4. Имеется также новейший SVN-релиз, с которым можно ознакомиться по ссылке http://nmap.org/book/install.html#instsvn.

Потом они жалуются на то, что программа Nmap давно устарела, потому что она говорит вам, какие номера портов открыты, но не сообщает, какие службы находятся за ними. Я устал от сообщений об ошибках, где говорится, что «да, мы исправили это в 2003 году», потому что существует много людей, которые не хотят выполнять частые обновления. Эта новейшая версия содержит функцию сканирования Top Ports и некоторые другие особенности, о которых я расскажу позже. В последнее время я добавил в программу ряд усовершенствований, и если вам нужна самая продвинутая версия программы – релиз BHD CO 8 Black Hat DefCon, его можно найти по специальной ссылке svn://svn.insecure.org/nmapexp/bhdc08 с использованием гостевого логина и пароля.

Некоторые крупные организации также предоставили возможность сканировать данные внутренних сетей, расположенные за файрволами. Итак, проект Top Ports представляет собой ещё одно большое сканирование миллионов IP-адресов для обнаружения открытых TCP и UDP портов с помощью выборки популярных портов. При этом служебные файлы Nmap были дополнены данными частот каждого порта.

Nmap 4. Рассмотрим порты, которые сканировались по умолчанию. Отмечу, что множество портов были придуманы много лет назад и уже давно не используются. 68 просканировал 1715 портов TCP и 1488 портов UDP, сканировались порты от 1 до 1024 и все именные высшие порты. В то же время имеется множество открытых безымянных портов.

Это позволило не тратить время на сканирование старых неиспользуемых портов, таким образом, сканирование протекает быстрее, потому что фактически сканируется чуть больше половины всех существующих портов. Конечная версия Nmap использовала частотные данные Top 1000 портов для каждого протокола, поэтому во многих случаях я получил лучшие результаты.

В Nmap оно обозначается литерой (-F). Быстрое сканирование сильно отличается от сканирования по умолчанию. 68 просканировал 1276 портов TCP и 1017 портов UDP по всему диапазону номеров. На этот раз Nmap 4. Однако в данном случае сканер не проверял все существующие порты, а работал только с теми, чьи имена были в новом служебном файле Nmap. Вы можете спросить, почему сканирование по умолчанию обработало больше портов, но тут нет ничего драматического – быстрое сканирование просто заняло меньше времени. Это намного полезнее для протокола TCP и ещё более полезно для UDP, потому что я знаю, что многие люди никогда не выполняют UDP-сканирование, считая его очень трудоёмким и сложным в отношении фильтрации открытых портов. В результате сканирование производилось для TOP 100 портов для каждого протокола, и я получил выигрыш в скорости на порядок больше, чем при сканировании по умолчанию. Однако хакеры не притворяются, поэтому нам очень важно понять, что происходит с этим протоколом.
На следующем слайде показаны примеры быстрого сканирования с использованием разных версий Nmap. Поэтому они притворяются, что UDP просто не существует. В этой открытой версии присутствует проблема фильтрации, так как Nmap не получает ответа и не может определить, отфильтрован ли порт или открыт. Буква U в обозначении режима сканирования Nmap — sUV – F-T4 указывает на UDP-порт, F – быстрое сканирование. Поэтому здорово, что мне удалось получить отчёт с данными, которые показывали все открытые и отфильтрованные порты. Такое происходит, если вы используете версию с сайта scanme.nmap.org.

68 заняло час, сканирование с релизной версией Blackhat DefCon 08 продолжалось 6 с половиной минут, сканирование с «продвинутой» версией Blackhat DefCon 08 составило всего 13 с. Таким образом, сканирование с помощью Nmap 4. Все 3 версии нашли один и тот же открытый порт 53.

В новых версиях использовались новые функции сканирования:

- top-ports <n>

Она сканировала наиболее популярные открытые порты каждым требуемым протоколом, а функция:

–port-ratio <n>

где n выбиралось между 0 и 1, сканировало все порты с частотой, установленной на данном уровне.

Это означало, что UDP-запросы отправлялись на определённые порты по определённым протоколам, то есть для 53 пробовался только DNS, для 161 порта только SNMP и т.д. Последняя версия работала с флагом “—version—intensity 0”. Это позволило сократить время сканирования до 13 секунд.

В этом случае мы получили те же данные, но вместо часового ожидания ждали всего 13 секунд. Мораль этой истории заключается в том, что если вы знаете, какие данные вам действительно нужны, можно немного оптимизировать сканирование и сделать его намного быстрее. Нужно просто выбрать между дефолтным сканированием 1000 портов и быстрым сканированием 100 портов и указать произвольно, сколько портов вы хотите сканировать. Так что настройка функций очень помогает, особенно функция топ-портов.

Далее на слайде показан Top-10 портов TCP и выборка эффективности «топов», которую я сделал на основе эмпирических данных. Здесь возникает вопрос, какая функция Top Ports работает лучше. Эта выборка показывает, сколько открытых портов я нашёл, используя тот или иной «топ».

Используя «Топ-100» портов, можно обнаружить 73% открытых портов, использование по умолчанию «Топ-1000» обнаруживает 93%, но при этом вы сканируете всего лишь 2% от 65 тысячного пространства портов. Если использовать самое быстрое сканирование «десятки» портов, можно обнаружить чуть больше половины открытых TCP-портов.

Здесь доминируют типичные порты Microsoft, хотя имеются и SNMP и NTP. Далее я приведу статистику нахождения открытых UDP-портов.

Так, «Топ-100» UDP даёт обнаружить 90% портов против 73% для TCP. Эффективность UDP отличается от эффективности TCP, здесь больший процент открытых портов определяется при меньших значениях «топа».

Я использовал ещё одну функцию, которую разработал недавно, это контроль скорости пакетов Packet Rate Control.

Я горжусь контролем загрузки Nmap и другими технологиями, позволяющими выяснить, какая скорость сканирования будет работать лучше. В её отношении я испытываю смешанные чувства. Это одна из причин, по которой они используют сканеры типа RAND или Unicorn. Но есть много людей, которые говорят, что хотели бы просто сканировать порты с определённой частотой и не беспокоиться, если какие-то пакеты потеряются. Для таких случаев я решил добавить функцию, которая устанавливает максимальную и минимальную частоту отправки пакетов в секунду.

Она оказалась очень полезной, когда я чуть не «расплавил предохранители» моего интернет-хостинга, потому что я смог задать параметр сканирования для Nmap с частотой 300 пакетов/с и сделать этих ребят из ISP немного счастливее.

На следующем слайде показан пример, как разместить вместе все полезные функции Nmap.

Эту функцию я часто использовал для взаимодействия с программой во время выполнения сканирования, потому что люди не знают, что можно нажать клавишу D и открыть режим отладки, а если нажать на неё несколько раз, то можно будет прокрутить экран и увидеть, что Nmap делает в данный момент. Здесь вводится исходный IP-адрес, который я хотел использовать для этого конкретного сканирования и указывается режим отладки.

Я применил функцию создания файла журнала с использованием функции значений времени STRF, которая автоматически проставляет дату и время. Здесь я использовал низкую задержку, так как не хотел долго ждать хостов, для которых была ограничена частота пакетов.

Далее я ввёл имя файла, который хочу в итоге получить и отметил, что не хочу делать более чем 1 повторную попытку сканирования, потому что собираюсь выполнить большой объём сканирования как можно быстрее.

Далее здесь отмечена рандомизация хостов, перечислены номера сканируемых портов, указана большая группа МАС-адресов хостов, минимальная частота сканирования 175 пакетов в секунду и максимальная 300 пакетов в секунду.

Это пример того, как я всё время изменял и улучшал алгоритм работы Nmap, пока не находил вариант, который работал лучше других.

Некоторые из них — это новые и интересные функции, например, скриптовый движок NSE. А теперь я хочу использовать оставшееся время, чтобы рассказать вам последние новости Nmap. В этом случае мы делаем HTML-заголовки для веб-сайтов, которые он находит. Это модульный механизм, который опрашивает порты определённым образом.

Сейчас существует более 50 скриптов, поддерживаемых Nmap, совместимых с данными Whois, паролями brute-forcing pop3 и прочими сумасшедшими вещами, которые вы хотите использовать.

Сейчас я вам быстро продемонстрирую, как работает Nmap Scripting Engine.

Она оговаривает подробный режим Nmap – не пинговать, выполнить UDP зондирование для порта 53, использовать агрессивный тайминг и применить здесь 3 скрипта, что поможет избежать ошибки DNS, о которой Дэн рассказывал в прошлое воскресенье. Это длинная команда, поэтому я скопирую её из другого места. Это те ошибки, которые люди хотят исправить для уменьшения проблемы «отравления» кеша. Один скрипт просто проверяет, разрешает ли DNS-сервер рекурсию, второй проверяет, рандомизирует ли он исходные номера портов, а третий проверяет, есть ли у него идентификатор рандомизированной транзакции.

Это занимает немного времени, а затем прямо рядом с номером порта выводится результат. В нашем случае я хочу продемонстрировать работу NSE во время сканирования портов одного из серверов BlackHat и одного из серверов Shmoo.com.

231. Вы видите, что для blackhat.com с IP-адресом 216. 55 при UDP сканировании порта 53 в обоих случаях был получен отказ рекурсии сервера, поэтому его не удалось «допросить» дальше. 64. 21. Для сервера archimedes.shmoo.com с IP-адресом 12. 234 рекурсия состоялась. 210. Но я рад сообщить, что это было здорово с точки зрения рандомизации портов.

Кроме того, у меня есть более интересный материал на волнующую меня тему – это новый графический интерфейс Zenmap GUI. Я хотел показать один из немногих примеров, когда моя затея с треском провалилась, так что здесь можно было бы сыграть в игру «кто первым сможет отравить кеш», но решил, что это не самая хорошая идея для нашей презентации.

Однако этот интерфейс является мощным инструментом для работы со сканером, что я сейчас быстро продемонстрирую. Многие люди говорят, что им не нужен графический интерфейс, потому что они работают с Nmap уже 10 лет и знают все его 130 опций до мозга костей.

Кроме того, в новейшую версию сканера мы добавили интересную возможность. Здесь показывается окно с выходными данными, каждый открытый хост, можно задать фильтрацию отображения HTTP или SSH и так далее. Для тех людей, которые говорят: «раз вы назвали этот инструмент Н-картой, так дайте мне, чёрт возьми, эту самую карту!», мы добавили графическую схему топологии сканируемой сети.

Вы можете взять такой узел и сказать: «Эй, а ну-ка покажите мне, какие еще имеются данные по этому конкретному сканированию, покажите мне открытые порты и т.д.», то есть при наведении на жёлтый кружок открывается окно со всеми деталями проведённого сканирования. Это достаточно точная вещь, которая рисует результат сканирования сети и помещает его в центр исходного узла, а в концентрических кругах вокруг этого центра показан каждый прыжок в сеть и компьютеры, которые вы сканировали. Можно также отцентрировать схему относительно другого хоста — просто нажмите на узел и перетащите его в нужном направлении. Вы можете выполнить сканирование новых машин и они тоже будут добавлены на схему.

Я уже получал от них письма, в которых было написано: «я дважды щелкнул по иконке nmap.exe на рабочем столе, после чего на секунду выскочил какой-то чёрный ящик, а потом всё исчезло. Ещё один большой плюс графического интерфейса – это то, что теперь с Nmap смогут работать пользователи Windows, которые понятия не имеют, как можно управлять программой с помощью командной строки. Так что я надеюсь, что Zenmap GUI им поможет. Очевидно, ваша программа совершенно не работоспособна». Хотя, с другой стороны, может таким людям вообще не стоит пользоваться Nmap.

У нас также имеется система обнаружения ОС второго поколения.

Так что пользователи Nmap смогут найти на нашем сайте nmap.org любой инструмент, какой только можно вообразить, и скачать версию программы для Windows или Linux. Она воплотила в себе всё, что я изучил относительно обнаружения OS за предыдущее 7 лет, и содержит в себе 1500 подписей новых операционных систем. У нас есть также инструмент для обнаружения версий ПО.

Это своеобразный фильтр, который показывает, по какой причине произошло открытие того или иного порта – из-за использования синтетических или ACK-пакетов, или по какой причине произошло закрытие порта, например, из-за перезагрузки. Есть ещё функция, которая называется Reason (Причина).

Следующая функция, которая может предоставить вам много полезной информации, называется «Трассировка пакетов», или Packet trace. Это очень хороший инструмент для понимания того, что, собственно, делает Nmap.

Просмотрев трассировку пакетов во время быстрого сканирования Nmap, я могу сказать, с каким устройством они взаимодействуют. Благодаря ей я могу узнать, является ли порт 25 конечным хостом, возвращающим мне пакеты, или их отбрасывает назад файрвол. Это является полезным для понимания используемых файрволов и фильтрующих систем. Здесь можно увидеть частоту, используемые опции сканирования, IP ID, и с помощью этой функции я могу выяснить, один и тот же хост отправлял мне пакеты в обоих случаях или нет.

Эта быстрая функция, потому что Nmap может выполнять её параллельно сканированию. Ещё одна функция под названием «Продвинутая маршрутизация трассировки» Advanced Traceroute показывает, какой вид зондирования лучше использовать для проникновения.

Далее я сделал несколько улучшений производительности и точности сканирования.

Далее у нас есть опция заголовков TCP и IP, которая позволяет указать исходный маршрут или исходную запись. Есть целый раздел на главной странице интерфейса программы, который показывает все опции, которые вы можете использовать для работы.

Но я общался с одним парнем, который недавно тестировал локальную сеть в одной компании. Многие из вас скажут, что исходные маршруты были нужны 15 лет назад и сейчас это никому не надо. У них было создано что-то вроде DMZ для доступа к конференц-залу. Она была расположена в чём-то типа конференц-зала и могла соединяться только с серверами определённой серии, поэтому ему не удалось установить контакт со всеми компьютерами компании. Тогда этот парень взял один из их серверов и проиграл через него исходный маршрут, нашёл компьютер назначения и таким образом смог обойти это ограничение.

Мы разработали ещё один совершенно новый инструмент под названием Ncat.

Она виртуально поддерживает все функции Netcat 1. Это современная интерпретация Netcat почтенного Хоббита. Она также поддерживает множество новых «крутых» функций: SSL, IPv6 на разных платформах под управлением Linux, Windows, Mac OS, сетевое посредничество, перенаправление портов, прокси (клиент, сервер, цепочка) для сканирования через другой компьютер, исполнение оболочки, контроль доступа и т.д. 10, кроме базового сканера портов, потому что я больше люблю использовать свой Nmap в качестве сканера. Крис также добавил некоторые функции, такие как IP-опции и режим обнаружения пинга. Эта программа была создана Крисом Каттерджоном в 2005 году и сейчас полностью готова к релизу.

Следующим инструментом является Ndiff, появления которого давно многие дожидаются.

Она прекрасно подходит для быстрого обнаружения изменений при повторном сканировании. Эта утилита сравнивает результаты двух или более сканирований и показывает изменения: новые или удалённые хосты, порты, изменённые службы и т.д. Так я могу увидеть новые открытые порты, добавленные компьютеры и так далее. Например, ежедневно я сканирую сеть какой-то компании, а в конце работы вызываю эту утилиту и говорю: «пришли мне на почту изменения, которые произошли со вчерашнего дня».

В ней говорится не только о возможностях моего сетевого сканера, но и о техниках сканирования сети. Наконец, я хочу показать вам мою книгу «Сканирование сетей при помощи Nmap», я работал над ней несколько лет.

Книга также будет продаваться на Amazon и будет доступна для бесплатного скачивания на сайте denman.org/book. Я напечатал 170 экземпляров этой книги, которые хочу здесь раздать, но боюсь, что их начнут продавать на следующее утро. Вы можете добавить себя в список хакеров Nmap и получать новости о моей программе.

50, которая вышла 9 месяцев назад. На следующем слайде перечислены те, кто внёс свой вклад в совершенствование программы Nmap, начиная с версии 4. Наш проект очень обязан добровольцам, которые к нему присоединись и помогли ему стать лучше. Я не мог бы ничего сделать без их помощи.

А сейчас у меня ещё есть время, чтобы ответить на пару-тройку вопросов.

Да, их могут использовать и хорошие, и плохие люди, но лучше совершенствовать свои сети, а не действовать по аналогии с теми, кто запрещает использовать молотки, потому что ими можно убить человека. Действительно, я не очень хорошо себя чувствую в Германии и Великобритании и в других странах, которые приняли законы, запрещающие людям использовать такие инструменты, как Nmap. Лично я люблю выступать в Германии и Англии, поэтому такой запрет может стать для меня потенциальной проблемой, ведь я не хочу быть арестованным за нарушение закона.

Поэтому я рад, что некоторые объединения людей борются против этого закона. Я бы не смог даже объяснить судье, в чём заключается моя мотивация, так как совершенно не знаю немецкого языка.

Благодарю всех за внимание! Если у вас есть ещё вопросы, буду рад ответить на них в комнате 103, прямо напротив холла.

Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).

VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps до декабря бесплатно при оплате на срок от полугода, заказать можно тут.

класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки? Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 ТВ от $249 в Нидерландах и США! Читайте о том Как построить инфраструктуру корп.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

[Перевод] Философия Джефа Безоса: «День 1»

13 сентября Джеф Безос стартовал филантропический проект «День 1». Копнем, что же стоит за этим названием. Какова философия «Дня 1» Джеффа Безоса? Изначально этот вопрос появился на ‘Quora’: месте для получения и обмена знаниями, позволяющим людям учиться у других и ...

Very Special Event: как мы смотрели презентацию Apple и что об этом думаем

Тем не менее, мы в Авито не могли пропустить это событие. От презентации Apple, которая должна была пройти 12 сентября, ничего особенного не ждали: три новых модели iPhone и новую версию Apple Watch — об этих новинках знали заранее. Посмотреть ...