« Tüm yayınlar

Apple Find My Arkadaşlar Protokolü Linux'tan Tersine Mühendislikle Çözüldü

Bir geliştirici, arkadaşının Find My konumunu Linux'ta izlemek için Apple'ın belgesiz Find My Friends API'sini nasıl tersine mühendislikle çözdüğünü anlatıyor.

Bir geliştirici, arkadaşının onayıyla paylaştığı Find My konumunu Linux üzerinde geofence tabanlı Discord bildirimlerine dönüştürmek isterken, Apple'ın belgelenmemiş Find My Friends API'sinin karmaşık bir tersine mühendislik sürecine dönüştüğünü keşfetti. Mac cihazı olmadan; açık kaynaklı istemcilerden ve fmfd, findmylocated, searchpartyd gibi Apple daemon'larının decompile edilmesinden yola çıkarak protokolü adım adım çözdü.

Süreç, eski MobileMe altyapısındaki fmfd/initClient uç noktasından doğru token setinin (mmeFMFAppToken, searchPartyToken vb.) bulunmasıyla başladı, ardından cihazın gerçek bir IDS (Identity Services) istemcisi gibi kaydedilmesini gerektirdi. Bunun için GrandSlam giriş protokolü, SRP tabanlı kimlik doğrulama, iki faktörlü doğrulama ve anisette adı verilen, Apple donanımını taklit eden özel başlıkların üretilmesi gerekti. Sonuçta paylaşımın şifreli konum yoluna (secureLocationsCapable) taşındığı ve ilişkinin bulunmasının kolay, ancak gerçek konum verisine erişimin çok daha zor olduğu ortaya çıktı.

Bu çalışma, mühendisler için Apple'ın MobileMe, IDS ve APNs katmanlarının nasıl iç içe geçtiğine dair nadir bulunan pratik bir rehber niteliğinde; özellikle üçüncü taraf Find My istemcileri geliştirmek veya Apple'ın özel protokollerini analiz etmek isteyenler için değerli teknik ayrıntılar sunuyor.

Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz