9.5 KiB
iOS UIActivity Sharing
जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert)!
दूसरे तरीके HackTricks का समर्थन करने के लिए:
- अगर आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं तो सब्सक्रिप्शन प्लान देखें!
- आधिकारिक PEASS और HackTricks swag प्राप्त करें
- हमारे विशेष NFTs संग्रह The PEASS Family खोजें
- शामिल हों 💬 Discord समूह या टेलीग्राम समूह या हमें ट्विटर 🐦 @carlospolopm** पर फॉलो** करें।
- अपने हैकिंग ट्रिक्स साझा करें HackTricks और HackTricks Cloud github repos को PR जमा करके।
UIActivity Sharing Simplified
iOS 6 के बाद, थर्ड-पार्टी एप्लिकेशनों को डेटा साझा करने की अनुमति दी गई है जैसे AirDrop का उपयोग करके, जैसा कि Apple के Inter-App Communication guide में विस्तार से व्यक्त किया गया है। यह सुविधा एक सिस्टम-व्यापी शेयर एक्टिविटी शीट के माध्यम से प्रकट होती है जो "शेयर" बटन के साथ इंटरैक्ट करने पर सामने आती है।
सभी इनबिल्ट शेयरिंग विकल्पों की व्यापक गणना UIActivity.ActivityType पर उपलब्ध है। डेवलपर अपने एप्लिकेशन के लिए अनुचित मानते हैं तो वे कुछ शेयरिंग विकल्पों को छोड़ सकते हैं।
डेटा साझा करने का तरीका
ध्यान दिया जाना चाहिए:
- साझा किए जा रहे डेटा का प्रकृति।
- कस्टम एक्टिविटी का समावेश।
- कुछ एक्टिविटी प्रकारों को छोड़ना।
साझा करना UIActivityViewController
का निर्माण करके सुविधा प्रदान किया जाता है, जिसमें साझा करने के लिए इच्छित आइटम पास किए जाते हैं। यह इसे कॉल करके प्राप्त किया जाता है:
$ rabin2 -zq Telegram\ X.app/Telegram\ X | grep -i activityItems
0x1000df034 45 44 initWithActivityItems:applicationActivities:
डेवलपर्स को UIActivityViewController
को जांचना चाहिए जिसमें यह शुरू किया गया है, उसमें कौन सी गतिविधियाँ और कस्टम गतिविधियाँ हैं, साथ ही किसी निर्दिष्ट excludedActivityTypes
को।
डेटा प्राप्त करने का तरीका
निम्नलिखित पहलुओं में महत्वपूर्ण हैं जब डेटा प्राप्त किया जाता है:
- कस्टम दस्तावेज़ प्रकार की घोषणा।
- ऐप जो दस्तावेज़ खोल सकता है की दस्तावेज़ प्रकार की निर्देशिका।
- प्राप्त किए गए डेटा की मान्यता की पुष्टि।
स्रोत कोड तक पहुंच के बिना, कोई भी Info.plist
की जांच कर सकता है जैसे UTExportedTypeDeclarations
, UTImportedTypeDeclarations
, और CFBundleDocumentTypes
जैसे कुंजी जिससे एक ऐप दस्तावेज़ के प्रकार को संभाल सकता है और घोषित कर सकता है।
इन कुंजियों पर एक संक्षिप्त मार्गदर्शिका Stackoverflow पर उपलब्ध है, जो सिस्टम-व्यापी मान्यता के लिए UTIs की परिभाषा और दस्तावेज़ प्रकारों को आपके ऐप के साथ जोड़ने की महत्वता को उजागर करती है "Open With" संवाद में एकीकरण के लिए।
गतिशील परीक्षण दृष्टिकोण
गतिविधियों को भेजने का परीक्षण करने के लिए, व्यक्ति:
init(activityItems:applicationActivities:)
विधि में हुक कर सकता है ताकि साझा किए जा रहे आइटम और गतिविधियों को कैप्चर किया जा सके।excludedActivityTypes
संपत्ति को अंतर्दृष्टि करके छोड़ी गई गतिविधियों की पहचान कर सकता है।
आइटम प्राप्त करने के लिए, इसमें शामिल है:
- एप्लिकेशन के साथ एक फ़ाइल साझा करना अन्य स्रोत से (जैसे, AirDrop, ईमेल) जो "Open with..." संवाद को प्रोत्साहित करता है।
- स्थिर विश्लेषण के दौरान पहचानी गई अन्य विधियों के साथ
application:openURL:options:
को हुक करना ऐप के प्रतिक्रिया को देखने के लिए। - ऐप की मजबूती का मूल निर्मित फ़ाइल या फजिंग तकनीकों का उपयोग करना।
संदर्भ
जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!
HackTricks का समर्थन करने के अन्य तरीके:
- यदि आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं तो सब्सक्रिप्शन प्लान की जांच करें!
- प्राप्त करें आधिकारिक PEASS & HackTricks स्वैग
- खोजें The PEASS Family, हमारा विशेष NFTs संग्रह।
- शामिल हों 💬 डिस्कॉर्ड समूह या टेलीग्राम समूह या हमें ट्विटर 🐦 @carlospolopm** पर फॉलो करें।
- अपने हैकिंग ट्रिक्स साझा करें हैकट्रिक्स और हैकट्रिक्स क्लाउड गिटहब रेपो में पीआर जमा करके।