суббота, 23 августа 2014 г.

Как подменить MAC-адрес сетевого интерфейса на Linux


Как подменить MAC-адрес сетевого интерфейса на Linux

48-битный MAC-адрес (например, 8:04f:b5:5:56:a0) - это глобальный уникальный идентификатором, связанный с физическим сетевым интерфейсом, который присваивается производителем соответствующей сетевой карты. Высшие 24 биты в МАС-адрес (также известные как OUI или "Organizationally Unique Identifier") однозначно идентифицируют организацию, которая выдала МАС-адрес, так что не будет никакого конфликта между всеми существующими МАС-адресами.
Хотя МАС-адрес является аппаратным адресом назначенным

производителем, пользователи могут изменить эти данные. Эту практику часто называют "MAC address spoofing." В этом уроке я собираюсь показать, как обмануть МАС-адрес сетевого интерфейса на Linux.

Для чего подделывать MAC-адрес?

Есть несколько технических причин, по которым вам нужно изменить MAC-адрес. Некоторые интернет-провайдеры аутентифицируют соединение абонента в Интернете через МАС-адрес своего домашнего маршрутизатора. Предположим, ваш маршрутизатор просто сломан для такого скрипта. В то время как ваш провайдер восстанавливает свой доступ в Интернет с новым маршрутизатором, можно временно восстановить доступ к Интернету путем изменения MAC-адрес вашего компьютера для этого сломанного маршрутизатора.
Многие DHCP серверы берут IP-адреса на основе МАС-адресов. Предположим, по какой-либо причине вам нужно получить другой IP-адрес через DHCP, вместо имеющегося. Тогда вы можете обмануть свой MAC-адрес, чтобы получить новый IP-адрес через DHCP, а не ждать пока у текущего DHCP истечет срок.
Отложим технические причины в сторону, есть также законные причины конфиденциальности и безопасности, почему вам бы хотелось скрыть свой ​​реальный MAC-адрес. В отличие от вашего уровня-3 IP-адреса, который может меняться в зависимости от сети, к которой вы подключены, ваш MAC-адрес может однозначно идентифицировать вас, где бы вы ни находились. Называйте меня параноиком, но вы знаете, что это значит для вашей личной жизни. Существует также уязвимость, известную как piggybacking,где хакер на МАС-адрес в сети общественного WiFi может попытаеться выдать себя за вас с помощью MAC-адреса во время вашего отсутствия.

Как подделать временный MAC-адрес

В Linux вы можете переключить временный МАС-адрес во время работы. Обратите внимание, что вы потеряете подключение к сети на мгновение во время адресного перехода MAC. В этом случае измененный MAC-адрес может вернуться к исходному при перезагрузке. В Linux есть несколько простых способов изменить МАС-адрес во время работы.

Метод первый: iproute2

1
2
3
$ sudo ip link set dev eth0 down
$ sudo ip link set dev eth0 address 00:00:00:00:00:01
$ sudo ip link set dev eth0 up

Метод второй: macchanger

Утилита командной строки называется macchanger и позволяет изменять MAC-адреса из известного списка поставщиков.
Для установки macchanger на Debian, Ubuntu или Linux Mint:
1
$ sudo apt-get install macchanger
Для установки macchanger на Fedora:
1
$ sudo yum install macchanger
Для установки macchanger на CentOS или RHEL:
1
2
3
4
5
6
$ wget http://ftp.club.cc.cmu.edu/pub/gnu/macchanger/macchanger-1.6.0.tar.gz
$ tar xvfvz macchanger-1.6.0.tar.gz
$ cd macchanger-1.6.0
$ ./configure
$ make
$ sudo make install
Следующие примеры являются одними из обычных действий для macchanger. С macchanger вам больше не придется деактивировать/активировать сетевой интерфейс вручную.
Чтобы подделать MAC-адрес на другое значение:
1
$ sudo macchanger --mac=00:00:00:00:00:01 eth0
Чтобы подделать MAC-адрес в случайное значение, сохраняя тот же OUI:
1
$ sudo macchanger -e eth0
Чтобы подделать MAC-адрес на совершенно случайные величины:
1
$ sudo macchanger -r eth0
Чтобы получить все адреса OUI MAC, связанные с определенным поставщиком (например, Juniper):
1
$ macchanger -l | grep -i juniper

Чтобы показать первоначально постоянные и поддельные МАС-адреса:

1
$ macchanger -s eth0
1
2
Current MAC:   56:95:ac:ee:6e:77 (unknown)
Permanent MAC: 00:0c:29:97:68:02 (Vmware, Inc.)

Как подделать постоянный MAC-адрес

Если вы хотите обмануть свой MAC-адрес на постоянно, вы можете указать поддельный MAC-адрес в файлах конфигурации интерфейса. Например, если вы хотите изменить МАС-адрес eth0, выполните следующие действия.
В Fedora, CentOS или RHEL:
1
$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
1
2
DEVICE=eth0
MACADDR=00:00:00:00:00:01
Кроме того, можно создать пользовательский сценарий запуска в /etc/NetworkManager/dispatcher.d следующим образом, особенно если вы используете Network Manager. Я предполагаю, что вы уже установили macchanger.
1
$ sudo vi /etc/NetworkManager/dispatcher.d/000-changemac
1
2
3
4
5
6
7
#!/bin/bash
  
case "$2" in
    up)
        macchanger --mac=00:00:00:00:00:01 "$1"
        ;;
esac
1
$ sudo chmod 755 /etc/NetworkManager/dispatcher.d/000-changemac
На Debian, Ubuntu или Linux Mint: Создать пользовательский скрипт запуска в /etc/network/if-up.d/ следующим образом.
1
$ sudo vi /etc/network/if-up.d/changemac
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
#!/bin/sh
  
if [ "$IFACE" = eth0 ]; then
  ip link set dev "$IFACE" address 00:00:00:00:00:01
fi
1
$ sudo chmod 755 /etc/network/if-up.d/changemac

Комментариев нет:

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