Як iOS та OS X визначають, коли мережа Wi-Fi - це персональна гаряча точка?


31

Якщо доступна мережа Особиста точка доступу, вона відображає значок ланцюгового зв’язку замість звичайної піктограми блокування у списку доступних мереж на iOS та OS X.

Спадне меню вибору Wi-Fi в ОС X

Моє запитання: як OS X розрізняє ці мережі? Чи вказано в 802.11, як гарячі точки передають свої SSID по-різному?


5
Я дав тобі + лише тому, що ти змусив мене сміятися з Вибухнутого рису :)
Рускес

2
Це звучить як можливість вирватися з дроту / розбещеного снайфера.
кортики

Я видалив свою відповідь, оскільки, мабуть, особиста точка доступу iPhone не є спеціальною мережею . Я вважаю, що є інші дані, що ідентифікують мережу як особисту точку доступу, але я ще не маю конкретики для відповіді. (Я цілком впевнений, що він не базується на MAC-адресі, як запропонував @emotality)
Джош

Я БУДЬ є специфічне для Apple розширення IEEE802.11 Beacon Frame, яке оголошує прив'язку, як це роблять інші (наприклад, Ciscos CCX). На жаль, у мене немає пристрою для тестування.
Макс Рійд

Відповіді:


7

Я думаю, що це питання слід розмістити на сайті Reverse Engineering Stack Exchange . Ви запитуєте детальну інформацію про впровадження чорного поля ...

Насправді я копався трохи на /System/Library/CoreServices/Menu Extras/AirPort.menuі/System/Library/Frameworks/CoreWLAN.framework/

Існує приватний метод, який CWNetworkназивається isPersonalHotspot:

char -[CWNetwork(Private) isPersonalHotspot](void * self, void * _cmd) {
    eax = [*(self + 0x4) objectForKey:@"IOS_IE"];
    eax = LOBYTE(eax != 0x0 ? 0x1 : 0x0) & 0xff;
    return eax;
}

Здається, просто перевірка деяких ідентифікаторів. Я думаю , що SFRemoteHotspotDeviceі WiFiXPCEventProtocolможе мати більш низькі деталі рівня , але я не перевіряв.

До речі, є також властивість визначати, чи є мережа CarPlay

@interface CWNetwork : NSObject <NSCopying, NSSecureCoding>
... //redacted
@property(readonly) BOOL isPersonalHotspot;
@property(readonly) BOOL isCarPlayNetwork;
... //redacted

Apple контролює обладнання, драйвери та операційну систему, я думаю, що вони можуть легко додати додаткові метадані під час трансляції сигналу Wi-Fi, щоб ваш Mac знав, додавати піктограму ланцюжка чи ні.

Якщо хтось зрозуміє, як саме Apple зробив трюк, будь ласка, дайте мені знати. :)


0

Піктограма ланцюга показує, що з'єднання з Інтернетом з'єднано через інший пристрій. Це не спеціально для особистих точок доступу.


Крім того, що підключення Wi-Fi майже завжди пов'язані з іншим мережевим пристроєм, це насправді не пояснює, чому гарячі точки, створені на пристроях Android, не відображаються із символом ланцюга.
користувач3052786

У macOS Sierra гарячі точки, створені за допомогою пристроїв Android, показують значок ланцюга.
Сурай

-1

Apple розмовляє з Apple, вони знають власну продукцію і знають, коли це пристрій Apple чи ні. Apple може мати власний діапазон MAC-адрес або вони просто бачать всю інформацію про цей пристрій, тобто:

Якщо ви перейдете на сторінку про цей Mac, системний звіт, мережа, Wi-Fi. Ви побачите наступну інформацію про цю мережу / пристрій.

Подробиці Wi-Fi

Перевірте інтерфейси: Тип картки, MAC-адреса або локальний код. Можливо, це можуть бути всі "ідентифікатори Apple". Створюючи точку доступу зі своїм iPhone, Apple вирішила поділитися інформацією зі своїм Mac, щоб показати, що це пристрій Apple.


Треба сказати, я дуже сумнівався, що спочатку це може бути можливим, оскільки жодна інформація, окрім MAC, не використовується в 802.11, але, прочитавши її, я починаю вважати, що ваша теорія може мати певні заслуги. Мабуть, перший 3 октети MAC-адреси вказують виробника пристрою, а Apple використовує окрему частину виробника MAC-адреси для всіх своїх iDevices.
користувач3052786

Тепер, якщо я міг якось підробити BSSID точки доступу, щоб він відображався як iDevice, я міг би підтвердити або спростувати цю теорію ... Хтось знає, як це можна зробити? (Або якщо це взагалі можна здійснити?)
user3052786

Lol ні, я не думаю, що це гарна ідея задавати хакерські питання тут: P, але ви можете відзначити відповідь правильною, якщо вона відповіла на ваше запитання. : D
емоційність

Я думаю, що це не так. Навіть гарячі точки, створені на пристроях Android, показують значок «ланцюжка».
Сурай

Де ти бачив, що це відбувається, Сураж Тапаре?
Coroos

-2

Також гарячі каструлі на iOS також визначені як 172.20.10.x.


1
Ви не отримаєте трафік DHCP, якщо ви не пов’язані з AP.
Макс Рійд
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.