इसका अर्थ यह नहीं है कि कोई भी व्यक्ति अनाम Linux कंप्यूटर से Find My डेटा मांग सकता है। Linux मशीन को पहले Apple Account के जरिए प्रमाणित होना, डिवाइस के रूप में एनरोल होना और संबंधित सेवाओं के अपेक्षित प्रोटोकॉल का पालन करना पड़ा।
Zerotistic के काम में Apple इकोसिस्टम की कई सामान्यतः छिपी हुई परतें जुड़ीं:
अकाउंट लॉगिन: क्लाइंट ने Apple के GrandSlam लॉगिन प्रोटोकॉल का इस्तेमाल किया। इसमें Secure Remote Password (SRP) एक्सचेंज और टू-फैक्टर ऑथेंटिकेशन शामिल थे। इसके बाद अकाउंट पहचानकर्ता और सीमित अवधि वाला password-equivalent token मिला।
डिवाइस एनरोलमेंट: Linux क्लाइंट ने 2048-बिट RSA कुंजी और SHA-1 हस्ताक्षर वाला PKCS#10 certificate-signing request (CSR) बनाया। इसे Apple के पुराने authenticateDS प्रोफाइल-एनरोलमेंट एंडपॉइंट पर भेजा गया, जिसने Apple Identity Services का प्रमाणपत्र लौटाया।
Identity Services रजिस्ट्रेशन: इस प्रमाणपत्र और संबंधित डिवाइस सामग्री के साथ Linux मशीन Identity Services-सक्षम डिवाइस के रूप में रजिस्टर हो सकी। उसने समर्थित एन्क्रिप्शन प्रकार घोषित किए, जरूरी मैसेजिंग सबसर्विसेज की सदस्यता ली और Apple Push Notification Service (APNs) के डिलीवरी क्रेडेंशियल प्राप्त किए।
Find My सिंक्रोनाइजेशन: क्लाइंट ने Find My People के मूल अनुरोध क्रम को दोहराया—इनिशियलाइजेशन, रिफ्रेश और फिर intent: distributeKeysmode: proactiveSubscribeAndFetch अनुरोध। इसके बाद Apple ने पहले से सहमति देने वाले संपर्क के डिवाइस को निर्देश दिया कि वह नई, एनरोल की गई पहचान को IDS और APNs के जरिए मौजूदा लोकेशन-की सामग्री भेजे।
स्थानीय डिक्रिप्शन: एन्क्रिप्टेड IDS payload में संबंध और SearchParty से जुड़ी कुंजी सामग्री थी। ओपन-सोर्स pypush ने push और IDS परत संभाली, जबकि FindMy.py ने Find My रिपोर्ट को क्वेरी और डिक्रिप्ट करके निर्देशांक, समय और लोकेशन की सटीकता निकाली।
यह Apple प्रमाणपत्र की जालसाजी नहीं थी। अकाउंट ऑथेंटिकेशन और एनरोलमेंट प्रक्रिया पूरी होने के बाद सर्वर ने स्वयं जरूरी क्रेडेंशियल जारी किए।
SubscribeAndFetch का प्रदर्शन यह संकेत देता है कि Apple पहले से मौजूद शेयरिंग संबंध के बाद किसी नए अधिकृत डिवाइस को मौजूदा लोकेशन-की सामग्री भेज सकता है। यह डिवाइस बदलने और अकाउंट सिंक्रोनाइजेशन के लिए व्यावहारिक है—वरना नया फोन या कंप्यूटर जोड़ने पर उपयोगकर्ता को हर संपर्क से लोकेशन शेयरिंग बंद करके दोबारा शुरू करने के लिए कहना पड़ता।
रिपोर्ट किए गए payload में संबंध पहचानकर्ता, key index, 32-बाइट hashed-advertisement key और 85-बाइट private-key representation शामिल थे। इससे संकेत मिलता है कि Find My लोकेशन रिपोर्ट को डिक्रिप्ट करने के लिए संबंध-विशिष्ट और key-version-विशिष्ट सामग्री का इस्तेमाल होता है, जिसे IDS के जरिए दोबारा वितरित किया जा सकता है।
हालांकि, सार्वजनिक तकनीकी विवरण कुंजी-सिंक्रोनाइजेशन और रोटेशन के व्यवहार को दिखाता है, लेकिन इससे कोई सार्वभौमिक key-rotation interval तय नहीं होता। यानी शोध से यह पता चलता है कि मौजूदा कुंजी स्थिति कैसे पहुंचाई जाती है, Apple की पूरी key-management schedule क्या है—यह नहीं।
परीक्षण किया गया क्लाइंट जानबूझकर सीमित दायरे में था। वह शोधकर्ता के Apple Account पर पहले से स्वीकृत लोकेशन शेयर पढ़ सकता था और उस डेटा को स्थानीय रूप से प्रोसेस कर सकता था। जियोफेंसिंग भी Apple के सर्वर पर नहीं, Linux मशीन पर चलती थी।
रिपोर्ट के अनुसार, इसमें ये क्षमताएं नहीं थीं:
इसलिए इसे दूर बैठे किसी भी Apple उपयोगकर्ता को ट्रैक करने वाले एक्सप्लॉइट के रूप में देखना सही नहीं होगा। वास्तविक सुरक्षा चिंता अकाउंट या विश्वसनीय डिवाइस के समझौता होने से जुड़ी है: यदि किसी हमलावर को Apple Account का नियंत्रण मिल जाए या वह उसमें अनधिकृत डिवाइस एनरोल करा दे, तो उस अकाउंट के लिए पहले से उपलब्ध शेयर उजागर हो सकते हैं।
Zerotistic का प्रदर्शन और nRootTag अलग-अलग Find My प्रणालियों तथा अलग-अलग खतरा-परिदृश्यों से संबंधित हैं।
Zerotistic का काम Find My People पर केंद्रित था। इसमें पहले से अधिकृत लोकेशन-शेयरिंग संबंध के रिसीवर पक्ष को दोहराया गया। Apple Account और डिवाइस को Apple ने स्वीकार किया होना जरूरी था, और संबंधित व्यक्ति की लोकेशन उस अकाउंट के साथ साझा की गई होनी चाहिए थी।
nRootTag ने Find My Network और ऑफलाइन फाइंडिंग को निशाना बनाया। शोधकर्ताओं के अनुसार, Apple की सेवा ने अपेक्षित random static addresses के अलावा Bluetooth address के अन्य प्रकारों को भी स्वीकार किया। इसका फायदा उठाकर Bluetooth-सक्षम कंप्यूटर को AirTag-जैसे ट्रैकिंग बीकन की तरह इस्तेमाल किया जा सकता था, जो आसपास के Apple डिवाइसों से लोकेशन रिले कराए—वह भी लक्ष्य व्यक्ति की जानकारी के बिना।
संक्षेप में, Zerotistic के प्रोजेक्ट ने वह डेटा प्राप्त किया जिसे अकाउंट पहले से देखने के लिए अधिकृत था; nRootTag ने अनधिकृत ट्रैकिंग की क्षमता बनाने की कोशिश की। दोनों को एक जैसा बताने से Linux प्रदर्शन की शक्ति बढ़ा-चढ़ाकर सामने आती है।
शोधकर्ता के अनुसार, शुरुआती उद्देश्य सहमति-आधारित ऑटोमेशन था। एक मित्र पहले से अपनी लोकेशन साझा कर रहा था और उसने ऐसे Linux सिस्टम पर सहमति दी थी, जो स्थानीय जियोफेंस बनाए और किसी स्थान पर पहुंचने या वहां से निकलने पर Discord नोटिफिकेशन भेजे।
Zerotistic को शुरुआत में लगा था कि इसके लिए केवल एक authenticated web request और लगभग एक शाम का काम पर्याप्त होगा। लेकिन रिवर्स-इंजीनियरिंग अपेक्षा से कहीं ज्यादा विस्तृत हो गई। उपलब्ध रिपोर्टिंग पूरे प्रोजेक्ट में लगे कुल समय की सटीक अवधि नहीं बताती, इसलिए इससे अधिक निश्चित समय-सीमा बताना अटकल होगी।
उपलब्ध स्रोत इस प्रदर्शन और उसकी सीमित क्षमता की पुष्टि करते हैं, लेकिन इस विशेष Linux Find My People इम्प्लीमेंटेशन पर Apple का कोई सत्यापित सार्वजनिक बयान, निश्चित पैच या घोषित bug-bounty परिणाम उपलब्ध नहीं है।
इस मामले का बड़ा सबक यही है: किसी फीचर को Apple हार्डवेयर तक सीमित कर देना अपने-आप हार्डवेयर को सुरक्षा सीमा नहीं बना देता। यदि सर्वर का भरोसा मुख्यतः क्रेडेंशियल, प्रमाणपत्र, क्षमताओं और सही प्रोटोकॉल व्यवहार पर आधारित है, तो पर्याप्त रूप से संगत क्लाइंट किसी दूसरे ऑपरेटिंग सिस्टम पर भी उत्पाद-सीमा पार कर सकता है—हालांकि वह फिर भी अकाउंट की अनुमतियों और वैध रूप से मिली क्रिप्टोग्राफिक कुंजियों तक ही सीमित रहेगा।