Здесь я нахожу интересное явление: я получаю разные MAC-адреса, используя разные параметры Nmap.

В моей операционной системе Kali я nmap -sS 192.168.1.4 чтобы запустить «полуоткрытое» сканирование.

    Starting Nmap 7.70( https://nmap.org ) at 2018-07-04 12:38 UTC
    Nmap scan report for 192.168.1.4
    Host shown: 999 closed ports
    PORT    STATE unknown
    49159/tcp open unknown
    MAC Address: 94:XX:XX:XX:XX:XX (Tp-link Technologies)

затем я nmap -O 192.168.1.4 чтобы определить целевую ОС.

   Starting Nmap 7.70( https://nmap.org ) at 2018-07-04 12:39 UTC
    Nmap scan report for 192.168.1.4
    Host shown: 999 closed ports
    PORT    STATE SERVICE
    49159/tcp open unknown
    MAC Address: 18:XX:XX:XX:XX:XX( Apple )

Как видите, у меня два разных MAC-адреса!

Интересно, почему это происходит, и какую технологию Nmap использует для обнаружения ОС?

2 ответа2

1

Возможно, удаленный компьютер 192.168.1.4 имеет несколько сетевых карт. Это может вызвать проблемы, так как каждый NIC имеет свой MAC-адрес, и ответ может быть отправлен с разных NIC. Или, поскольку каждый сетевой адаптер, например, Wi-Fi и Ethernet, имеет разные MAC-адреса, возможно, удаленное устройство использовало соединение Wi-Fi, а затем изменило соединение на Ethernet (или наоборот).

Что касается обнаружения ОС, nmap отправляет пакеты TCP и UDP на удаленный хост и анализирует каждую часть ответного пакета, и на основе полей в пакете сопоставляет его с известными значениями. Более подробную информацию об этом можно найти на странице обнаружения ОС nmap.

0

Nmap использует анализ пакетов для обнаружения ответов на свои зонды для обнаружения хоста, сканирования портов и обнаружения ОС. Каждый раз, когда получен действительный ответ (то есть тот, который, вероятно, пришел от цели), и в нем есть MAC-адрес, адрес записывается. Это означает, что если разные зонды получают разные ответы, может быть указан другой MAC-адрес. Это очень необычное обстоятельство, так как целевой MAC будет одинаковым в каждом случае. Поскольку фаза обнаружения ОС запускается позже, чем фаза сканирования портов, может показаться, что эти зонды (отправленные в основном на открытые порты) получают ответы, отличные от последних, отправленных на фазе сканирования портов.

Вы можете использовать один или другой результат, используя параметр --send-eth . Некоторые платформы способны отправлять как необработанные Ethernet, так и необработанные IP-пакеты, и принудительное построение кадра Ethernet с помощью --send-eth может заблокировать один MAC-адрес и гарантировать, что ответы от другого не будут зарегистрированы. Это немного умозрительно, так как я не отслеживал это конкретное взаимодействие через исходный код.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .