MAC address spoofing (Français)

État de la traduction:
Cet article est la version francophone de
MAC address spoofing
. Date de la dernière traduction: 2022-10-06. Vous pouvez aider à synchroniser la traduction s'il y a eu des
changements
dans la version anglaise.
Cet article liste plusieurs méthodes pour modifier une adresse MAC (Media Access Control).
Manuellement
Il y a deux méthodes pour modifier manuellement une adresse MAC: en
installant
iproute2
ou
macchanger
. Tous deux sont décris plus bas.
iproute2
Tout d'abord, vous pouvez vérifier votre adresse MAC actuelle avec la commande :
# ip link show
interface
où
interface
est le nom de votre
interface réseau
.
La section qui nous intéresse pour le moment est celle qui comporte "link/ether" suivi d'un nombre de 6 octets. Elle ressemblera probablement à quelque chose comme ceci :
link/ether 00:1d:98:5a:d1:3a
La première étape pour usurper l'adresse MAC est de mettre l'interface réseau hors service. Cela peut être accompli avec la commande :
# ip link set dev
interface
down
Ensuite, nous usurpons réellement notre MAC. N'importe quelle valeur hexadécimale fera l'affaire, mais certains réseaux peuvent être configurés pour refuser d'attribuer des adresses IP à un client dont le MAC ne correspond à aucun des fournisseurs connus. Par conséquent, à moins que vous ne contrôliez le(s) réseau(x) auquel(s) vous vous connectez, utilisez le préfixe MAC de n'importe quel fournisseur réel (en gros, les trois premiers octets), et utilisez des valeurs aléatoires pour les trois octets suivants. Pour plus d'informations, veuillez lire
Wikipedia:fr:Organizationally Unique Identifier
.
Pour changer le MAC, nous devons exécuter la commande :
# ip link set dev
interface
address
XX:XX:XX:XX:XX:XX
Où n'importe quelle valeur de 6 octets suffira pour
XX:XX:XX:XX:XX
.
La dernière étape consiste à remettre en service l'interface réseau. Ceci peut être accompli en exécutant la commande :
# ip link set dev
interface
up
Si vous voulez vérifier que votre MAC a été usurpé, exécutez simplement
ip link show
interface
à nouveau et vérifiez la valeur de 'link/ether'. Si cela a fonctionné, 'link/ether' devrait être l'adresse que vous avez décidé de changer.
macchanger
Une autre méthode utilise
macchanger
(alias GNU MAC Changer). Celui-ci fournit diverses fonctionnalités, telles que modifier une adresse pour correspondre à un certain fabriquant ou même de la rendre complètement aléatoire.
Installez
le paquet
macchanger
.
Le changement s'effectue par interface, spécifiez le nom de
l'interface réseau
en remplacement de
interface
dans chacune des commandes suivantes.
Pour un changement vers une adresse complètement aléatoire:
# macchanger -r
interface
Pour rendre aléatoire uniquement les octets spécifiques au fabriquant du matériel de l'adresse MAC courante (c'est-à-dire pour que la carte réseau apparaisse toujours comme étant de la même marque en cas de vérification), utilisez la commande:
# macchanger -e
interface
Pour modifier l'adresse vers une valeur spécifique:
# macchanger --mac=
XX:XX:XX:XX:XX:XX
interface
Où
XX:XX:XX:XX:XX:XX
est l'adresse MAC que vous désirez utiliser.
Enfin, pour revenir à la valeur originale, inscrite dans le hardware:
# macchanger -p
interface
Note
Un périphérique ne peut pas être «en cours d'utilisation» (connecté d'une quelconque façon ou avec une interface «up») lors du changement d'adresse MAC.
Automatiquement
systemd-networkd
systemd-networkd
prend en charge l'usurpation d'adresse MAC via
link files
. (consultez
systemd.link(5)
pour plus de détails).
Pour définir une adresse MAC statique usurpée :
/etc/systemd/network/00-default.link
[Match]
MACAddress=
original MAC
[Link]
MACAddress=
spoofed MAC
NamePolicy=kernel database onboard slot path
Pour rendre l'adresse MAC aléatoire à chaque démarrage, définissez
MACAddressPolicy=random
au lieu de
MACAddress=
spoofed MAC
.
systemd-udevd
udev
vous permet d'effectuer une usurpation d'adresse MAC en créant des règles udev. Utilisez l'attribut
address
pour faire correspondre le périphérique correct à son adresse MAC originale et la modifier à l'aide de la commande
ip
:
/etc/udev/rules.d/81-mac-spoof.rules
ACTION=="add", SUBSYSTEM=="net", ATTR{address}=="XX:XX:XX:XX:XX:XX", RUN+="/usr/bin/ip link set dev $name address YY:YY:YY:YY:YY:YY:YY"
où
XX:XX:XX:XX:XX:XX
est l'adresse MAC originale et
YYY:YY:YY:YY:YY
est la nouvelle, utilisez les minuscules pour l'adresse MAC.
Unité systemd
Création d'une unité
Vous trouverez ci-dessous deux exemples d'unités
systemd
pour changer une adresse MAC au démarrage, l'une définit un MAC statique en utilisant
ip
et l'autre utilise
macchanger
pour attribuer une adresse MAC aléatoire. Le
network-pre.target
de systemd est utilisé pour s'assurer que le MAC est changé avant le démarrage d'un gestionnaire de réseau comme
Netctl
ou
NetworkManager
, du service
systemd-networkd
ou
dhcpcd
.
iproute2
L'unité
systemd
définit une adresse MAC prédéfinie :
/etc/systemd/system/macspoof@.service
[Unit]
Description=MAC Address Change %I
Wants=network-pre.target
Before=network-pre.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device

[Service]
Type=oneshot
ExecStart=/usr/bin/ip link set dev %i address 36:aa:88:c8:75:3a
ExecStart=/usr/bin/ip link set dev %i up

[Install]
WantedBy=multi-user.target
macchanger
L'unité
systemd
définit une adresse aléatoire tout en préservant les octets d'origine du vendeur de la carte réseau. Assurez-vous que
macchanger
est
installé
:
/etc/systemd/system/macspoof@.service
[Unit]
Description=macchanger on %I
Wants=network-pre.target
Before=network-pre.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device

[Service]
ExecStart=/usr/bin/macchanger -e %I
Type=oneshot

[Install]
WantedBy=multi-user.target
Une adresse aléatoire complète peut être définie en utilisant l'option
-r
, consultez
#macchanger
.
Activer le service
Ajoutez l'interface réseau souhaitée au nom du service (par exemple,
eth0
) et
activez
le service (par exemple,
macspoof@eth0.service
).
Redémarrez, ou arrêtez et démarrez les services prérequis et requis dans l'ordre approprié. Si vous avez le contrôle de votre réseau, vérifiez que le MAC usurpé a été détecté par votre routeur en examinant les tables d'adresses statiques ou DHCP du routeur.
netctl interfaces
Vous pouvez utiliser un
netctl hook
pour exécuter une commande chaque fois qu'un profil netctl est relancé pour une interface réseau spécifique. Remplacez
interface
en conséquence :
/etc/netctl/interfaces/
interface
#!/usr/bin/env sh
/usr/bin/macchanger -r
interface
Rendez le script
exécutable
.
Source :
akendo.eu (archive)
NetworkManager
Consultez
NetworkManager (Français)#Configuration de la randomisation des adresses MAC
.
wpa_supplicant
wpa_supplicant peut utiliser une adresse MAC aléatoire pour chaque connexion ESS (AP) (consultez
[1]
pour plus de détails).
Ajoutez ceci à votre configuration :
/etc/wpa_supplicant/wpa_supplicant-wlan0.conf
mac_addr=1
preassoc_mac_addr=1
gas_rand_mac_addr=1
iwd
Pour randomiser l'adresse MAC au démarrage de iwd (consultez
iwd.config(5)
pour plus de détails) :
/etc/iwd/main.conf
[General]
AddressRandomization=once
AddressRandomizationRange=nic
La spécification de
AddressRandomizationRange
permet de contrôler la partie de l'adresse qui est randomisée. Si la valeur
nic
est définie, seuls les octets spécifiques à la carte réseau (les trois derniers octets) sont randomisés. L'adresse mac permanente de l'interface réseau est utilisée pour les 3 premiers octets. Si la valeur
full
est utilisée, les six octets de l'adresse sont randomisés.
Dépannage
La connexion à un réseau DHCPv4 échoue
Si vous ne pouvez pas vous connecter à un réseau DHCPv4 et que vous utilisez dhcpcd, qui est la valeur par défaut de NetworkManager, vous devrez peut-être
modifier la configuration de dhcpcd
pour obtenir un bail.
Voir aussi
Wikipedia:MAC spoofing
Page GitHub de Macchanger
]
Article sur DebianAdmin
avec plus d'options
macchanger
.