web-dev-qa-db-fra.com

Comment une page Web peut-elle obtenir l'adresse MAC?

J'étais connecté à mon routeur et remplissais certaines informations. J'ai cliqué sur un bouton et un champ a été automatiquement rempli avec l'adresse MAC de mon ordinateur. Comment est-ce possible? Présente-t-il un risque pour la sécurité?

Je suis connecté via VPN et mon ordinateur est à jour et fonctionne Microsoft Security Essentials (MSE). Existe-t-il un code JavaScript pouvant obtenir l'adresse MAC? L'adresse MAC est-elle envoyée dans un en-tête IP? J'ai été surpris de ne pas avoir au moins été invité à partager ces informations.

37
Celeritas

Ce n'est pas un risque pour la sécurité.

Le routeur regarde dans sa table ARP pour trouver l'adresse MAC de votre adresse IP. La raison pour laquelle il peut le faire, c'est parce que vous êtes connecté au routeur via la couche 2 dans le modèle OSI . Le routeur recherche simplement votre adresse IP dans le cache ARP pour trouver son adresse MAC. Un site Web sur Internet n'est pas connecté à votre réseau local et ne pourra pas déterminer votre adresse MAC.

De la même manière, vous depuis votre ordinateur déterminez l'adresse MAC de votre routeur en regardant dans le cache ARP de votre ordinateur. Si vous ouvrez votre invite de commande (cmd.exe sous Windows) et tapez "arp -a", vous verrez l'adresse MAC de votre routeur. Cela ne pose aucun risque pour la sécurité et est requis pour que le trafic IP fonctionne sur un réseau Ethernet.

54
Dog eat cat world

Il n'y a aucun risque ici.

Internet n'est pas seulement un protocole, mais une série de protocoles qui s'empilent les uns sur les autres. Les définitions exactes de chaque partie de la pile diffèrent quelque peu d'une personne à l'autre, mais les deux qui nous préoccupent ici sont assez bien définies: la couche de liaison et la couche résea. Selon qui vous demandez, ces couches ont des numéros différents, donc je vais utiliser les noms à la place.

couche de liaison définit comment obtenir un signal sur deux ordinateurs qui sont directement connectés d'une manière ou d'une autre. Ethernet en est un exemple, tout comme la famille 802.11 des protocoles sans fil; Je les énumère car ils utilisent des adresses MAC. PPP, qui est souvent utilisé par les modems, est un autre exemple de protocole de couche liaison, mais il n'utilise pas d'adresses MAC. Il existe également d'autres protocoles de couche liaison, mais je ne les aborderai pas ici.

couche résea définit comment obtenir un signal sur deux ordinateurs qui ne sont PAS directement connectés, en utilisant des ordinateurs qui sont directement connectés d'une manière ou d'une autre. C'est là que réside IP, et il n'utilise pas d'adresses MAC. * Les données doivent encore être transmises entre des machines qui sont directement connectées les unes aux autres, mais même si cela se fait en utilisant uniquement des protocoles qui utilisent des adresses MAC, il utilise le MAC les adresses des deux machines qui transmettent actuellement des informations entre elles, et non l'adresse MAC qui a tout déclenché. Votre adresse MAC n'est visible que par le tout premier maillon de la chaîne - celui entre votre ordinateur et le routeur - et elle en a légitimement besoin, car c'est ainsi qu'elle raconte les données de votre ordinateur en dehors des données des autres ordinateurs qui y sont connectés. Mais après cela, votre adresse a disparu.

La raison pour laquelle votre routeur connaît votre adresse MAC est que vous y êtes directement connecté, en utilisant la couche liaison (il peut aussi vous voir dans la couche réseau, c'est ainsi qu'il vous présente son interface, mais cela n'a pas d'importance ici). Il ne peut pas voir les adresses MAC de toute personne qui n'y est pas directement connectée, car ces informations sont perdues dans la couche réseau. ** Il en va de même pour les autres machines. Alors oui, votre routeur peut voir votre adresse MAC, mais personne d'autre ne peut le voir.

*: IPv4 n'utilise pas d'adresses MAC, et si vous n'êtes pas sûr de la version IP que vous utilisez, c'est probablement IPv4. IPv6 permet (mais ne nécessite pas) aux ordinateurs d'utiliser les adresses MAC de certaines manières, et certaines implémentations le font, mais cela a suscité beaucoup de controverses.

**: Encore une fois, cela suppose que vous n'utilisez pas une version IP qui fuit les informations d'adresse MAC.

18
The Spooniest