The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Представлен ZMap, инструмент для глобального сканирования Сети

19.08.2013 23:36

Группа исследователей из Мичиганского университета представила на конференции USENIX Security новый открытый инструмент для сканирования сетей - ZMap. Отличительной особенностью ZMap является сверхвысокая скорость сканирования адресов, делающая инструмент пригодным для проведения глобальных исследований Сети. На обычной настольной системе с гигабитным Ethernet-соединением ZMap способен обеспечить скорость сканирования в 1.4 млн пакетов в секунду, что позволяет просканировать весь диапазон публичных IPv4-адресов всего за 45 минут. Код ZMap распространяется под лицензией Apache.

Если утилиты, такие как nmap, проектировались для сканирования небольших сегментов сетей, то архитектура zmap изначально рассчитана на сканирование всего адресного пространства. В отличие от nmap, zmap не отслеживает состояние каждого отдельного соединения, не пытается учитывать таймауты, не поддерживает повторную отправку недошедших пакетов и не занимается распределением нагрузки. Вместо этого, zmap оперирует статистическими показателями, выбирая адреса в результате случайной выборки. Для отправки проверочных запросов zmap непосредственно генерирует Ethernet-кадры, минуя TCP/IP стек, что позволяет добиться максимальной производительности, которую может обеспечить сетевая карта. В итоге, zmap обеспечивает скорость сканировния, превышающую показатели nmap в 1300 раз.

ZMap поддерживает достаточно гибкий набор опций, позволяющих определять интенсивность проверки и ограничивать пропускную способность. Вместо конкретных диапазонов сканируемых адресов задаётся общий лимит, позволяющий просканировать определённое число случайных адресов из всего адресного пространства. Для указания какие подсети следует сканировать, а какие нет, можно определить черный и белый списки подсетей. Результат может быть сохранён в обычный текстовый файл или записан в БД Redis.

Система построена на модульной основе и поддерживает интеграцию с произвольными инструментами для исследования сети. Среди поддерживаемых методов сканирования реализована проверка портов через отправку SYN-запросов TCP, проверка доступности адреса через echo-запросы ICMP и проверка через UDP. Из областей применения ZMap отмечается изучение степени внедрения тех или иных протоколов, мониторинг доступности сервисов и помощь в понимании структуры больших распределённых по всей Сети систем.

Из проведённых с использованием ZMap исследований отмечается анализ всей инфраструктуры HTTPS, который выявил 42 млн сертификатов, из которых только 6.9 млн входят в область доверия браузеров. В процессе сканирования также было выявлено два набора неправильно выданных SSL-сертификатов. Другое исследование было направлено на оценку степени устранения раскрытой в январе уязвимости в устройствах с поддержкой UPnP. Из выявленных в процессе сканирования 15.7 млн устройств, уязвимость по прежнему присутствует в 3.3 млн из них.

  1. Главная ссылка к новости (http://threatpost.com/scanning...)
  2. OpenNews: Проведено сканирование портов всех IPv4-адресов с использованием ботнета из маршрутизаторов
  3. OpenNews: Релиз сканера сетевой безопасности Nmap 6.25
  4. OpenNews: Релиз сканера сетевой безопасности Nmap 6
  5. OpenNews: Раскрыты детали критической уязвимости в устройствах с поддержкой UPnP от различных производителей
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/37696-zmap
Ключевые слова: zmap, network, scan
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (54) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Дед Анон (?), 00:33, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    А есть ли для неё web-морда или GUI - интерфейс?
     
     
  • 2.2, Аноним (-), 00:45, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +11 +/
    спросил человек, у людей которые только сами увидели этот софт, т.к. он только вышел... если у него модульная структура, да и открытые исходники, то скоро к популярному скриптовому языку прикрутят, типо питон/перл
     
  • 2.3, Аноним (-), 00:45, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Оно тока для серьезных дядек, которые шарят в теме. Так что...
     
     
  • 3.4, Аноним (-), 06:01, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    И это к лучшему. Ядерные бомбы папуасам не игрушка. Эта штука 10.0.0.0/8 перебрала минуты за три.
     
     
  • 4.5, Pilat (ok), 06:46, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    10.0.0.0/8 - это очень может быть. А вот переберёт ли она 11.0.0.0/8 за три минуты?
     
     
  • 5.6, Анонимус_б6 (?), 08:36, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    читайте новость ну, весь инет за 45 минут! ВЕСЬ!
     
     
  • 6.14, Адекват (ok), 10:59, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > читайте новость ну, весь инет за 45 минут! ВЕСЬ!

    Ну ничего, вот придет IPv6, вот тогда вашим сканерам придет...

     
     
  • 7.50, Аноним (-), 21:26, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну ничего, вот придет IPv6, вот тогда вашим сканерам придет...




    hacker$ botnet_scan_for_ipv6 --all-internet --inlclude-ipv4
    ==========================================
    The result is saved in the database.
    Scan time: 854 ms.
    ==========================================
    hacker$



     
     
  • 8.56, Аноним (-), 00:24, 23/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Улыбнуло ... текст свёрнут, показать
     
  • 6.28, Oditynet (?), 16:09, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    он просто поржать! там то время ответа в разы меньше,чем лок.сеть!
     
  • 5.13, Pilat (ok), 10:53, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > 10.0.0.0/8 - это очень может быть. А вот переберёт ли она 11.0.0.0/8
    > за три минуты?

    Я просто представляю себе возможности оборудования и представляю, что  должно быть у провайдера для обеспнчнния в течении 45-ти минут такой работы сети. Например, даже обычная гигабитная карта 1.4 миллиона пакетов не выдаст.

     
     
  • 6.15, PnD (??), 11:07, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Выдаст. Предел на честном гигабите ~ 1.44 Mpps. Судя по описанию, тулза работает кернел-модулем вместо штатного драйвера сетёвки. На выход загонит, а вот принять назад хотя бы 700 kpps ответов - без грамотных оффлоадов никак.
      Но флудогон таки знатный. Для домашников - так вообще ОМП.
     
     
  • 7.17, Pilat (ok), 11:25, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Выдаст. Предел на честном гигабите ~ 1.44 Mpps. Судя по описанию, тулза
    > работает кернел-модулем вместо штатного драйвера сетёвки. На выход загонит, а вот
    > принять назад хотя бы 700 kpps ответов - без грамотных оффлоадов
    > никак.
    >   Но флудогон таки знатный. Для домашников - так вообще ОМП.

    Я думаю, что предел у обычных сетевых карт гораздо меньше - раза в три. Оставив вопрос о провайдере этих домашников открытым.

     
     
  • 8.19, Аноним (-), 13:38, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Зависит от паршивости драйверов и прочая уже Да, домашние локалки с роутером из... текст свёрнут, показать
     
  • 7.23, toogle (?), 14:27, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем ему модуль в ядре, когда есть RAW-сокеты? Модуль они предлагают для того, чтобы ядро не отвечало RST на полученные SYN-ACK, что даёт возможность нормально грабить кара^Wбаннеры сервисов.
     
     
  • 8.40, Pilat (ok), 20:40, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Им сокеты вообще не очень понравились, и raw и не raw ... текст свёрнут, показать
     
  • 2.29, Oditynet (?), 16:12, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    А у меня не собирается) пишет

    ../lib/blacklist.c:127:27: error: division by zero [-Werror=div-by-zero]
          allowed, allowed*100./(1L << 32));
                               ^
    cc1: all warnings being treated as errors
    make: *** [blacklist.o] Error 1


    и все)

     
     
  • 3.30, Oditynet (?), 16:22, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > А у меня не собирается) пишет
    > ../lib/blacklist.c:127:27: error: division by zero [-Werror=div-by-zero]
    >       allowed, allowed*100./(1L << 32));
    >            
    >            
    >     ^
    > cc1: all warnings being treated as errors
    > make: *** [blacklist.o] Error 1
    > и все)

    ну в общем сам подправил исходник и все)

     
     
  • 4.32, Аноним (-), 17:39, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    У вас компилер какой-то шибко вумный, похоже на ложное срабатывание.
     
     
  • 5.37, Аноним (-), 18:29, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    clang
     
     
  • 6.42, Аноним (-), 20:43, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > clang

    Видно птицу по помету. У таких вечно грабли на ровном месте лезут.

     
  • 6.47, Аноним (-), 13:19, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > clang

    Ну так зачем людям мозги сношать? Это не полноценный компилятор же.

     
     
  • 7.55, Влад (??), 17:32, 22/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >>> clang
    >> Ну так зачем людям мозги сношать? Это не полноценный компилятор же.

    clang компилирует по стандарту

     

  • 1.7, Аноним (7), 09:11, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    призме пригодится
     
  • 1.8, Прохожий (??), 09:13, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Поздновато они сие представили... Хотя, может, и наоборот вовремя - лишний повод обратить внимание на IPv6 :)
     
     
  • 2.26, Аноним (-), 15:58, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Поздновато они сие представили... Хотя, может, и наоборот вовремя - лишний повод
    > обратить внимание на IPv6 :)

    Я как-то не вижу победоносного марша v6 по планете.

     
  • 2.51, Аноним (-), 22:49, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    IPv6 - гОвно.
     

  • 1.9, Аноним (-), 09:26, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я не пойму как там конкретные IP range указать для сканирования?
     
     
  • 2.11, Зю (?), 09:48, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    grep'ом отфильтруй
     
  • 2.20, Аноним (-), 13:51, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я не пойму как там конкретные IP range указать для сканирования?

    Только подсеть, вида адрес/маска. Ядерная бомба не нуждается в прецизионной наводке на цель, там плюс-минус пять метров ничего не решают :)

     
  • 2.22, toogle (?), 14:21, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    -w, --whitelist-file=path     File of subnets to constrain scan to, in CIDR
                                  notation, e.g. 192.168.0.0/16
    Оно?
     
     
  • 3.24, Аноним (-), 14:28, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Неа, не оно. -w ничего не решает почему-то. Пробовал положить туда x.x.x.0/24, но zmap все равно сканил все подряд. Как-то вместе с blacklist можно сделать. Только это надо в него вписать range до x.x.x.0/24 и range после x.x.x.0/24 :))
     
     
  • 4.33, Аноним (-), 17:40, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Неа, не оно. -w ничего не решает почему-то. Пробовал положить туда x.x.x.0/24,
    > но zmap все равно сканил все подряд.

    Что-то вы не так делаете. Я вот чудно просканил всю локалку за считанные минуты. Узнал много нового :).

     
     
  • 5.41, Pilat (ok), 20:42, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >> Неа, не оно. -w ничего не решает почему-то. Пробовал положить туда x.x.x.0/24,
    >> но zmap все равно сканил все подряд.
    > Что-то вы не так делаете. Я вот чудно просканил всю локалку за
    > считанные минуты. Узнал много нового :).

    Да не для того zmap создавался. В локалке он работает так же как nmap.

     
     
  • 6.43, Аноним (-), 20:45, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Да не для того zmap создавался. В локалке он работает так же как nmap.

    Только вот nmap-у даже в самых розовых мечтах не снилось засканить 10.0.0.0/8 за три минуты. А этот - запросто.

     
     
  • 7.45, Pilat (ok), 22:28, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >> Да не для того zmap создавался. В локалке он работает так же как nmap.
    > Только вот nmap-у даже в самых розовых мечтах не снилось засканить 10.0.0.0/8
    > за три минуты. А этот - запросто.

    за эти три минуты Вы рискуете положить половину своего коммуникационного оборудования. Написали же специально об этом авторы.

     
     
  • 8.46, Аноним (-), 01:37, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ничего не легло Заодно и проверил И да, как ты понимашеь, это был мой собствен... текст свёрнут, показать
     
  • 4.36, no.one (?), 18:13, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    может так нужно указывать диапазон?

    Configuration Files

    ZMap supports configuration files instead of requiring all options to be specified on the command-line. A configuration can be created by specifying one long-name option and the value per line such as:

    interface "eth1"
    source-ip 1.1.1.4-1.1.1.8

     
     
  • 5.38, Аноним (-), 18:51, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    source-ip это не target совсем. Это если у вас на сервере несколько IP адресов, как я понял.
     
  • 2.52, dmi3s (ok), 00:26, 22/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Source address(es) to send packets from. Either single IP or range (e.g. 10.0.0.1-10.0.0.9)

    https://zmap.io/documentation.html

     
     
  • 3.53, dmi3s (ok), 00:28, 22/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Отменить, фигню спорол. Сорри.

     

  • 1.10, Аноним (-), 09:28, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Осталось засунуть 1.4 млн пакетов в секунду в uplink :)
     
     
  • 2.27, Аноним (-), 15:58, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Осталось засунуть 1.4 млн пакетов в секунду в uplink :)

    Это ведь не проблема софта, верно?

     

  • 1.12, NikolayV81 (?), 09:57, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    "Вместо этого, zmap оперирует <b>статистическими показателями</b>, выбирая адреса в результате случайной выборки."
    Не понятно, никто не обратил внимания что это не сканер всех адресов?
     
     
  • 2.16, Pilat (ok), 11:13, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > "Вместо этого, zmap оперирует <b>статистическими показателями</b>, выбирая адреса в результате
    > случайной выборки."
    > Не понятно, никто не обратил внимания что это не сканер всех адресов?

    Как раз сканер всех адресов, но можно указать и не все. Он по другому работает с сетью, быстрее чем nmap, но менее надёжно. Байка о случайной выборке - незнание переводчиком математики и англицкого языка - посмотрите "2.1 Addressing Probes" в источнике, там всё понятно должно быть. Просканировать все адреса можно, не переживайте.

    Самая интересная для обывателя область применения сканера -  поиск того что можно легко взломать, после прочтения оригинала будет остановлена атака на wordpress :)

    Вот, к примеру, они нашли 86% всех Tor'овских серверов:

    >Uncovering unadvertised services, such as hidden Tor
    >bridges. We show that ZMap can locate 86% of
    >hidden Tor bridges via comprehensive enumeration.

    как и море дырявых D-Link'ов.

     
     
  • 3.18, IP (??), 12:41, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Вот, к примеру, они нашли 86% всех Tor'овских серверов:
    >>Uncovering unadvertised services, such as hidden Tor
    >>bridges. We show that ZMap can locate 86% of
    >>hidden Tor bridges via comprehensive enumeration.
    > как и море дырявых D-Link'ов.

    Всех "неуловимых Джо" назвали поименно. :)
    Интересно хотя бы после этого народ задумается о своей безопасности?

    Я в свое время грешным делом купил д-линк, *?%;*%, пришлось тут же шить линуксовой прошивкой, чтоб оно было не совсем тупым кирпичом, полегчало тут же, с той поры стараюсь обходить сторонкой.

     
  • 3.49, Vkni (ok), 20:31, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Разумно в каждый дырявый D-Link засунуть Торовский сервер. :-)
     
  • 2.21, Аноним (-), 13:52, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Не понятно, никто не обратил внимания что это не сканер всех адресов?

    Это флудогенератор всех адресов, который круто флудит и смотрит прилетело ли чего в ответ :).


     
     
  • 3.39, AlexAT (ok), 20:29, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще классная вещь для покладания DPI флудом на 80-е порты xD
    Оно окуклится базу классификации теребить.

    Причем даже хендшейка не надо - достаточно представляться запросом :) Не базу классификации - так базу сеансов.

     
     
  • 4.44, Аноним (-), 20:46, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Оно окуклится базу классификации теребить.

    Тем хуже для DPI :).

     

  • 1.31, Аноним (-), 16:50, 20/08/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Ethernet-кадры, минуя TCP/IP стек

    А маршрутизировать эти "вумные" пакеты кто будет? Так в домашней сети и останутся?

     
     
  • 2.34, нафига (?), 17:41, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>Ethernet-кадры, минуя TCP/IP стек
    > А маршрутизировать эти "вумные" пакеты кто будет? Так в домашней сети и
    > останутся?

    роутер.

    ваш кэп

     
  • 2.35, Аноним (-), 17:41, 20/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > А маршрутизировать эти "вумные" пакеты кто будет?

    Те же кто и обычно. Если он стушуется от такой нагрузки - сам виноват.

     
  • 2.48, Аноним (-), 13:23, 21/08/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >>Ethernet-кадры, минуя TCP/IP стек
    > А маршрутизировать эти "вумные" пакеты кто будет? Так в домашней сети и
    > останутся?

    В чем проблема? Там же не сказано, что в них нет заголовков более высокого уровня. (Без которых сканировать порты и приложения какбэ нереально.)

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру