- SpaceX का Starlink यूज़र टर्मिनल लो-अर्थ ऑर्बिट सैटेलाइट इंटरनेट कनेक्शन का मुख्य हार्डवेयर है
- यूज़र टर्मिनल को खोलकर देखने पर, radio frequency (RF) frontend और कस्टम-डिज़ाइन SoC मुख्य कंपोनेंट के रूप में सामने आते हैं
- firmware analysis के अनुसार, अधिकांश मुख्य सॉफ़्टवेयर में kernel-bypass user-space network processing और कुछ encryption फ़ंक्शन शामिल हैं
- STSAFE-A110 security chip अतिरिक्त root of trust की भूमिका निभाती है और data encryption व unique identification प्रदान करती है
- इस टर्मिनल में कई SSH public key कॉन्फ़िगरेशन और संदिग्ध packet recording tool शामिल हैं, लेकिन यूज़र प्राइवेसी के उल्लंघन के संकेत नहीं मिले
अवलोकन
- Starlink, SpaceX द्वारा प्रदान की जाने वाली लो-अर्थ ऑर्बिट सैटेलाइट इंटरनेट सेवा है
- यूज़र टर्मिनल के ज़रिए नज़दीकी सैटेलाइट से जुड़ते हैं, जो ground gateway के माध्यम से इंटरनेट से कनेक्ट होता है
- नई पीढ़ी के सैटेलाइट laser link का उपयोग करके सैटेलाइट-से-सैटेलाइट संचार कर सकते हैं, और यह क्षमता global coverage व efficiency बढ़ाने में योगदान देती है
- स्थानीय gateway के बिना भी, उदाहरण के लिए यूक्रेन में, Starlink टर्मिनल पड़ोसी देश के gateway का उपयोग कर इंटरनेट से जुड़ सकता है
- इस लेख में DARKNAVY की Starlink यूज़र टर्मिनल पर की गई गहन जाँच को संक्षेप में प्रस्तुत किया गया है
हार्डवेयर विश्लेषण
- एक Starlink यूज़र टर्मिनल दो हिस्सों से बना होता है: router और antenna (UTA)
- DARKNAVY ने सिंगापुर में Standard Actuated(Rev3, GenV2) टर्मिनल खरीदा और antenna को डिसअसेंबल किया
- डिसअसेंबली के परिणाम में, RF frontend chip (मुख्यतः STMicroelectronics द्वारा निर्मित) ने बोर्ड का बड़ा हिस्सा घेर रखा था
- मुख्य नियंत्रण क्षेत्र में SpaceX-विशेष custom ST SoC (quad-core Cortex-A53) लगा है, लेकिन इसकी datasheet सार्वजनिक नहीं है
- Black Hat USA 2022 में KU Leuven के Dr. Lennert Wouters ने पहली पीढ़ी के टर्मिनल (GenV1) को hack करने की सफल घटना प्रस्तुत की थी, जिसके बाद SpaceX ने firmware update के माध्यम से UART debug interface को निष्क्रिय कर दिया
- हालांकि, अतिरिक्त तरीकों से सुरक्षा bypass फिर से सफल होने का इतिहास है
फर्मवेयर एक्सट्रैक्शन और विश्लेषण
- DARKNAVY ने सीधे eMMC chip से firmware dump किया
- Rev3 बोर्ड में अलग eMMC debug pin नहीं थी, इसलिए eMMC को हटाकर programmer से data extract करने की विधि अपनाई गई
- अधिकांश firmware encrypted नहीं था, इसलिए bootchain (BootROM को छोड़कर), kernel, और filesystem का कुछ हिस्सा सामने आ गया
- kernel boot होने के बाद runtime environment को /sx/local/runtime में unpack करके उपयोग किया जाता है
bin में Starlink सॉफ़्टवेयर executable, dat में configuration file, और revision_info में version information मौजूद है
- मुख्य communication program
user_terminal_frontend Go में विकसित है, जबकि बाकी अधिकांश static C++ binary हैं जिनमें symbol नहीं हैं
- network stack architecture DPDK की तरह kernel को bypass करती है और user-space program packet processing संभालते हैं
- Linux kernel मुख्यतः hardware driver और process management के लिए उपयोग होता है
- कुछ सॉफ़्टवेयर में मूल रूप से satellite या gateway उपयोग के लिए डिज़ाइन की गई functionality शामिल है
- डिवाइस boot के समय hardware peripheral के आधार पर type पहचानता है और केवल संबंधित logic को load करता है
इम्यूलेशन
- निरंतर विश्लेषण के लिए QEMU-आधारित Rev3 firmware emulation environment बनाया गया
- इस environment में
httpd, WebSocket, gRPC जैसी कुछ बाहरी सेवाओं को चलाने और debug करने में सफलता मिली
- इससे मुख्य executable और services के काम करने के तरीके को ट्रेस करना संभव हुआ
सुरक्षा चिप
- मुख्य SoC के अलावा STSAFE-A110 security chip मौजूद है, जो CC EAL5+ certification का दावा करती है
- यह chip NDA के तहत खरीदी जा सकती है, और firmware का stsafe_cli program इसी chip के साथ interact करता है
- analysis के अनुसार, STSAFE chip द्वारा प्रदान की जाने वाली सुविधाओं में डिवाइस को unique UUID देना, public key certificate (
stsafe_leaf.pem) प्रबंधन, और symmetric key derivation शामिल हैं
- यह chip SoC के secure boot से अलग एक अतिरिक्त trust root है, जो आधुनिक embedded security design मानकों के अनुरूप है
ईस्टर एग: क्या Elon आप पर नज़र रख रहा है?
- analysis के दौरान Ethernet Data Recorder program मिला, जिससे backdoor की संभावना पर सवाल उठता है
- इस program में packet recording capability दिखाई देती है, और यह अंदरूनी तौर पर pcap_filter-जैसे mechanism से विशेष packet capture करता है
- नियमों को देखने पर पता चलता है कि capture का लक्ष्य मुख्यतः satellite telemetry से जुड़े UDP packet हैं
- capture किया गया traffic SoC hardware key से encrypt होकर store होता है
- अब तक यूज़र privacy data एकत्र करने का कोई सबूत नहीं मिला है
- initialization प्रक्रिया में, यदि डिवाइस को यूज़र टर्मिनल के रूप में पहचाना जाता है, तो /root/.ssh/authorized_keys में 41 SSH public keys लिखी जाती हैं, और port 22 हमेशा local network के लिए खुला रहता है
- commercial product में बड़ी संख्या में अज्ञात public keys का दर्ज होना ध्यान देने योग्य है
निष्कर्ष और आगे की दिशा
- जैसे-जैसे satellite technology विभिन्न उद्योग क्षेत्रों में लागू हो रही है, Starlink जैसे satellite internet system के कंपोनेंट भविष्य में security attack और defense के प्रमुख रणक्षेत्र बन सकते हैं
- space security की प्रकृति के कारण, एक ही गलती लक्ष्य के साथ स्थायी संचार-विच्छेद का कारण बन सकती है, इसलिए सावधानीपूर्वक दृष्टिकोण आवश्यक है
1 टिप्पणियां
Hacker News टिप्पणियाँ
/root/.ssh/authorized_keysफ़ाइल में 41 SSH public keys लिख देती है, और port 22 भी हमेशा local network पर खुला रहता है। इससे यह सवाल उठता है कि 41 keys रखने का मतलब क्या है, और आख़िर वह कौन है जिसे 'आपके स्वामित्व वाले' user terminal पर root access नहीं होना चाहिएauthorized_keysमें 25 lines हैं। इनमें laptop की कई yubikeys, iPad और iPhone की keys, और Mac की secure enclave keys मिली-जुली हैं। मैं कल्पना कर सकता हूँ कि Starlink में कम-से-कम 1-2 अतिरिक्त system administrators तो होंगे ही, इसलिए 100 public keys भी कोई बहुत अजीब संख्या नहीं है