• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Заметка Создаём программу, которая меняет MAC Адрес

Темы, которые НЕ подходят по объему под префикс "Статья"
Hello. В данной статье мы рассмотрим как можно менять MAC Адрес. MAC Адреса бывают у роутеров, сетевых карт и т.д. Подробнее -

MAC Адрес выглядит вот так:

Find-the-MAC-Address-of-Your-Computer-Step-36.jpg



Менять MAC Адрес очень легко, давайте сделаем это на кали:

Screenshot_2021-09-20_09_08_04.png


Эти 3 команды, могут изменять MAC Адрес. В нашем случаем, мы изменили MAC Адрес интерфейса eth0.

sudo ifconfig eth0 down - Отключает данный интерфейс - это необходимо, когда вы хотите изменить MAC Адрес;

sudo ifconfig eth0 hw ether 00:11:22:33:44:99 - Изменяет ваш текущий MAC Адрес;


sudo ifconfig eth0 up - Включает данный интерфейс;

Чтобы посмотреть, изменился ли наш MAC Адрес, наберите ifconfig.


Теперь пишем на Питоне
Теперь мы знаем как можно изменить MAC адрес в терминале. Давайте напишем скрипт на питоне, который тоже может изменять MAC Адрес.

Для этого существует разные библиотеки, которые позволяют работать с системными командами, но в данной статье мы будем использовать subproccess.

Python:
#!/usr/bin/env python3
import subprocess

mac = "00:11:22:33:44:11"
interface = "eth0"
super_user = "sudo"

# Команды Linux'a
subprocess.call([super_user, "ifconfig", interface, "down"])
subprocess.call([super_user, "ifconfig", interface, "hw", "ether", mac])
subprocess.call([super_user, "ifconfig", interface, "up"])

Итог:

Screenshot_2021-09-20_09_19_36.png


Как мы видим, программа работает!

Переменная mac - Мак Адрес, который вы хотите изменить
Переменная interface - Интерфейс, в нашем случае eth0
Переменная super_user - Только root может запускать команды;
subproccess.call - запускает системные команды, можно писать в виде списка


Это была небольшая статья, мы можем теперь менять Мак Адреса на Линуксе и на питоне. В следующей статье мы улучшим эту программу, например, сделаем это все на GUI. Надеюсь, статья была полезной для вас :)
 
Последнее редактирование модератором:
  • Нравится
Реакции: Dzen и mcfly

mcfly

Green Team
08.09.2016
624
626
BIT
308
не пашет не 1 варик не второй mac то меняеться но инета нет
 

Pernat1y

Well-known member
05.04.2018
1 443
135
BIT
0
Попробуй потом ещё dhclient eth0

Слеш пропустил. Должно быть #!/usr/bin/env python3

Для этого существует библиотека subproccess
Не только. Есть много способов выполнить команду, начиная с os.system и заканчивая pty.spawn.

Переменная super_user - Только root может запускать команды;
Я-б в скрипт добавил проверку на то, от какого пользователя он запускается и добавлял 'sudo', если пользователь != root.
 
  • Нравится
Реакции: Muxtar

mcfly

Green Team
08.09.2016
624
626
BIT
308
да я просто сделал в nano /etc/NetworkManager/conf.d/mac.conf забил

[connection]
ethernet.cloned-mac-address=random
wifi.cloned-mac-address=random


далше перезапуск systemctl restart NetworkManager

и маки рандомные при каждом подключение
 
  • Нравится
Реакции: Muxtar

Muxtar

Green Team
02.06.2021
132
65
BIT
0
Это может из за отстутствия адаптера, сейчас у меня внешка
 
  • Нравится
Реакции: mcfly

mcfly

Green Team
08.09.2016
624
626
BIT
308
Сори, у меня не кали виртуалка, а сама кали. покажи скрин как выглядит категория wlan0, набрав ifconifg
C ноутбука пробовал kali стационарная стоит не на виртуалке внешний адаптер Alfa по eth0 все отлично а wlan0 никак.
 
  • Нравится
Реакции: Muxtar

mcfly

Green Team
08.09.2016
624
626
BIT
308
Hello. В данной статье, мы рассмотрим как можно менять MAC Адрес. MAC Адресов бывают у роутеров, сетевых картов и т.д. MAC Адрес выглядит вот таким:

Подробнее -

Посмотреть вложение 53364


Менять MAC Адрес очень легко, давайте сделаем это на кали:

Посмотреть вложение 53367

Эти 3 команды, могу изменять MAC Адрес. В нашем случаем, мы изменили MAC Адрес интерфейса eth0.

sudo ifconfig eth0 down - Отключает данный интерфейс, это необходимо когда вы хотите изменить MAC Адрес;

sudo ifconfig eth0 hw ether 00:11:22:33:44:99 - Изменяет ваш текущий MAC Адрес;


sudo ifconfig eth0 up - Включает данный интерфейс;

Чтобы посмотреть изменился ли наш MAC Адрес, это можно набрав ifconfig.


Теперь пишем на Питоне
Теперь мы знаем как можно изменить MAC адрес в терминале. Давайте напишем скрипт на питоне, который тоже может изменять MAC Адрес.

Для этого существует разные библиотеки, который позволяют работать с системными командами но в данной статье мы будем использовать subproccess.

Python:
#!/usr/bin/env python3
import subprocess

mac = "00:11:22:33:44:11"
interface = "eth0"
super_user = "sudo"

# Команды Linux'a
subprocess.call([super_user, "ifconfig", interface, "down"])
subprocess.call([super_user, "ifconfig", interface, "hw", "ether", mac])
subprocess.call([super_user, "ifconfig", interface, "up"])

Итог:

Посмотреть вложение 53368

Как мы видим, программа работает!

Переменная mac - Мак Адрес который вы хотите изменить
Переменная interface - Интерфейс, в нашем случае eth0
Переменная super_user - Только root может запускать команды;
subproccess.call - запускает системные команды, можно писать виде списка


Это была небольшая статья, мы можем теперь менять Мак Адреса на Линуксе и на питоне. В следующей статье, мы улучшим эту программу, например сделаем это все на GUI. Я думаю статья стало полезной для вас :)
За скрипт Спасибо работает
 
  • Нравится
Реакции: Muxtar
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!