MAC-адрес отключается для беспроводного адаптера (TP-Link TL-WN722N) при переключении в режим мониторинга.

Вопрос или проблема

Когда я вводил команду ifconfig при запуске Kali Linux в VirtualBox, мне не присвоен MAC-адрес. Смотрите трассировку терминала ниже.

┌──(root㉿kali)-[/home/kali]
└─# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fd00::7648:cc8d:8ce9:810c  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::e9e0:a628:3268:d555  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:ad:25:87  txqueuelen 1000  (Ethernet)
        RX packets 5  bytes 2724 (2.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 25  bytes 3961 (3.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 8  bytes 480 (480.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 480 (480.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        unspec 06-F1-8D-DE-BA-70-00-94-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Затем я перезагружаю Kali Linux, введя команду reboot. И MAC-адрес присваивается, как показано в трассировке терминала ниже.

┌──(root㉿kali)-[/home/kali]
└─# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::e9e0:a628:3268:d555  prefixlen 64  scopeid 0x20<link>
        inet6 fd00::7648:cc8d:8ce9:810c  prefixlen 64  scopeid 0x0<global>
        ether 08:00:27:ad:25:87  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 3314 (3.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 26  bytes 4610 (4.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 8  bytes 480 (480.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 480 (480.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether f2:d4:bd:ed:67:f3  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Теперь я включаю режим мониторинга на беспроводном адаптере, вводя следующие команды.

> ifconfig wlan0 down
> iwconfig wlan0 mode monitor
> ifconfig wlan0 up

Беспроводной адаптер переключается в режим мониторинга, как показано ниже.

┌──(root㉿kali)-[/home/kali]
└─# ifconfig wlan0 down
                                                                                                                                                                                                                                            
┌──(root㉿kali)-[/home/kali]
└─# iwconfig wlan0 mode monitor
                                                                                                                                                                                                                                            
┌──(root㉿kali)-[/home/kali]
└─# ifconfig wlan0 up          
                                                                                                                                                                                                                                            
┌──(root㉿kali)-[/home/kali]
└─# iwconfig                   
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11  Mode:Monitor  Frequency:2.412 GHz  Tx-Power=20 dBm   
          Retry short limit:7   RTS thr=2347 B   Fragment thr:off
          Power Management:off

Теперь, если я введу команду ifconfig, MAC-адрес исчезает. Смотрите трассировку ниже.

┌──(root㉿kali)-[/home/kali]
└─# ifconfig         
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::e9e0:a628:3268:d555  prefixlen 64  scopeid 0x20<link>
        inet6 fd00::7648:cc8d:8ce9:810c  prefixlen 64  scopeid 0x0<global>
        ether 08:00:27:ad:25:87  txqueuelen 1000  (Ethernet)
        RX packets 6  bytes 3314 (3.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28  bytes 4830 (4.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 8  bytes 480 (480.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 480 (480.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        unspec F2-D4-BD-ED-67-F3-00-9F-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Пожалуйста, помогите мне. Эта проблема мешает моим учебам в области кибербезопасности.

Строка с MAC-адресом все еще присутствует в вашем выводе:

unspec F2-D4-BD-ED-67-F3-00-9F-00-00-00-00-00-00-00-00

Режим мониторинга буквально означает, что интерфейс больше не использует эмулированные Ethernet (802.3) кадры – он теперь отправляет/принимает сырые 802.11 кадры (плюс дополнительную метаданных ‘radiotap’) – и, следовательно, это больше не тип ether, а вместо этого становится типом ieee802.11/radiotap; типом, который ifconfig не распознает.

Различные типы ссылок могут иметь адреса MAC разных размеров (например, FireWire использует 64/128-битные), поэтому инструменты, такие как ifconfig, должны знать о каждом типе ссылки: какой длины должен быть его адрес MAC, должен ли он быть отформатирован в шестнадцатеричном, ASCII или восьмеричном формате и т.д. В данном случае ifconfig не знает правильного имени и не знает, как отформатировать адрес, поэтому он выдает вам unspec и “наилучшие попытки” отображения полного 16-байтового буфера, который он получает от ОС.

(Усложняя проблему, ifconfig использует устаревший интерфейс SIOCGIFHWADDR, который принимает буфер фиксированного размера и предоставляет только тип ссылки, но не размер адреса, поэтому все 16 байт должны быть показаны для неизвестных типов ссылок. Более новый интерфейс “netlink” хотя бы сообщил бы программе, какой длины фактически поле IFLA_ADDRESS.)

Более современные инструменты, такие как ip link (из iproute2), знают, как отображать адреса 802.11:

$ ip link
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state ...
    link/ether 28:df:eb:13:2a:81 brd ff:ff:ff:ff:ff:ff

$ sudo iw phy phy0 interface add mon0 type monitor
$ ip link
15: mon0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT ...
    link/ieee802.11/radiotap 28:df:eb:13:2a:81 brd ff:ff:ff:ff:ff:ff

$ sudo iw mon0 del

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

Ответ или решение

Когда вы работаете с Kali Linux и используете адаптер TP-Link TL-WN722N для обеспечения мониторного режима, часто возникают проблемы, связанные с отображением MAC-адреса. На первый взгляд, может показаться, что MAC-адрес пропадает, переходя в мониторный режим. Однако на самом деле это связано с тем, как различные интерфейсы и инструменты отображают информацию о сетевом адаптере.

Состояние сети до перехода в мониторный режим

В вашем первом выводе команды ifconfig, видно, что адаптер wlan0 имеет неопределенный (unspec) MAC-адрес, что является типичным в ситуации, когда драйвера или инструменты управления не могут корректно распознать информацию о состоянии адаптера. Адаптер только что инициализирован, и системы не смогли присвоить стандартный MAC-адрес.

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        unspec 06-F1-8D-DE-BA-70-00-94-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)

Однако, после перезагрузки, MAC-адрес успешно назначается, что видно в выводе:

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether f2:d4:bd:ed:67:f3  txqueuelen 1000  (Ethernet)

Проблема при переходе в мониторный режим

Когда вы переключаете адаптер в мониторный режим с помощью команд:

ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up

Вы меняете способ, которым адаптер обрабатывает пакеты. В мониторном режиме адаптер больше не работает в стандартном режиме Ethernet (802.3), а начинает принимать и отправлять "сырые" 802.11 кадры.

Это изменение повлияло на способ, которым ifconfig отображает информацию о сетевом интерфейсе. В результате вы видите следующий вывод:

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        unspec F2-D4-BD-ED-67-F3-00-9F-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)

Что означает, что ifconfig не распознает новый тип интерфейса, и в результате отображает "unspec" в качестве представления MAC-адреса.

Почему это случается?

  1. Неправильное распознавание типа интерфейса: Стандартные инструменты, такие как ifconfig, не умеют корректно отображать информацию для своеобразных типов интерфейсов, каковым является мониторный режим адаптера.

  2. Использование устаревших инструментов: ifconfig является устаревшим инструментом, который не совсем может справляться с новыми типов интерфейсов и методами обработки данных, в отличие от современных инструментов, таких как ip link.

Как это решить?

Рекомендуется использовать более современные инструменты для управления сетевыми интерфейсами. Например, вы можете использовать команды ip:

sudo ip link show wlan0

Или переключить интерфейс через iw:

sudo iw dev wlan0 interface add mon0 type monitor
sudo ip link set mon0 up

Теперь, используя ip link, вы сможете увидеть MAC-адрес вашего адаптера даже в мониторном режиме.

Заключение

Проблема с отсутствием отображения MAC-адреса вашего TP-Link TL-WN722N в мониторном режиме не является ошибкой самого адаптера. Это следствие несовместимости устаревших инструментов с новыми функциями сетевого интерфейса. Использование более современных подходов и инструментов управления сетью гарантирует, что вы сможете получать всю необходимую информацию корректно. Это знание, безусловно, улучшит ваш опыт в области кибербезопасности.

Оцените материал
Добавить комментарий

Капча загружается...