11 KiB
iOS यूनिवर्सल लिंक्स
जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!
HackTricks का समर्थन करने के अन्य तरीके:
- यदि आप चाहते हैं कि आपकी कंपनी HackTricks में विज्ञापित हो या HackTricks को PDF में डाउनलोड करें तो सब्सक्रिप्शन प्लान्स देखें!
- आधिकारिक PEASS और HackTricks स्वैग प्राप्त करें
- हमारे विशेष NFTs कलेक्शन, The PEASS Family खोजें
- शामिल हों 💬 डिस्कॉर्ड समूह या टेलीग्राम समूह या मुझे ट्विटर पर फॉलो करें 🐦 @carlospolopm.
- अपने हैकिंग ट्रिक्स साझा करें, HackTricks और HackTricks Cloud github repos में PRs सबमिट करके।
परिचय
यूनिवर्सल लिंक्स उपयोगकर्ताओं को सीधे ऐप में सामग्री खोलने के अनुभव को बिना किसी रुकावट के प्रदान करते हैं, सफारी रिडायरेक्शन की आवश्यकता को छोड़ते हैं। ये लिंक्स अद्वितीय और सुरक्षित होते हैं, क्योंकि इन्हें अन्य ऐप्स द्वारा दावा नहीं किया जा सकता। इसे सुनिश्चित किया जाता है एक apple-app-site-association
JSON फ़ाइल को वेबसाइट की मूल निर्देशिका पर होस्ट करके, वेबसाइट और ऐप के बीच एक सत्यापनीय लिंक स्थापित करके। उन स्थितियों में जहाँ ऐप स्थापित नहीं है, सफारी उपयोगकर्ता को वेबपेज पर निर्देशित करेगा, ऐप की मौजूदगी बनाए रखते हुए।
पेनेट्रेशन टेस्टर्स के लिए, apple-app-site-association
फ़ाइल विशेष रूप से महत्वपूर्ण है क्योंकि यह संवेदनशील पथों को उजागर कर सकती है, जिसमें अप्रकटित सुविधाओं से संबंधित हो सकते हैं।
संबंधित डोमेन्स अनुमतियों का विश्लेषण
डेवलपर्स यून
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:telegram.me</string>
<string>applinks:t.me</string>
</array>
पुरालेखित एप्पल डेवलपर दस्तावेज़ से अधिक व्यापक अनुभव के लिए, यहाँ क्लिक करें।
यदि किसी कंपाइल्ड एप्लिकेशन के साथ काम किया जा रहा है, तो एंटाइटलमेंट्स को इस गाइड में बताए गए तरीके से निकाला जा सकता है।
एप्पल एप साइट एसोसिएशन फ़ाइल प्राप्त करना
apple-app-site-association
फ़ाइल को सर्वर से प्राप्त किया जाना चाहिए जिसमें एंटाइटलमेंट्स में निर्दिष्ट डोमेन होते हैं। सुनिश्चित करें कि फ़ाइल को सीधे https://<domain>/apple-app-site-association
पर HTTPS के माध्यम से पहुंचा जा सकता है। एप्पल एप साइट एसोसिएशन (AASA) वैलिडेटर जैसे उपकरण इस प्रक्रिया में सहायक हो सकते हैं।
एप्प में यूनिवर्सल लिंक्स का संभालन
एप्प को यूनिवर्सल लिंक्स को सही ढंग से संभालने के लिए विशिष्ट विधियों को लागू करना चाहिए। प्राथमिक विधि जिसे खोजना चाहिए है application:continueUserActivity:restorationHandler:
। URL की स्कीम का HTTP या HTTPS होना महत्वपूर्ण है, क्योंकि अन्य स्कीम समर्थित नहीं होंगे।
डेटा हैंडलर विधि का सत्यापन
जब एक यूनिवर्सल लिंक एप्प को खोलता है, तो एप्प को URL के साथ एक NSUserActivity
ऑब्ज
func application(_ application: UIApplication, continue userActivity: NSUserActivity,
restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
// Check for web browsing activity and valid URL
if userActivity.activityType == NSUserActivityTypeBrowsingWeb, let url = userActivity.webpageURL {
application.open(url, options: [:], completionHandler: nil)
}
return true
}
URLs को सावधानी से पार्स किया और मान्यता दी जानी चाहिए, खासकर अगर उनमें पैरामीटर शामिल हैं, ताकि किसी भी संभावित spoofing या गलत डेटा के खिलाफ सुरक्षित रहा जा सके। इस उद्देश्य के लिए NSURLComponents
API उपयोगी है, जैसा नीचे दिखाया गया है:
func application(_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
guard userActivity.activityType == NSUserActivityTypeBrowsingWeb,
let incomingURL = userActivity.webpageURL,
let components = NSURLComponents(url: incomingURL, resolvingAgainstBaseURL: true),
let path = components.path,
let params = components.queryItems else {
return false
}
if let albumName = params.first(where: { $0.name == "albumname" })?.value,
let photoIndex = params.first(where: { $0.name == "index" })?.value {
// Process the URL with album name and photo index
return true
} else {
// Handle invalid or missing parameters
return false
}
}
ध्यानपूर्वक विन्यास और मान्यता से, डेवलपर सुनिश्चित कर सकते हैं कि यूनिवर्सल लिंक्स उपयोगकर्ता अनुभव को बढ़ावा देते हैं जबकि सुरक्षा और गोपनीयता मानकों को बनाए रखते हैं।
संदर्भ
- https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0070/#static-analysis
- https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction#testing-object-persistence-mstg-platform-8
जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert)!
HackTricks का समर्थन करने के अन्य तरीके:
- यदि आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं तो सब्सक्रिप्शन प्लान्स देखें!
- आधिकारिक PEASS & HackTricks स्वैग प्राप्त करें
- हमारे विशेष NFTs कलेक्शन The PEASS Family खोजें
- शामिल हों 💬 डिस्कॉर्ड समूह या टेलीग्राम समूह या मुझे ट्विटर 🐦 @carlospolopm** पर फॉलो** करें।
- हैकिंग ट्रिक्स साझा करें द्वारा पीआर जमा करके HackTricks और HackTricks Cloud github repos में।