كل ما تريد معرفته عن عنوان MAC

كل ما تريد معرفته عن عنوان MACيعلم الجميع أن هذه البايتات الستة، التي يتم عرضها عادةً بتنسيق سداسي عشري، يتم تخصيصها لبطاقة الشبكة في المصنع، ويبدو أنها عشوائية. يعرف بعض الأشخاص أن البايتات الثلاث الأولى من العنوان هي معرف الشركة المصنعة، ويتم تخصيص البايتات الثلاث المتبقية لها. ومن المعروف أيضًا أنه يمكنك ضبط نفسك اعتباطي عنوان. لقد سمع الكثير من الناس عن "العناوين العشوائية" في شبكة 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 (المعرف الفريد التنظيمي). مشترك ب منظمة IEEE. في الواقع، لا يمكن أن يكون طوله 3 بايت فقط (24 بت)، ولكن 28 أو 36 بت، منها كتل (MAC Address Block، MA) من العناوين من الأنواع الكبيرة (MA-L)، والمتوسطة (MA-M) و الصغيرة تتشكل (MA-S) على التوالي. سيكون حجم الكتلة الصادرة في هذه الحالة 24، 20، 12 بت أو 16 مليون، 1 مليون، 4 آلاف عنوان. يوجد حاليًا حوالي 38 ألف كتلة موزعة، ويمكن الاطلاع عليها باستخدام العديد من الأدوات عبر الإنترنت، على سبيل المثال IEEE أو يريشارك.

من يملك العناوين؟

سهولة معالجة المتاحة للجمهور تفريغ قواعد البيانات يوفر IEEE الكثير من المعلومات. على سبيل المثال، أخذت بعض المؤسسات الكثير من كتل OUI لأنفسها. وهنا أبطالنا:

بائع
عدد الكتل/السجلات
عدد العناوين مليون

سيسكو سيستمز إنك
888
14208

تفاح
772
12352

سامسونج
636
10144

شركة هواوي تكنولوجيز المحدودة
606
9696

شركة إنتل
375
5776

شركة مجموعة أريس
319
5104

شركة نوكيا
241
3856

خاص
232
2704

تكساس إنسترومنتس
212
3392

شركة zte
198
3168

هيئة تسجيل IEEE
194
3072

هيوليت باكارد
149
2384

دقة هون هاي
136
2176

TP-LINK
134
2144

شركة ديل
123
1968

جونيبر نتوركس
110
1760

ساجيمكوم برودباند SAS
97
1552

شركة فايبر هوم لتقنيات الاتصالات المحدودة
97
1552

شركة شياومي للاتصالات المحدودة
88
1408

شركة قوانغدونغ أوبو للاتصالات المتنقلة المحدودة
82
1312

لدى Google 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 الموجودة تحت تصرفي، والتي تم جمعها بواسطة أنظمة ترخيص العمل في الشبكات اللاسلكية WNAM. تنتمي العناوين إلى أجهزة حقيقية متصلة بشبكة Wi-Fi على مدار عدة سنوات في ثلاثة بلدان. بالإضافة إلى ذلك، هناك قاعدة بيانات صغيرة لأجهزة 802.3 LAN السلكية.

دعونا نقسم كل عنوان MAC (ستة بايتات) لكل عينة إلى بتات، بايتة بايتة، وننظر إلى تكرار ظهور البتة "1" في كل موضع من المواضع الـ 48. إذا تم تعيين البت بطريقة تعسفية تمامًا، فيجب أن يكون احتمال الحصول على "1" 50٪.

اختيار الواي فاي رقم 1 (RF)
عينة Wi-Fi رقم 2 (بيلاروسيا)
اختيار الواي فاي رقم 3 (أوزبكستان)
أخذ عينات الشبكة المحلية (RF)

عدد السجلات في قاعدة البيانات
5929000
1274000
366000
1000

رقم البت:
% بت "1"
% بت "1"
% بت "1"
% بت "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

البتة الثامنة (من البداية) من البايت الأول لعنوان MAC تسمى بت Unicast/Multicast وتحدد نوع الإطار (الإطار) الذي يتم إرساله مع هذا العنوان، عادي (0) أو بث (1) (بث متعدد أو إذاعة). بالنسبة لاتصال محول الشبكة العادي أحادي البث، يتم تعيين هذا البت على "0" في كافة الحزم المرسلة إليه.

تسمى البتة السابعة (من البداية) من البايت الأول لعنوان MAC بت U/L (عالمي/محلي) وتحدد ما إذا كان العنوان فريدًا عالميًا (0)، أو فريدًا محليًا (1). افتراضيًا، تكون جميع العناوين "المُصممة من قبل الشركة المصنعة" فريدة عالميًا، وبالتالي فإن الغالبية العظمى من عناوين MAC المجمعة تحتوي على البت السابع المعين على "0". في جدول معرفات OUI المعينة، يوجد حوالي 130 إدخالًا فقط تحتوي على بت U/L بقيمة "1"، ويبدو أن هذه كتل من عناوين MAC للاحتياجات الخاصة.

من البتات السادسة إلى البتات الأولى من البايت الأول، يتم توزيع بتات البايتات الثانية والثالثة في معرفات OUI، وحتى أكثر من ذلك، البتات الموجودة في 4-6 بايتات من العنوان المعين من قبل الشركة المصنعة بشكل متساوٍ تقريبًا .

وبالتالي، في عنوان MAC الحقيقي لمحول الشبكة، تكون البتات متكافئة فعليًا وليس لها أي معنى تكنولوجي، باستثناء بتتي خدمة من البايت العالي.

انتشار

هل تتساءل عن الشركات المصنعة للمعدات اللاسلكية الأكثر شهرة؟ دعونا نجمع البحث في قاعدة بيانات OUI مع البيانات من العينة رقم 1.

بائع
حصة الأجهزة،٪

تفاح
26,09

سامسونج
19,79

شركة هواوي تكنولوجيز المحدودة
7,80

شركة شياومي للاتصالات المحدودة
6,83

شركة سوني للاتصالات المتنقلة
3,29

إل جي إلكترونيكس (الاتصالات المتنقلة)
2,76

شركة ASUSTek COMPUTER INC.
2,58

شركة تي سي تي للهواتف المتحركة
2,13

شركة zte
2,00

غير موجود في قاعدة بيانات IEEE
1,92

شركة لينوفو لتكنولوجيا الاتصالات المتنقلة المحدودة.
1,71

شركة HTC
1,68

تصنيع موراتا
1,31

اتصالات إنبرو
1,26

شركة مايكروسوفت
1,11

شركة شنتشن تينو لتكنولوجيا الهاتف المحمول
1,02

شركة موتورولا (ووهان) لتقنيات التنقل والاتصالات المحدودة.
0,93

شركة نوكيا
0,88

شركة شنغهاي لتقنيات الرياح المحدودة
0,74

شركة لينوفو للاتصالات المتنقلة (ووهان) المحدودة
0,71

تظهر الممارسة أنه كلما زاد ازدهار مجموعة المشتركين في الشبكة اللاسلكية في مكان معين، زادت حصة أجهزة Apple.

تميز

هل عناوين 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

يتيح لك التوزيع العشوائي الممكّن تحديد ليس العنوان "المُدمج"، ولكن بعض عناوين مصدر الحزمة الأخرى، والتي تتغير مع كل دورة مسح، بمرور الوقت، أو بطريقة أخرى. هل يعمل؟ دعونا نلقي نظرة على إحصائيات عناوين MAC التي تم جمعها من الجو بواسطة ما يسمى "رادار Wi-Fi":

العينة بأكملها
عينة فقط مع صفر 7 بت

عدد السجلات في قاعدة البيانات
3920000
305000

رقم البت:
% بت "1"
% بت "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%

الصورة مختلفة تماما.

لا تزال البتة الثامنة من البايت الأول لعنوان MAC تتوافق مع طبيعة البث الأحادي لعنوان SRC في حزمة طلب التحقيق.

يتم تعيين البت السابع على محلي في 7% من الحالات، أي. وبدرجة لا بأس بها من الثقة، يمكننا أن نفترض أن عددًا كبيرًا جدًا من العناوين التي تم جمعها تم اختيارها عشوائيًا، وأن أقل من 92.2٪ منها حقيقية. في هذه الحالة، يتزامن توزيع البتات في واجهة المستخدم المفتوحة (OUI) لمثل هذه العناوين الحقيقية تقريبًا مع البيانات الموجودة في الجدول السابق.

ما هي الشركة المصنعة، وفقًا لـ OUI، التي تمتلك العناوين العشوائية (أي مع البت السابع في "7")؟

الشركة المصنعة بواسطة OUI
المشاركة بين كافة العناوين

غير موجود في قاعدة بيانات IEEE
62.45%

شركة جوجل
37.54%

остальные
0.01%

علاوة على ذلك، فإن جميع العناوين العشوائية المخصصة لـ Google تنتمي إلى نفس واجهة المستخدم الفريدة (OUI) مع البادئة دا:أ1:19. ما هي هذه البادئة؟ دعونا ننظر في مصادر أندرويد.

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

يستخدم Stock Android واجهة 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 الحقيقي" هو عملية احتيال. وبدرجة عالية من الثقة، يمكننا أن نتوقع أن الشركات المصنعة لهواتف Android تستخدم واجهات مستخدم موحدة أخرى غير مسجلة. ليس لدينا كود مصدر iOS، ولكن على الأرجح يتم استخدام خوارزمية مماثلة هناك.

ما سبق لا يلغي عمل الآليات الأخرى لإلغاء إخفاء هوية مشتركي Wi-Fi، بناءً على تحليل الحقول الأخرى لإطار طلب التحقيق، أو ارتباط التكرار النسبي للطلبات المرسلة من قبل الجهاز. ومع ذلك، فإن تتبع المشترك بشكل موثوق باستخدام وسائل خارجية يمثل مشكلة كبيرة. ستكون البيانات المجمعة أكثر ملاءمة لتحليل متوسط/ذروة الحمل حسب الموقع والوقت، بناءً على أعداد كبيرة، دون الرجوع إلى أجهزة وأشخاص محددين. فقط أولئك "الداخليون"، والشركات المصنعة لأنظمة تشغيل الأجهزة المحمولة أنفسهم، والتطبيقات المثبتة لديهم بيانات دقيقة.

ما الذي يمكن أن يكون خطيرًا في معرفة شخص آخر لعنوان MAC الخاص بجهازك؟ يمكن شن هجمات رفض الخدمة على الشبكات السلكية واللاسلكية. علاوة على ذلك، بالنسبة لجهاز لاسلكي، مع بعض الاحتمالات، من الممكن تسجيل لحظة ظهوره في المكان الذي تم فيه تثبيت المستشعر. من خلال انتحال العنوان، يمكنك محاولة "التظاهر" بأنه جهازك، وهو ما لا يمكن أن يعمل إلا في حالة عدم استخدام إجراءات أمنية إضافية (الترخيص و/أو التشفير). 99.9% من الناس هنا ليس لديهم ما يدعو للقلق.

عنوان MAC أكثر تعقيدًا مما يبدو، ولكنه أبسط مما يمكن أن يكون.

المصدر: www.habr.com

إضافة تعليق