Введение
Фильтрация MAC-адресов — это метод сетевой безопасности, при котором маршрутизатор или точка доступа настраивается на прием соединений только от устройств с определенными MAC-адресами. Хотя это может отпугнуть случайных злоумышленников, это не является надежной мерой безопасности, поскольку MAC-адреса легко изменить или "подделать" (spoofed).
В этой лабораторной работе вы научитесь обходить фильтрацию MAC-адресов. Сначала вы определите MAC-адрес уже авторизованного клиента, просмотрев сетевой скан, а затем используете инструмент macchanger для изменения MAC-адреса вашего сетевого интерфейса, чтобы он соответствовал авторизованному. Этот процесс демонстрирует фундаментальный метод в тестировании на проникновение в сеть и подчеркивает важность использования более надежных протоколов безопасности, таких как WPA2/WPA3.
Определение MAC-адреса авторизованного клиента из скана airodump-ng
На этом этапе ваша цель — найти MAC-адрес устройства, которое уже авторизовано для подключения к целевой сети. В реальных условиях вы бы использовали такой инструмент, как airodump-ng, для захвата трафика в реальном времени. Для этой лабораторной работы мы предоставили предварительно захваченный файл сканирования, который имитирует этот процесс.
Результаты сканирования сохраняются в файле CSV (Comma-Separated Values). Давайте изучим этот файл, чтобы найти необходимую информацию. Файл находится по пути ~/project/scans/network-scan-01.csv.
Используйте команду cat для отображения содержимого файла:
cat ~/project/scans/network-scan-01.csv
Вы увидите вывод, похожий на следующий:
BSSID, First time seen, Last time seen, channel, Speed, Privacy, Cipher, Authentication, Power, ## beacons, ## IV, LAN IP, id-length, ESSID, Key,Station MAC, First time seen, Last time seen, Power, ## packets, BSSID, Probed ESSIDs
00:11:22:33:44:55, 2023-10-27 10:00:00, 2023-10-27 10:05:00, 6, 54, WPA2, CCMP, PSK, -50, 100, 50, 192.168.1.1, 10, FilteredNet,,AA:BB:CC:DD:EE:FF, 2023-10-27 10:01:00, 2023-10-27 10:04:50, -45, 1234, 00:11:22:33:44:55,
В этом выводе найдите столбец Station MAC. Этот столбец содержит MAC-адреса клиентских устройств, подключенных к сети. MAC-адрес, который нам нужно клонировать, — это AA:BB:CC:DD:EE:FF. Запишите этот адрес для следующих шагов.
Отключение вашего беспроводного интерфейса с помощью ifconfig
На этом шаге вы подготовите ваш сетевой интерфейс к изменению MAC-адреса. Прежде чем вы сможете изменить MAC-адрес, интерфейс должен быть временно отключен. Для этого мы будем использовать команду ifconfig, которая является классическим инструментом для настройки сетевых интерфейсов.
Сначала давайте определим ваш сетевой интерфейс и посмотрим его текущий MAC-адрес. В этой лабораторной среде мы будем использовать интерфейс eth0.
Выполните следующую команду, чтобы увидеть детали eth0:
ifconfig eth0
Вывод будет выглядеть примерно так. Обратите внимание на поле ether, которое показывает текущий аппаратный MAC-адрес.
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 8 bytes 696 (696.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
Теперь отключите интерфейс eth0, используя аргумент down. Вам потребуются привилегии sudo для изменения состояния сетевых интерфейсов.
sudo ifconfig eth0 down
Эта команда не выдаст никакого вывода в случае успеха. Вы можете проверить, что интерфейс отключен, снова выполнив ifconfig eth0; вы заметите, что флаг UP исчезнет из первой строки.
Клонирование авторизованного MAC-адреса с помощью macchanger --mac
На этом шаге вы будете использовать утилиту macchanger для изменения MAC-адреса вашего интерфейса на тот, который вы определили ранее. Поскольку сетевой интерфейс отключен, вы можете безопасно изменять его свойства.
Инструмент macchanger позволяет просматривать и устанавливать MAC-адрес сетевого интерфейса. Мы будем использовать опцию --mac для установки конкретного адреса.
Используйте следующую команду, чтобы изменить MAC-адрес eth0 на AA:BB:CC:DD:EE:FF. Не забудьте использовать sudo, так как это привилегированная операция.
sudo macchanger --mac AA:BB:CC:DD:EE:FF eth0
После выполнения команды macchanger сообщит об изменениях. Вывод должен выглядеть примерно так:
Current MAC: 02:42:ac:11:00:02 (Unknown)
Permanent MAC: 02:42:ac:11:00:02 (Unknown)
New MAC: aa:bb:cc:dd:ee:ff (UNKNOWN)
Этот вывод подтверждает, что ваш MAC-адрес был успешно подделан. Permanent MAC — это исходный аппаратный адрес, а New MAC — это тот, который в настоящее время активен на интерфейсе.
Повторное включение вашего беспроводного интерфейса с помощью ifconfig
На этом шаге вы вернете сетевой интерфейс в онлайн-режим с новым MAC-адресом. После изменения MAC-адреса интерфейс должен быть повторно включен, чтобы применить изменения и разрешить ему взаимодействие в сети.
Используйте команду ifconfig с аргументом up для повторного включения интерфейса eth0:
sudo ifconfig eth0 up
Эта команда не должна выдавать никакого вывода. Чтобы убедиться, что интерфейс включен и имеет новый MAC-адрес, выполните ifconfig eth0 еще раз:
ifconfig eth0
Изучите вывод. Вы должны увидеть, что поле ether теперь отображает ваш новый, подделанный MAC-адрес, а флаг UP вернулся в первую строку.
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 172.17.255.255
ether aa:bb:cc:dd:ee:ff txqueuelen 0 (Ethernet)
RX packets 8 bytes 696 (696.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-адресу. Поскольку MAC-адрес вашего устройства теперь совпадает с одним из разрешенных в сети, подключение будет принято.
Поскольку мы находимся в симулированной среде, мы не можем подключиться к реальной сети Wi-Fi. Вместо этого мы запустим локальный скрипт для проверки правильности установки MAC-адреса eth0 на целевой адрес.
Сначала создайте небольшой скрипт оболочки для выполнения этой проверки. Используйте редактор nano для создания файла с именем check_connection.sh:
nano check_connection.sh
Теперь скопируйте и вставьте следующее содержимое скрипта в редактор nano:
#!/bin/bash
CURRENT_MAC=$(ip addr show eth0 | grep 'link/ether' | awk '{print $2}' | tr '[:lower:]' '[:upper:]')
TARGET_MAC="AA:BB:CC:DD:EE:FF"
if [ "$CURRENT_MAC" == "$TARGET_MAC" ]; then
echo "Connection successful! Your device is now authorized on the network."
echo "Current MAC: $CURRENT_MAC"
else
echo "Connection failed. Your MAC address does not match an authorized device."
echo "Current MAC: $CURRENT_MAC"
echo "Expected MAC: $TARGET_MAC"
fi
Сохраните файл и выйдите из nano, нажав Ctrl+X, затем Y и затем Enter.
Далее сделайте скрипт исполняемым:
chmod +x check_connection.sh
Наконец, запустите скрипт, чтобы проверить статус вашего подключения:
./check_connection.sh
Если вы выполнили все шаги правильно, вы увидите сообщение об успехе:
Connection successful! Your device is now authorized on the network.
Current MAC: AA:BB:CC:DD:EE:FF
Это подтверждает, что вы успешно подделали MAC-адрес.
Резюме
В этой лабораторной работе вы успешно продемонстрировали, как обойти фильтрацию по MAC-адресу в сети. Вы изучили полный, пошаговый процесс, который является основополагающим для тестирования сетевой безопасности.
Вы достигли этого путем:
- Идентификации MAC-адреса авторизованного клиента с помощью симулированного сканирования сети.
- Отключения вашего сетевого интерфейса с помощью
ifconfig. - Клонирования авторизованного MAC-адреса на ваш интерфейс с помощью
macchanger. - Повторного включения сетевого интерфейса для применения нового адреса.
- Проверки того, что ваш новый MAC-адрес предоставит вам доступ.
Ключевой вывод заключается в том, что фильтрация по MAC-адресу является формой "безопасности через неясность" (security through obscurity) и не должна быть единственной линией защиты для беспроводной сети. Для надежной безопасности всегда используйте сильные протоколы шифрования, такие как WPA2 или WPA3, с сложным, уникальным паролем.
