Sve što ste željeli znati o MAC adresi

Sve što ste željeli znati o MAC adresiSvi znaju da je to šest bajtova, obično prikazanih u heksadecimalnom formatu, koji su dodeljeni mrežnoj kartici u fabrici i na prvi pogled deluju nasumično. Neki znaju da su prva tri bajta adrese identifikator proizvođača, dok ostala tri dodeljuju. Takođe je poznato da možete postaviti samo nasumičnu adresu. Mnogi su čuli i za 'nasumične adrese' u Wi-Fi-ju.

Pogledajmo šta to zapravo znači.

MAC adresa (media access control address) – jedinstveni identifikator dodeljen mrežnom adapteru, koristi se u mrežama standarda IEEE 802, uglavnom Ethernet, Wi-Fi i Bluetooth. Zvanično se naziva 'identifikator tipa EUI-48'. Iz naziva je očigledno da adresa ima dužinu od 48 bita, tj. 6 bajtova. Ne postoji opšteprihvaćeni standard za pisanje adrese (za razliku od IPv4 adrese, gde su okteti uvek razdvojeni tačkama). Obično se zapisuje kao šest heksadecimalnih brojeva, odvojenih dvotačkom: 00:AB:CD:EF:11:22, iako neki proizvođači opreme preferiraju format 00-AB-CD-EF-11-22 ili čak 00ab.cdef.1122.

Istorijski, adrese su bile ugrađene u ROM čipseta mrežne kartice bez mogućnosti menjanja bez fleš programatora, ali trenutno se adresa može promeniti softverski iz operativnog sistema. Ručno dodeliti MAC adresu mrežnoj kartici moguće je u Linuxu i MacOS-u (uvek), Windows-u (gotovo uvek, ako to dozvoli drajver), Android-u (samo rootovan); u iOS-u (bez roota) takav trik nije moguć.

Struktura adrese

Adresa se sastoji od dela identifikatora proizvođača, OUI, i identifikatora koji dodeljuje proizvođač. OUI identifikatori (Organizationally Unique Identifier) dodeljuje organizacija IEEE. U stvarnosti, njegova dužina može biti ne samo 3 bajta (24 bita), već i 28 ili 36 bita, od kojih se formiraju blokovi (MAC Address Block, MA) adresa tipova Veliki (MA-L), Srednji (MA-M) i Mali (MA-S) соответственно. Veličina dodeljenog bloka, u tom slučaju, iznosit će 24, 20, 12 bita ili 16 miliona, 1 milion, 4 hiljade adresa. Trenutno je dodeljeno oko 38 hiljada blokova, koje možete pronaći putem brojnih online alata, na primer kod IEEE ili Wireshark.

Kome pripadaju adrese

Neproporcionalna obrada javno dostupne baze podataka izvoza IEEE daje prilično mnogo informacija. Na primer, neke organizacije su sebi prisvojile mnogo OUI blokova. Evo naših junaka:

Proizvođač
Broj blokova/unančene
Broj adresa, mln.

Cisco Systems Inc
888
14208

Apple
772
12352

Samsung
636
10144

Huawei Technologies Co.Ltd
606
9696

Intel Corporation
375
5776

ARRIS Group Inc.
319
5104

Nokia Corporation
241
3856

Privatno
232
2704

Texas Instruments
212
3392

zte corporation
198
3168

IEEE Registration Authority
194
3072

Hewlett Packard
149
2384

Hon Hai Precision
136
2176

TP-LINK
134
2144

Dell Inc.
123
1968

Juniper Networks
110
1760

Sagemcom Broadband SAS
97
1552

Fiberhome Telecommunication Technologies Co. LTD
97
1552

Xiaomi Communications Co Ltd
88
1408

Guangdong Oppo Mobile Telecommunications Corp.Ltd
82
1312

Kod Googlea ih ima samo 40, i to nije iznenađujuće: sami ne proizvedu toliko mnogo mrežnih uređaja.

MA blokovi se ne предоставляются besplatno, mogu se kupiti po razumnim cijenama (bez pretplate) za 3000 $, 1800 $ ili 755 $ respektivno. Zanimljivo je da se uz dodatni novac (godišnje) može kupiti 'skrivanje' javnih informacija o dodeljenom bloku. Takvih trenutno ima, kao što se vidi gore, 232.

Kada će se završiti MAC adrese

Svi smo prilično umorni od neprestano ponavljanih priča u poslednjih 10 godina o tome da će 'IPv4 adrese ubrzo nestati'. Da, novi IPv4 blokovi se već teško dobijaju. Ipak, poznato je da su IP adrese raspoređene izuzetno nerazmjerno; postoje gigantski i malo korišćeni blokovi koji pripadaju velikim korporacijama i državnim institucijama SAD-a, iako bez posebne nade za njihovo preusmeravanje u korist onih kojima je potrebno. Širenje NAT, CG-NAT i IPv6 učinilo je problem nedostatka javnih adresa manje akutnim.

U MAC adresi ima 48 bita, od kojih se 'korisnima' može smatrati 46 (zašto? čitaj dalje), što daje 2^46 ili 10^14 adresa, što je 2^14 puta veće od IPv4 adresnog prostora.
Trenutno je raspoređeno otprilike pola triliona adresa, ili samo 0,73% od ukupnog volumena. Do isrcpljenja MAC adresa još ima jako, jako daleko.

Slučajnost bita

Može se pretpostaviti da su OUI raspoređeni slučajno, a dobavljač zatim takođe slučajno dodeljuje adrese pojedinačnim mrežnim uređajima. Je li to tako? Pogledajmo raspodelu bita u dostupnim bazama MAC adresa 802.11 uređaja, prikupljenih tokom rada sistema autorizacije u bežičnim mrežama WNAM. Adrese pripadaju stvarnim uređajima koji su se povezivali na Wi-Fi tokom nekoliko godina u tri zemlje. U dodatku ide mala baza 802.3 uređaja u žičnim lokalnim mrežama.

Razdelićemo svaku MAC adresu (šest bajtova) iz svake od uzoraka na bitove bajt po bajt, i pogledati učestalost pojave bita '1' na svakoj od 48 pozicija. Ako je bit postavljen potpuno nasumično, verovatnoća dobijanja '1' bi trebala biti 50%.

Uzorak Wi-Fi br. 1 (RF)
Odabir Wi-Fi br. 2 (Bjelorusija)
Odabir Wi-Fi br. 3 (Uzbekistan)
Odabir LAN (RF)

Broj unosa u bazi
5929000
1274000
366000
1000

Broj bita:
% bitova „1“
% bitova „1“
% bitova „1“
% bitova „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%

Odakle takva nepravda u 7. i 8. bitu? Tamo su gotovo uvijek nule.

Zaista, standard definira te bite kao posebne (Vikipedija):
Sve što ste željeli znati o MAC adresi

Osmi (od početka) bit prvog bajta MAC adrese naziva se Unicast/Multicast bit i određuje koji tip okvira (frame) se prenosi s tom adresom, obični (0) ili širokopojasni (1) (multicast ili broadcast). Za obično, unicast komuniciranje mrežnog adaptera, ovaj bit postavljen je na „0“ u svim paketima koji mu se šalju.

Sedmi (od početka) bit prvog bajta MAC adrese naziva se U/L (Univerzalni/Lokalni) bit i određuje je li adresa globalno jedinstvena (0) ili lokalno jedinstvena (1). Prema zadanim postavkama, sve „ugrađene od strane proizvođača“ adrese su globalno jedinstvene, pa stoga većina dodijeljenih MAC adresa sadrži sedmi bit postavljen na „0“. U tablici dodijeljenih identifikatora OUI samo otprilike 130 unosa ima U/L bit „1“, a izgleda da su to blokovi MAC adresa za specijalne potrebe.

Od šestog do prvog bita prvog bajta, bitovi drugog i trećeg bajta u OUI identifikatorima, a još više bitovi u 4-6 bajtovima adrese, koje dodjeljuje proizvođač, raspoređeni su više-manje ravnomjerno.

Dakle, u stvarnom MAC-adresu mrežnog adaptera bitovi su zapravo ekvivalentni i ne nose tehnološko značenje, osim dva servisna bita najvišeg bajta.

Raširenost

Zanimljivo je koji su proizvođači bežične opreme najpopularniji? Spojit ćemo pretraživanje u OUI bazi s podacima iz odabira br. 1.

Proizvođač
Dio uređaja, %

Apple
26,09

Samsung
19,79

Huawei Technologies Co. Ltd
7,80

Xiaomi Communications Co Ltd
6,83

Sony Mobile Communications Inc
3,29

LG Electronics (Mobilne komunikacije)
2,76

ASUSTek COMPUTER INC.
2,58

TCT mobile ltd
2,13

zte corporation
2,00

nije pronađeno u IEEE bazi
1,92

Lenovo Mobile Communication Technology Ltd.
1,71

HTC Corporation
1,68

Murata Manufacturing
1,31

InPro Comm
1,26

Microsoft Corporation
1,11

Shenzhen TINNO Mobile Technology Corp.
1,02

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

Nokia Corporation
0,88

Shanghai Wind Technologies Co. Ltd
0,74

Lenovo Mobile Communication (Wuhan) Company Limited
0,71

Praxis pokazuje da što je imućniji kontingent korisnika bežične mreže na tom mjestu, to je veći udio Apple uređaja.

Jedinstvenost

Jesu li MAC adrese jedinstvene? U teoriji da, budući da svaki proizvođač uređaja (vlasnik MAC bloka) mora osigurati jedinstvenu adresu za svaku od svojih mrežnih adaptera. Međutim, neki proizvođači čipova, naime:

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

postavljaju posljednja tri bajta MAC adrese na slučajni broj, očigledno nakon svake ponovne uspostave uređaja. U mom uzorku broj 1 pronađeno je 82 tisuće takvih adresa.

Naravno, možete sebi postaviti tuđu, ne jedinstvenu adresu putem namjernog postavljanja 'kao kod susjeda', određujući je svojim snifferom, ili birajući nasumično. Također je moguće slučajno postaviti ne jedinstvenu adresu, na primjer, vraćanjem sigurnosne kopije konfiguracije nekog usmjerivača poput Mikrotik ili OpenWrt.

Što će se dogoditi ako u mreži postoje dva uređaja s istom MAC adresom? Sve ovisi o logici mrežne opreme (žičnog usmjerivača, kontrolera bežične mreže). Najvjerojatnije, oba uređaja neće raditi ili će raditi s prekidima. S obzirom na IEEE standarde, zaštitu od krivotvorenja MAC adresa predlaže se riješiti, na primjer, pomoću MACsec ili 802.1X.

Što ako postavite MAC s postavljenim na '1' sedmim ili osamim bitom, tj. lokalnom ili multicast adresom? Vjerojatno vaša mreža na to neće obratiti pažnju, ali formalno takva adresa neće odgovarati standardu i bolje je to ne raditi.

Kako funkcionira randomizacija

Znamo da s ciljem sprječavanja praćenja kretanja ljudi skeniranjem etera i prikupljanjem MAC adresa operativni sustavi pametnih telefona već nekoliko godina koriste tehnologiju randomizacije. Teoretski, prilikom skeniranja etera u potrazi za poznatim mrežama, pametni telefon šalje paket (grupu paketa) tipa 802.11 probe request s MAC adresom kao izvorom:

Sve što ste željeli znati o MAC adresi

Uključena randomizacija omogućava postavljanje ne 'utvrđene', već neke druge adrese izvora paketa koja se mijenja pri svakom ciklusu skeniranja, tijekom vremena ili na neki drugi način. Funkcionira li to? Pogledajmo statistiku prikupljenih MAC adresa iz etera pomoću takozvanog 'Wi-Fi Radara':

Cijeli uzorak
Uzorak samo s nuliranim 7. bitom

Broj unosa u bazi
3920000
305000

Broj bita:
% bitova „1“
% bitova „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%

Slika je potpuno drugačija.

8. bit prvog bajta MAC adrese i dalje odgovara unicast prirodi SRC adrese u probe request paketu.

7. bit je u 92,2% slučajeva postavljen na lokalni, tj. s dovoljnom sigurnošću možemo reći da otprilike toliko prikupljenih adresa pripada randomiziranim, a manje od 8% stvarnim. Pri tome je raspodjela bitova u OUI za takve stvarne adrese otprilike usklađena s podacima iz prethodne tablice.

Kojem proizvođaču, prema OUI, pripadaju randomizirane adrese (tj. s 7. bitom na '1')?

Proizvođač prema OUI
Udio među svim adresama

nije pronađeno u IEEE bazi
62.45%

Google Inc.
37.54%

ostali
0.01%

Pri tome sve randomizirane adrese pripisane Google-u pripadaju jednom OUI s prefiksom DA:A1:19. Što je taj prefiks? Pogledajmo u izvorima Androida.

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

Stock Android u pretraživanju bežičnih mreža koristi poseban, registrirani OUI, jedan od rijetkih s postavljenim sedmim bitom.

Izračunati stvarni MAC iz nasumičnog

Pogledajmo i tamo:

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;
    }

Adresa u potpunosti, ili njezine donje tri bajta, je čista Random.nextLong(). "Patentirano obnavljanje stvarnog MAC-a" — prevara. S velikom sigurnošću se može očekivati da proizvođači Android telefona koriste i druge, neregistrirane OUI. Izvori iOS-a nam nisu dostupni, ali možemo pretpostaviti da je tamo korišten sličan algoritam.

Rečeno ne ukida rad drugih mehanizama deanonimizacije Wi-Fi korisnika, zasnovanih na analizi drugih polja probe request okvira, ili korelaciji relativne učestalosti poslatih zahteva od strane uređaja. Međutim, pouzdano praćenje korisnika spoljnim sredstvima je izuzetno komplikovano. Prikupljeni podaci više će odgovarati analizi prosečnog/pik trenutnog opterećenja po lokaciji i vremenu, na osnovu velikih brojeva, bez vezivanja za konkretne uređaje i ljude. Tačni podaci su samo kod onih koji su „unutra“, kod samih proizvođača mobilnih operativnih sistema, kod instaliranih aplikacija.

Šta može biti opasno u tome što neko drugi sazna MAC adresu vašeg uređaja? Za žične i bežične mreže može se organizovati napad „uskratiti uslugu“. Za bežični uređaj, osim toga, postoji određena verovatnoća da se zabeleži trenutak pojavljivanja na mestu gde je postavljen senzor. Promenom adrese može se pokušati „prikazati“ kao vaš uređaj, što može uspeti samo ako se ne koriste dodatna sredstva zaštite (autorizacija i/ili šifrovanje). 99,9% ljudi ovde nema razloga za brigu.

MAC adresa je složenija nego što se čini, ali jednostavnija nego što bi mogla biti.

Izvor: habr.com

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster