iOS Universal Links
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
यूनिवर्सल लिंक उपयोगकर्ताओं को सहज रीडायरेक्शन अनुभव प्रदान करते हैं, जो सीधे ऐप में सामग्री खोलते हैं, सफारी रीडायरेक्शन की आवश्यकता को बायपास करते हैं। ये लिंक विशिष्ट और सुरक्षित होते हैं, क्योंकि इन्हें अन्य ऐप द्वारा दावा नहीं किया जा सकता। यह सुनिश्चित किया जाता है कि वेबसाइट की रूट डायरेक्टरी में apple-app-site-association
JSON फ़ाइल हो, जो वेबसाइट और ऐप के बीच एक सत्यापित लिंक स्थापित करती है। यदि ऐप स्थापित नहीं है, तो सफारी उपयोगकर्ता को वेबपेज पर ले जाएगी, ऐप की उपस्थिति बनाए रखते हुए।
पेनटेस्टर्स के लिए, apple-app-site-association
फ़ाइल विशेष रुचि की होती है क्योंकि यह संवेदनशील पथों को प्रकट कर सकती है, संभावित रूप से उन पथों को शामिल करते हुए जो अप्रकाशित सुविधाओं से संबंधित हैं।
डेवलपर्स यूनिवर्सल लिंक को Xcode के Capabilities टैब में Associated Domains को कॉन्फ़िगर करके या .entitlements
फ़ाइल की जांच करके सक्षम करते हैं। प्रत्येक डोमेन के आगे applinks:
जोड़ा जाता है। उदाहरण के लिए, टेलीग्राम की कॉन्फ़िगरेशन इस प्रकार दिखाई दे सकती है:
For more comprehensive insights, refer to the archived Apple Developer Documentation.
If working with a compiled application, entitlements can be extracted as outlined in this guide.
apple-app-site-association
फ़ाइल को सर्वर से उन डोमेन का उपयोग करके प्राप्त किया जाना चाहिए जो अधिकारों में निर्दिष्ट हैं। सुनिश्चित करें कि फ़ाइल HTTPS के माध्यम से सीधे https://<domain>/apple-app-site-association
पर सुलभ है। Apple App Site Association (AASA) Validator जैसे उपकरण इस प्रक्रिया में मदद कर सकते हैं।
ऐप को यूनिवर्सल लिंक को सही तरीके से संभालने के लिए विशिष्ट विधियों को लागू करना चाहिए। देखने के लिए प्राथमिक विधि application:continueUserActivity:restorationHandler:
है। यह महत्वपूर्ण है कि संभाले गए URLs का स्कीम HTTP या HTTPS हो, क्योंकि अन्य का समर्थन नहीं किया जाएगा।
जब एक यूनिवर्सल लिंक एक ऐप खोलता है, तो एक NSUserActivity
ऑब्जेक्ट ऐप को URL के साथ पास किया जाता है। इस URL को संसाधित करने से पहले, इसे मान्य और साफ करना आवश्यक है ताकि सुरक्षा जोखिमों से बचा जा सके। यहाँ Swift में प्रक्रिया का एक उदाहरण है:
URLs को सावधानीपूर्वक पार्स और मान्य किया जाना चाहिए, विशेष रूप से यदि उनमें पैरामीटर शामिल हैं, संभावित स्पूफिंग या गलत डेटा से बचने के लिए। NSURLComponents
API इस उद्देश्य के लिए उपयोगी है, जैसा कि नीचे दिखाया गया है:
Through diligent configuration and validation, developers can ensure that universal links enhance user experience while maintaining security and privacy standards.
GetUniversal.link: आपकी ऐप के यूनिवर्सल लिंक और AASA फ़ाइल के परीक्षण और प्रबंधन को सरल बनाने में मदद करता है। AASA फ़ाइल की अखंडता को सत्यापित करने के लिए बस अपना डोमेन दर्ज करें या लिंक व्यवहार का आसानी से परीक्षण करने के लिए कस्टम डैशबोर्ड का उपयोग करें। यह उपकरण आपको यह भी निर्धारित करने में मदद करता है कि Apple अगली बार आपकी AASA फ़ाइल को कब अनुक्रमित करेगा।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)