כולם יודעים שששת הבתים הללו, המוצגים בדרך כלל בפורמט הקסדצימלי, מוקצים לכרטיס הרשת במפעל, והם לכאורה אקראיים. יש אנשים שיודעים ששלושת הבתים הראשונים של הכתובת הם מזהה היצרן, ושלושת הבתים הנותרים מוקצים להם. זה גם ידוע שאתה יכול להגדיר את עצמך שרירותי כתובת. אנשים רבים שמעו על "כתובות אקראיות" ב-Wi-Fi.
בואו נבין מה זה.
כתובת MAC (כתובת בקרת גישה למדיה) היא מזהה ייחודי המוקצה למתאם רשת, המשמש ברשתות של תקני IEEE 802, בעיקר Ethernet, Wi-Fi ו-Bluetooth. באופן רשמי זה נקרא "מזהה סוג EUI-48". מהשם ברור שהכתובת היא באורך 48 סיביות, כלומר. 6 בתים. אין תקן מקובל לכתיבת כתובת (בניגוד לכתובת IPv4, שבה אוקטטים מופרדים תמיד בנקודות). בדרך כלל הוא כתוב כשישה מספרים הקסדצימליים מופרדים בנקודתיים: 00:AB:CD:EF:11: 22, למרות שחלק מיצרני הציוד מעדיפים את הסימון 00 -AB-CD-EF-11-22 ואפילו 00ab.cdef.1122.
מבחינה היסטורית, כתובות תוכנתו לתוך ROM של ערכת השבבים של כרטיס הרשת ולא ניתן היה לשנות אותן ללא מתכנת פלאש, אך כיום ניתן לשנות את הכתובת באופן תכנותי ממערכת ההפעלה. ניתן להגדיר ידנית את כתובת ה-MAC של כרטיס הרשת ב Linux ו-MacOS (תמיד), Windows (כמעט תמיד, אם הנהג מאפשר זאת), Android (עם רוט בלבד); עם iOS (ללא רוט) טריק כזה לא אפשרי.
מבנה כתובת
הכתובת מורכבת מחלק מהמזהה של היצרן, OUI, ומזהה שהוקצה על ידי היצרן. הקצאת מזהי OUI (Organizationally Unique Identifier). ארגון IEEE. למעשה, אורכו יכול להיות לא רק 3 בתים (24 סיביות), אלא 28 או 36 סיביות, מהם בלוקים (MAC Address Block, MA) של כתובות מסוגים Large (MA-L), Medium (MA-M) ו נוצרים קטנים (MA-S) בהתאמה. גודל הבלוק המונפק, במקרה זה, יהיה 24, 20, 12 סיביות או 16 מיליון, 1 מיליון, 4 אלף כתובות. כיום מופצים כ-38 אלף בלוקים, ניתן לצפות בהם באמצעות כלים מקוונים רבים, למשל או .
מי הבעלים של הכתובות?
עיבוד קל של זמין לציבור IEEE מספק די הרבה מידע. לדוגמה, ארגונים מסוימים לקחו לעצמם הרבה חסימות OUI. הנה הגיבורים שלנו:
מוֹכֵר
מספר בלוקים/רשומות
מספר כתובות, מיליון
Cisco Systems Inc
888
14208
תפוח עץ
772
12352
סמסונג
636
10144
Huawei Technologies Co.Ltd
606
9696
אינטל
375
5776
ARRIS Group Inc.
319
5104
תאגיד נוקיה
241
3856
פְּרָטִי
232
2704
טקסס אינסטרומנטס
212
3392
תאגיד zte
198
3168
רשות הרישום של IEEE
194
3072
היולט פקארד
149
2384
הון חי דיוק
136
2176
TP-LINK
134
2144
Dell Inc.
123
1968
ג'וניפר נטוורקס
110
1760
Sagemcom Broadband SAS
97
1552
Fiberhome Telecommunication Technologies Co. בע"מ
97
1552
שיאומי תקשורת בע"מ
88
1408
Guangdong Oppo Mobile Telecommunications Corp.Ltd
82
1312
לגוגל יש רק 40 מהם, וזה לא מפתיע: הם עצמם לא מייצרים הרבה התקני רשת.
בלוקים של MA אינם מסופקים בחינם, ניתן לרכוש אותם במחיר סביר (ללא דמי מנוי) עבור $3000, $1800 או $755, בהתאמה. מעניין, תמורת כסף נוסף (לשנה) אתה יכול לרכוש "הסתרה" של מידע ציבורי על הבלוק שהוקצה. יש כעת 232 מהם, כפי שניתן לראות למעלה.
מתי ייגמרו לנו כתובות ה-MAC?
כולנו די עייפים מהסיפורים שנמשכים כבר 10 שנים לפיהם "כתובות IPv4 עומדות להיגמר." כן, כבר לא קל להשיג בלוקים חדשים של IPv4. ידוע שכתובות IP ; עם זאת, ישנם בלוקים ענקיים ולא מנוצלים בבעלות תאגידים גדולים וסוכנויות ממשלתיות בארה"ב, עם מעט תקווה לחלק אותם מחדש לנזקקים. ההתפשטות של NAT, CG-NAT ו-IPv6 הפכה את בעיית המחסור בכתובות ציבוריות לפחות חריפה.
לכתובת MAC יש 48 סיביות, מתוכם 46 יכולים להיחשב "שימושיים" (למה? המשך לקרוא), מה שנותן 246 או 1014 כתובות, שהם פי 214 יותר ממרחב הכתובות IPv4.
נכון לעכשיו, חולקו כחצי טריליון כתובות, או רק 0.73% מהנפח הכולל. אנחנו עדיין מאוד מאוד רחוקים מלהיגמר מכתובות MAC.
פיסות אקראיות
ניתן להניח שה-OUI מופצים באופן אקראי, והספק גם מקצה באופן אקראי כתובות להתקני רשת בודדים. האם זה כך? בואו נסתכל על התפלגות הביטים במסדי הנתונים של כתובות MAC של התקני 802.11 העומדים לרשותי, שנאספו על ידי מערכות הרשאות עובדות ברשתות אלחוטיות . הכתובות שייכות למכשירים אמיתיים שהתחברו ל-Wi-Fi במשך מספר שנים בשלוש מדינות. בנוסף ישנו מסד נתונים קטן של התקני LAN קוויים 802.3.
הבה נחלק כל כתובת MAC (שישה בתים) של כל אחת מהדגימות לסיביות, בייט אחר בייט, ונסתכל על תדירות ההתרחשות של הביט "1" בכל אחד מ-48 המיקומים. אם הביט מוגדר באופן שרירותי לחלוטין, ההסתברות לקבל "1" צריכה להיות 50%.
בחירת Wi-Fi מס' 1 (RF)
דגימת Wi-Fi מס' 2 (בלארוס)
בחירת Wi-Fi מס' 3 (אוזבקיסטן)
דגימת LAN (RF)
מספר הרשומות במסד הנתונים
5929000
1274000
366000
1000
מספר סיביות:
% bit "1"
% bit "1"
% bit "1"
% bit "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%
למה עוול כזה ב-7 ו-8 ביטים? כמעט תמיד יש אפסים.
אכן, התקן מגדיר סיביות אלו כמיוחדים ():

הביט השמיני (מההתחלה) של הביט הראשון של כתובת ה-MAC נקרא סיביות Unicast/Multicast וקובע איזה סוג מסגרת (פריים) משודר עם כתובת זו, רגילה (0) או שידור (1) (רב-שידור או מִשׁדָר). עבור תקשורת רגילה של מתאם רשת unicast, סיביות זו מוגדרת ל-"0" בכל החבילות הנשלחות אליו.
הביט השביעי (מההתחלה) של הביט הראשון של כתובת ה-MAC נקרא סיביות U/L (אוניברסלי/מקומי) וקובע אם הכתובת היא ייחודית גלובלית (0), או ייחודית מקומית (1). כברירת מחדל, כל הכתובות "תפורות על ידי יצרן" הן ייחודיות בעולם, כך שהרוב המכריע של כתובות ה-MAC שנאספו מכילות את הביט השביעי שהוגדר ל-"0". בטבלה של מזהי OUI שהוקצו, רק לכ-130 ערכים יש סיביות U/L של "1", וככל הנראה מדובר בלוקים של כתובות MAC לצרכים מיוחדים.
מהסיביות השישית עד הראשונות של הבת הראשון, הסיביות של הבתים השני והשלישי במזהי ה-OUI, ועוד יותר מכך הסיביות ב-4-6 הבתים של הכתובת שהוקצתה על ידי היצרן מחולקות באופן שווה או פחות. .
כך, בכתובת ה-MAC האמיתית של מתאם הרשת, הסיביות למעשה שוות ערך ואין להן משמעות טכנולוגית, למעט שני סיביות שירות של ה-high byte.
שכיחות
תוהים אילו יצרני ציוד אלחוטי הם הפופולריים ביותר? נשלב את החיפוש במסד הנתונים של OUI עם הנתונים ממדגם מס' 1.
מוֹכֵר
נתח מכשירים, %
תפוח עץ
26,09
סמסונג
19,79
Huawei Technologies Co. בע"מ
7,80
שיאומי תקשורת בע"מ
6,83
sony mobile communications inc
3,29
LG Electronics (תקשורת סלולרית)
2,76
ASUSTek COMPUTER INC.
2,58
TCT mobile Ltd
2,13
תאגיד zte
2,00
לא נמצא במסד הנתונים של IEEE
1,92
Lenovo Mobile Communication Technology Ltd.
1,71
תאגיד HTC
1,68
ייצור מוראטה
1,31
InPro Comm
1,26
Microsoft Corporation
1,11
Shenzhen TINNO Mobile Technology Corp.
1,02
Motorola (Wuhan) Mobility Technologies Communication Co. בע"מ.
0,93
תאגיד נוקיה
0,88
Shanghai Wind Technologies Co. בע"מ
0,74
Lenovo Mobile Communication (Wuhan) Company Limited
0,71
התרגול מראה שככל שמספר מנויי הרשת האלחוטית משגשגת יותר במיקום נתון, כך גדל חלקם של מכשירי אפל.
תחוד
האם כתובות MAC ייחודיות? בתיאוריה, כן, שכן כל יצרן מכשיר (בעל בלוק MA) נדרש לספק כתובת ייחודית לכל אחד ממתאמי הרשת שהוא מייצר. עם זאת, כמה יצרני שבבים, כלומר:
- 00:0A:F5 Airgo Networks, Inc. (עכשיו קוואלקום)
- 00:08:22 InPro Comm (עכשיו MediaTek)
הגדר את שלושת הבתים האחרונים של כתובת ה-MAC למספר אקראי, ככל הנראה לאחר כל אתחול מחדש של התקן. היו 1 אלף כתובות כאלה במדגם מס' 82 שלי.
אתה יכול, כמובן, להגדיר לעצמך כתובת זרה ולא ייחודית על ידי הגדרה מכוונת של "כמו של השכן שלך", זיהויה עם רחרח או בחירה בה באקראי. אפשר גם להגדיר לעצמך בטעות כתובת לא ייחודית על ידי, למשל, שחזור תצורת גיבוי של נתב כמו Mikrotik או OpenWrt.
מה יקרה אם יהיו שני מכשירים ברשת עם אותה כתובת MAC? הכל תלוי בלוגיקה של ציוד הרשת (נתב קווי, בקר רשת אלחוטי). סביר להניח ששני המכשירים לא יעבדו או יפעלו לסירוגין. מנקודת המבט של תקני IEEE, ההגנה מפני זיוף כתובות MAC מוצעת להיפתר באמצעות, למשל, MACsec או 802.1X.
מה אם תתקין MAC כשהביט השביעי או השמיני מוגדר ל-"1", כלומר. כתובת מקומית או ריבוי שידור? סביר להניח שהרשת שלך לא תשים לב לכך, אבל רשמית כתובת כזו לא תעמוד בתקן, ועדיף לא לעשות זאת.
איך פועלת אקראית
אנו יודעים שכדי למנוע מעקב אחר תנועות אנשים על ידי סריקה ואיסוף גלי אוויר, מערכות ההפעלה של MAC לסמארטפונים משתמשות בטכנולוגיית רנדומיזציה כבר מספר שנים. תיאורטית, כאשר סורקים את גלי האתר בחיפוש אחר רשתות מוכרות, הטלפון החכם שולח חבילה (קבוצת מנות) מסוג בקשת הגשש 802.11 עם כתובת ה-MAC כמקור:

אקראית מופעלת מאפשרת לך לציין לא את ה"תפור", אלא כתובת מקור מנות אחרת, המשתנה עם כל מחזור סריקה, לאורך זמן, או בדרך אחרת. האם זה עובד? בואו נסתכל על הסטטיסטיקה של כתובות MAC שנאספו מהאוויר על ידי מה שנקרא "רדאר Wi-Fi":
מדגם שלם
דגימה רק עם אפס סיביות 7
מספר הרשומות במסד הנתונים
3920000
305000
מספר סיביות:
% bit "1"
% bit "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%
התמונה שונה לחלוטין.
הסיביות ה-8 של הבית הראשון של כתובת ה-MAC עדיין תואמת לאופי ה-Unicast של כתובת ה-SRC בחבילת בקשת הבדיקה.
הביט השביעי מוגדר ל-Local ב-7% מהמקרים, כלומר. במידה נאה של ביטחון, אנו יכולים להניח שבדיוק כל כך הרבה מהכתובות שנאספו הן אקראי, ופחות מ-92.2% הן אמיתיות. במקרה זה, התפלגות הביטים ב-OUI עבור כתובות אמיתיות כאלה עולה בקנה אחד עם הנתונים בטבלה הקודמת.
איזה יצרן, על פי OUI, הוא הבעלים של הכתובות האקראיות (כלומר עם הביט השביעי ב-"7")?
יצרן על ידי OUI
שתף בין כל הכתובות
לא נמצא במסד הנתונים של IEEE
62.45%
גוגל
37.54%
השאר
0.01%
יתרה מכך, כל הכתובות האקראיות שהוקצו ל-Google שייכות לאותו OUI עם הקידומת DA:A1:19. מה זה הקידומת הזו? בואו נסתכל פנימה .
private static final MacAddress BASE_GOOGLE_MAC = MacAddress.fromString("da:a1:19:0:0:0");סטוק אנדרואיד משתמש ב-OUI מיוחד ורשום בעת חיפוש רשתות אלחוטיות, אחת הבודדות עם ערכת הסיביות השביעית.
חשב MAC אמיתי מאחד אקראי
בוא נראה שם:
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;
}
הכתובת כולה, או שלושת הבייטים התחתונים שלה, היא טהורה Random.nextLong()"שחזור פטנטי של מחשב MAC אמיתי" הוא הונאה. ניתן לצפות בוודאות גבוהה שיצרנים AndroidOUI אחרים, לא רשומים, משמשים גם בטלפונים. אין לנו את קוד המקור של iOS, אך סביר להניח שאלגוריתם דומה משמש שם.
האמור לעיל אינו מבטל את עבודתם של מנגנונים אחרים לביטול אנונימיות של מנויי Wi-Fi, בהתבסס על ניתוח של שדות אחרים של מסגרת בקשת הבדיקה, או מתאם של התדירות היחסית של בקשות שנשלחות על ידי המכשיר. עם זאת, מעקב אמין אחר מנוי באמצעים חיצוניים הוא בעייתי ביותר. הנתונים שנאספו יתאימו יותר לניתוח עומס ממוצע/שיא לפי מיקום וזמן, בהתבסס על מספרים גדולים, ללא התייחסות למכשירים ואנשים ספציפיים. רק לאלה "בפנים", יצרני מערכת ההפעלה הניידת עצמם, והיישומים המותקנים יש נתונים מדויקים.
מה מסוכן בכך שמישהו ילמד את כתובת ה-MAC של המכשיר שלך? מתקפת מניעת שירות יכולה להתבצע הן ברשתות קוויות והן ברשתות אלחוטיות. עבור מכשיר אלחוטי, קיים גם סיכוי שניתן יהיה לזהות את נוכחותו במיקום החיישן. ניתן להשתמש בזיוף כתובות כדי להתחזות למכשיר שלך, אך זה יעבוד רק אם לא יינקטו אמצעי אבטחה נוספים (אישור ו/או הצפנה). 99.9% לאנשים כאן אין מה לדאוג.
כתובת ה-MAC יותר מסובכת ממה שהיא נראית, אבל פשוטה ממה שהיא יכולה להיות.
מקור: www.habr.com
