Alles wat jy wou weet oor die MAC-adres

Alles wat jy wou weet oor die MAC-adresAlmal weet dat hierdie ses grepe, wat gewoonlik in heksadesimale formaat vertoon word, by die fabriek aan die netwerkkaart toegewys word en oënskynlik willekeurig is. Sommige mense weet dat die eerste drie grepe van die adres die vervaardiger-ID is, en die oorblywende drie grepe word aan hulle toegewys. Dit is ook bekend dat jy jouself kan stel willekeurig adres. Baie mense het gehoor van "ewekansige adresse" in Wi-Fi.

Kom ons vind uit wat dit is.

MAC-adres (mediatoegangsbeheeradres) is 'n unieke identifiseerder wat aan 'n netwerkadapter toegeken word, wat gebruik word in netwerke van IEEE 802-standaarde, hoofsaaklik Ethernet, Wi-Fi en Bluetooth. Amptelik word dit die "EUI-48 Type Identifier" genoem. Uit die naam is dit duidelik dat die adres 48 bisse lank is, d.w.s. 6 grepe. Daar is geen algemeen aanvaarde standaard vir die skryf van 'n adres nie (teenoor 'n IPv4-adres, waar oktette altyd deur kolletjies geskei word). Dit word gewoonlik geskryf as ses heksadesimale getalle geskei deur 'n dubbelpunt: 00:AB:CD:EF:11: 22, hoewel sommige toerustingvervaardigers die notasie 00 -AB-CD-EF-11-22 en selfs 00ab.cdef.1122 verkies.

Histories is adresse in die ROM van die netwerkkaartskyfiestel ingeflits sonder die vermoë om dit te verander sonder 'n flitsprogrammeerder, maar deesdae kan die adres programmaties vanaf die bedryfstelsel verander word. U kan die MAC-adres van 'n netwerkkaart handmatig in Linux en MacOS (altyd), Windows (byna altyd, as die bestuurder dit toelaat), Android (slegs gewortel) instel; Met iOS (sonder wortel) is so 'n truuk onmoontlik.

Adresstruktuur

Die adres bestaan ​​uit 'n deel van die vervaardiger se identifiseerder, OUI, en 'n identifiseerder wat deur die vervaardiger toegeken is. Toewysing van OUI (Organisatories Unieke Identifiseerder) identifiseerders besig met IEEE organisasie. Trouens, sy lengte kan nie net 3 grepe (24 bisse) wees nie, maar 28 of 36 bisse, waarvandaan blokke (MAC-adresblok, MA) adresse van tipes Groot (MA-L), Medium (MA-M) en Klein word onderskeidelik gevorm (MA-S). Die grootte van die uitgereikte blok, in hierdie geval, sal 24, 20, 12 bisse of 16 miljoen, 1 miljoen, 4 duisend adresse wees. Daar is tans ongeveer 38 duisend blokke versprei, dit kan bekyk word met behulp van talle aanlyn gereedskap, byvoorbeeld IEEE of Wireshark.

Wie besit die adresse?

Maklike verwerking van publiek beskikbaar databasisse aflaai IEEE verskaf nogal baie inligting. Sommige organisasies het byvoorbeeld baie OUI-blokke vir hulself geneem. Hier is ons helde:

Verkoper
Aantal blokke/rekords
Aantal adresse, miljoen

Cisco Systems Inc
888
14208

appel
772
12352

Samsung
636
10144

Huawei Technologies Co.Ltd
606
9696

Intel Corporation
375
5776

ARRIS Group Inc.
319
5104

Nokia Corporation
241
3856

Privaat
232
2704

Texas Instruments
212
3392

zte korporasie
198
3168

IEEE Registrasie Owerheid
194
3072

Hewlett Packard
149
2384

Hon Hai Precision
136
2176

TP-LINK
134
2144

Dell Inc.
123
1968

Juniper Networks
110
1760

Sagemcom Breëband SAS
97
1552

Fiberhome Telecommunication Technologies Co. BPK
97
1552

Xiaomi Communications Co Ltd
88
1408

Guangdong Oppo Mobile Telecommunications Corp.Ltd
82
1312

Google het net 40 van hulle, en dit is nie verbasend nie: hulle produseer self nie baie netwerktoestelle nie.

MA-blokke word nie gratis verskaf nie, hulle kan teen 'n redelike prys (sonder 'n intekenfooi) vir onderskeidelik $3000, $1800 of $755 gekoop word. Interessant genoeg, vir addisionele geld (per jaar) kan jy "wegsteek" van openbare inligting oor die toegekende blok koop. Daar is nou 232 van hulle, soos hierbo gesien kan word.

Wanneer gaan ons MAC-adresse opraak?

Ons is almal redelik moeg vir die stories wat al 10 jaar aan die gang is dat "IPv4-adresse op die punt is om op te raak." Ja, nuwe IPv4-blokke is nie meer maklik om te verkry nie. Dit is bekend dat IP-adresse uiters oneweredig versprei; Daar is reusagtige en onderbenutte blokke wat deur groot korporasies en Amerikaanse regeringsagentskappe besit word, maar met min hoop om dit aan behoeftiges te herverdeel. Die verspreiding van NAT, CG-NAT en IPv6 het die probleem van 'n tekort aan openbare adresse minder akuut gemaak.

'n MAC-adres het 48 bisse, waarvan 46 as "nuttig" beskou kan word (hoekom? lees verder), wat 246 of 1014 adresse gee, wat 214 keer meer is as die IPv4-adresspasie.
Tans is ongeveer 'n half triljoen adresse versprei, of slegs 0.73% van die totale volume. Ons is nog baie, baie ver daarvan om uit MAC-adresse te raak.

Randomness stukkies

Daar kan aanvaar word dat die OUI's ewekansig versprei word, en die verkoper ken dan ook lukraak adresse toe aan individuele netwerktoestelle. Is dit so? Kom ons kyk na die verspreiding van bisse in die databasisse van MAC-adresse van 802.11-toestelle tot my beskikking, ingesamel deur werkende magtigingstelsels in draadlose netwerke WNAM. Die adresse behoort aan regte toestelle wat oor etlike jare in drie lande aan Wi-Fi gekoppel is. Daarbenewens is daar 'n klein databasis van 802.3 bedrade LAN-toestelle.

Kom ons breek elke MAC-adres (ses grepe) van elk van die monsters af in bisse, grepe vir grepe, en kyk na die voorkomsfrekwensie van die "1" bis in elk van die 48 posisies. As die bietjie op 'n heeltemal arbitrêre manier ingestel is, moet die waarskynlikheid om 'n "1" te kry 50% wees.

Wi-Fi-keuse nr. 1 (RF)
Wi-Fi-monster nr. 2 (Belarus)
Wi-Fi-keuse nr. 3 (Oesbekistan)
LAN-steekproefneming (RF)

Aantal rekords in die databasis
5929000
1274000
366000
1000

Bietjie nommer:
% bietjie "1"
% bietjie "1"
% bietjie "1"
% bietjie "1"

1
48.6%
49.2%
50.7%
28.7%

2
44.8%
49.1%
47.7%
30.7%

3
46.7%
48.3%
46.8%
35.8%

4
48.0%
48.6%
49.8%
37.1%

5
45.7%
46.9%
47.0%
32.3%

6
46.6%
46.7%
47.8%
27.1%

7
0.3%
0.3%
0.2%
0.7%

8
0.0%
0.0%
0.0%
0.0%

9
48.1%
50.6%
49.4%
38.1%

10
49.1%
50.2%
47.4%
42.7%

11
50.8%
50.0%
50.6%
42.9%

12
49.0%
48.4%
48.2%
53.7%

13
47.6%
47.0%
46.3%
48.5%

14
47.5%
47.4%
51.7%
46.8%

15
48.3%
47.5%
48.7%
46.1%

16
50.6%
50.4%
51.2%
45.3%

17
49.4%
50.4%
54.3%
38.2%

18
49.8%
50.5%
51.5%
51.9%

19
51.6%
53.3%
53.9%
42.6%

20
46.6%
46.1%
45.5%
48.4%

21
51.7%
52.9%
47.7%
48.9%

22
49.2%
49.6%
41.6%
49.8%

23
51.2%
50.9%
47.0%
41.9%

24
49.5%
50.2%
50.1%
47.5%

25
47.1%
47.3%
47.7%
44.2%

26
48.6%
48.6%
49.2%
43.9%

27
49.8%
49.0%
49.7%
48.9%

28
49.3%
49.3%
49.7%
55.1%

29
49.5%
49.4%
49.8%
49.8%

30
49.8%
49.8%
49.7%
52.1%

31
49.5%
49.7%
49.6%
46.6%

32
49.4%
49.7%
49.5%
47.5%

33
49.4%
49.8%
49.7%
48.3%

34
49.7%
50.0%
49.6%
44.9%

35
49.9%
50.0%
50.0%
50.6%

36
49.9%
49.9%
49.8%
49.1%

37
49.8%
50.0%
49.9%
51.4%

38
50.0%
50.0%
49.8%
51.8%

39
49.9%
50.0%
49.9%
55.7%

40
50.0%
50.0%
50.0%
49.5%

41
49.9%
50.0%
49.9%
52.2%

42
50.0%
50.0%
50.0%
53.9%

43
50.1%
50.0%
50.3%
56.1%

44
50.1%
50.0%
50.1%
45.8%

45
50.0%
50.0%
50.1%
50.1%

46
50.0%
50.0%
50.1%
49.5%

47
49.2%
49.4%
49.7%
45.2%

48
49.9%
50.1%
50.7%
54.6%

Hoekom so onreg in 7 en 8 stukkies? Daar is amper altyd nulle.

Inderdaad, die standaard definieer hierdie stukkies as spesiaal (Wikipedia):
Alles wat jy wou weet oor die MAC-adres

Die agtste (van die begin af) bis van die eerste greep van die MAC-adres word die Unicast/Multicast-bis genoem en bepaal watter tipe raam (raam) versend word met hierdie adres, gereelde (0) of uitsaai (1) (multicast of uitsaai). Vir normale, unicast-netwerkadapter-kommunikasie, is hierdie bis ingestel op "0" in alle pakkies wat daarheen gestuur word.

Die sewende (van die begin af) bis van die eerste greep van die MAC-adres word die U/L (Universal/Plaaslik) bis genoem en bepaal of die adres globaal uniek (0), of plaaslik uniek (1) is. By verstek is alle "vervaardiger-gestikte" adresse wêreldwyd uniek, so die oorgrote meerderheid van die versamelde MAC-adresse bevat die sewende bis wat op "0" gestel is. In die tabel van toegewysde OUI-identifiseerders het slegs ongeveer 130 inskrywings 'n U/L-bietjie van "1", en dit is blykbaar blokke MAC-adresse vir spesiale behoeftes.

Van die sesde tot die eerste bisse van die eerste grepe, die bisse van die tweede en derde grepe in die OUI-identifiseerders, en selfs meer nog die bisse in die 4-6 grepe van die adres wat deur die vervaardiger toegewys is, word min of meer eweredig versprei .

Dus, in die regte MAC-adres van die netwerkadapter, is die bisse eintlik ekwivalent en het geen tegnologiese betekenis nie, met die uitsondering van twee diensbisse van die hoë greep.

voorkoms

Wonder watter vervaardigers van draadlose toerusting die gewildste is? Kom ons kombineer die soektog in die OUI-databasis met die data van monster nr. 1.

Verkoper
Aandeel van toestelle, %

appel
26,09

Samsung
19,79

Huawei Technologies Co Ltd
7,80

Xiaomi Communications Co Ltd
6,83

sony mobiele kommunikasie inc
3,29

LG Electronics (mobiele kommunikasie)
2,76

ASUSTek REKENAAR INC.
2,58

TCT Mobile Bpk
2,13

zte korporasie
2,00

nie in die IEEE-databasis gevind nie
1,92

Lenovo Mobiele Kommunikasie Tegnologie Bpk.
1,71

HTC Corporation
1,68

Murata-vervaardiging
1,31

InPro Komm
1,26

Microsoft Corporation
1,11

Shenzhen TINNO Mobile Technology Corp.
1,02

Motorola (Wuhan) Mobility Technologies Communication Co. Bpk.
0,93

Nokia Corporation
0,88

Sjanghai Wind Technologies Co. Bpk
0,74

Lenovo Mobile Communication (Wuhan) Company Limited
0,71

Praktyk toon dat hoe welvarender die kontingent van draadlose netwerk-intekenare op 'n gegewe plek is, hoe groter is die aandeel van Apple-toestelle.

Uniekheid

Is MAC-adresse uniek? In teorie, ja, aangesien elke toestelvervaardiger (MA-blokeienaar) 'n unieke adres moet verskaf vir elk van die netwerkadapters wat dit vervaardig. Sommige chip vervaardigers, naamlik:

  • 00:0A:F5 Airgo Networks, Inc. (nou Qualcomm)
  • 00:08:22 InPro Comm (nou MediaTek)

stel die laaste drie grepe van die MAC-adres op 'n ewekansige nommer, blykbaar na elke toestel herlaai. Daar was 1 duisend sulke adresse in my monster nr. 82.

Jy kan natuurlik vir jou 'n vreemde, nie-unieke adres stel deur dit doelgerig "soos jou buurman s'n" te stel, dit met 'n snuffel te identifiseer of dit lukraak te kies. Dit is ook moontlik om per ongeluk vir jouself 'n nie-unieke adres te stel deur byvoorbeeld 'n rugsteunkonfigurasie van 'n router soos Mikrotik of OpenWrt te herstel.

Wat sal gebeur as daar twee toestelle op die netwerk is met dieselfde MAC-adres? Dit hang alles af van die logika van die netwerktoerusting (bedrade router, draadlose netwerkbeheerder). Heel waarskynlik sal albei toestelle óf nie werk nie óf sal met tussenposes werk. Uit die oogpunt van IEEE-standaarde word voorgestel dat beskerming teen MAC-adres-spoofing opgelos word deur byvoorbeeld MACsec of 802.1X te gebruik.

Wat as jy 'n MAC installeer met die sewende of agtste bis ingestel op "1", d.w.s. plaaslike of multicast adres? Waarskynlik sal u netwerk nie hieraan aandag gee nie, maar formeel sal so 'n adres nie aan die standaard voldoen nie, en dit is beter om dit nie te doen nie.

Hoe randomisering werk

Ons weet dat om te verhoed dat mense se bewegings dopgehou word deur luggolwe te skandeer en te versamel, gebruik slimfoon-MAC-bedryfstelsels al 'n paar jaar randomiseringstegnologie. Teoreties, wanneer die luggolwe geskandeer word op soek na bekende netwerke, stuur die slimfoon 'n pakkie (groep pakkies) van die 802.11-sondeversoektipe met die MAC-adres as die bron:

Alles wat jy wou weet oor die MAC-adres

Geaktiveerde ewekansigheid laat jou toe om nie die "gestikte" een te spesifiseer nie, maar 'n ander pakkiebronadres, wat verander met elke skanderingsiklus, met verloop van tyd, of op 'n ander manier. Werk dit? Kom ons kyk na die statistieke van MAC-adresse wat uit die lug versamel is deur die sogenaamde "Wi-Fi Radar":

Hele monster
Monster slegs met nul 7de bis

Aantal rekords in die databasis
3920000
305000

Bietjie nommer:
% bietjie "1"
% bietjie "1"

1
66.1%
43.3%

2
66.5%
43.4%

3
31.7%
43.8%

4
66.6%
46.4%

5
66.7%
45.7%

6
31.9%
46.4%

7
92.2%
0.0%

8
0.0%
0.0%

9
67.2%
47.5%

10
32.3%
45.6%

11
66.9%
45.3%

12
32.3%
46.8%

13
32.6%
50.1%

14
33.0%
56.1%

15
32.5%
45.0%

16
67.2%
48.3%

17
33.2%
56.9%

18
33.3%
56.8%

19
33.3%
56.3%

20
66.8%
43.2%

21
67.0%
46.4%

22
32.6%
50.1%

23
32.9%
51.2%

24
67.6%
52.2%

25
49.8%
47.8%

26
50.0%
50.0%

27
50.0%
50.2%

28
50.0%
49.8%

29
50.0%
49.4%

30
50.0%
50.0%

31
50.0%
49.7%

32
50.0%
49.9%

33
50.0%
49.7%

34
50.0%
49.6%

35
50.0%
50.1%

36
50.0%
49.5%

37
50.0%
49.9%

38
50.0%
49.8%

39
50.0%
49.9%

40
50.0%
50.1%

41
50.0%
50.2%

42
50.0%
50.2%

43
50.0%
50.1%

44
50.0%
50.1%

45
50.0%
50.0%

46
50.0%
49.8%

47
50.0%
49.8%

48
50.1%
50.9%

Die prentjie is heeltemal anders.

Die 8ste bis van die eerste greep van die MAC-adres stem steeds ooreen met die Unicast-aard van die SRC-adres in die ondersoekversoekpakket.

Die 7de bis is in 92.2% van gevalle op Plaaslik gestel, d.w.s. Met 'n redelike mate van selfvertroue kan ons aanneem dat presies soveel van die versamelde adresse ewekansig is, en minder as 8% werklik is. In hierdie geval val die verspreiding van bisse in die OUI vir sulke werklike adresse ongeveer saam met die data in die vorige tabel.

Watter vervaardiger, volgens die OUI, besit die ewekansige adresse (d.i. met die 7de bietjie in "1")?

Vervaardiger deur OUI
Deel onder alle adresse

nie in die IEEE-databasis gevind nie
62.45%

Google Inc.
37.54%

die res
0.01%

Boonop behoort alle ewekansige adresse wat aan Google toegeken is aan dieselfde OUI met die voorvoegsel DA:A1:19. Wat is hierdie voorvoegsel? Kom ons kyk in Android bronne.

private static final MacAddress BASE_GOOGLE_MAC = MacAddress.fromString("da:a1:19:0:0:0");

Stock Android gebruik 'n spesiale, geregistreerde OUI wanneer daar na draadlose netwerke gesoek word, een van die min met die sewende bisset.

Bereken regte MAC vanaf ewekansige een

Kom ons kyk daar:

private static final long VALID_LONG_MASK = (1L << 48) - 1;
private static final long LOCALLY_ASSIGNED_MASK = MacAddress.fromString("2:0:0:0:0:0").mAddr;
private static final long MULTICAST_MASK = MacAddress.fromString("1:0:0:0:0:0").mAddr;

public static @NonNull MacAddress createRandomUnicastAddress(MacAddress base, Random r) {
        long addr;
        if (base == null) {
            addr = r.nextLong() & VALID_LONG_MASK;
        } else {
            addr = (base.mAddr & OUI_MASK) | (NIC_MASK & r.nextLong());
        }
        addr |= LOCALLY_ASSIGNED_MASK;
        addr &= ~MULTICAST_MASK;
        MacAddress mac = new MacAddress(addr);
        if (mac.equals(DEFAULT_MAC_ADDRESS)) {
            return createRandomUnicastAddress(base, r);
        }
        return mac;
    }

Die hele adres, of sy onderste drie grepe, is suiwer Random.nextLong(). "Eiendomsherwinning van regte MAC" is 'n bedrogspul. Met 'n hoë mate van selfvertroue kan ons verwag dat Android-foonvervaardigers ander, ongeregistreerde OUI's gebruik. Ons het nie die iOS-bronkode nie, maar heel waarskynlik word 'n soortgelyke algoritme daar gebruik.

Bogenoemde kanselleer nie die werk van ander meganismes vir de-anonimisering van Wi-Fi-intekenare nie, gebaseer op die ontleding van ander velde van die ondersoekversoekraam, of korrelasie van die relatiewe frekwensie van versoeke wat deur die toestel gestuur word. Dit is egter uiters problematies om 'n intekenaar met behulp van eksterne middele betroubaar op te spoor. Die data wat ingesamel word, sal meer geskik wees vir die ontleding van gemiddelde/pieklading volgens plek en tyd, gebaseer op groot getalle, sonder verwysing na spesifieke toestelle en mense. Slegs diegene "binne", die vervaardigers van mobiele bedryfstelsels self en geïnstalleerde toepassings het akkurate data.

Wat kan gevaarlik wees as iemand anders jou toestel se MAC-adres ken? Ontkenning van diensaanvalle kan vir bedrade en draadlose netwerke geloods word. Vir 'n draadlose toestel is dit boonop met 'n mate van waarskynlikheid moontlik om die oomblik van sy verskyning op die plek waar die sensor geïnstalleer is, op te teken. Deur die adres te bedrieg, kan jy probeer om te "voorgee" dat jy jou toestel is, wat net kan werk as geen bykomende sekuriteitsmaatreëls gebruik word nie (magtiging en/of enkripsie). 99.9% van mense hier het niks om oor bekommerd te wees nie.

Die MAC-adres is meer ingewikkeld as wat dit lyk, maar eenvoudiger as wat dit kan wees.

Bron: will.com

Voeg 'n opmerking