hacktricks/mobile-pentesting/ios-pentesting/ios-app-extensions.md

78 lines
10 KiB
Markdown
Raw Normal View History

# iOS App Extensions
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong> के साथ!</strong></summary>
2022-04-28 16:01:33 +00:00
HackTricks का समर्थन करने के अन्य तरीके:
2022-04-28 16:01:33 +00:00
* यदि आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें!
* [**आधिकारिक PEASS और HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह
* **शामिल हों** 💬 [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या हमें **ट्विटर** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)** पर फॉलो करें।**
* **हैकिंग ट्रिक्स साझा करें द्वारा PRs सबमिट करके** [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
2022-04-28 16:01:33 +00:00
ऐप एक्सटेंशन्स ऐप्स की क्षमताओं को बढ़ाते हैं जिन्हें अन्य ऐप्स या सिस्टम के साथ इंटरैक्ट करने की अनुमति देते हैं, विशेष सुविधाएं या सामग्री प्रदान करते हैं। ये एक्सटेंशन्स निम्नलिखित होते हैं:
2022-04-28 16:01:33 +00:00
- **कस्टम कीबोर्ड**: सभी ऐप्स में एक अद्वितीय कीबोर्ड प्रदान करता है, जो डिफ़ॉल्ट iOS कीबोर्ड को बदल देता है।
- **शेयर**: सोशल नेटवर्क्स या दूसरों के साथ साझा करने की सुविधा प्रदान करता है।
- **टुडे (विजेट्स)**: नोटिफिकेशन सेंटर के टुडे व्यू से त्वरित रूप से सामग्री प्रदान करता है या कार्य संपादित करता है।
2022-04-28 16:01:33 +00:00
जब एक उपयोगकर्ता इन एक्सटेंशन्स के साथ संलग्न होता है, जैसे किसी मुख्य ऐप से पाठ साझा करना, तो एक्सटेंशन इस इनपुट को अपने संदर्भ में प्रसंस्करण करता है, साझा जानकारी का उपयोग करके अपना कार्य पूरा करने के लिए, जैसा कि Apple की दस्तावेज़ में विस्तार से वर्णित है।
### **सुरक्षा विचार**
2022-04-28 16:01:33 +00:00
मुख्य सुरक्षा पहलू शामिल हैं:
- एक्सटेंशन्स और उनके संग्रहित ऐप्स अंतर-प्रक्रिया संचार के माध्यम से संवाद करते हैं, सीधे नहीं।
- **टुडे विजेट** अपने ऐप से एक विशेष विधि के माध्यम से अपने ऐप को खोलने का अनुरोध कर सकता है।
- साझा डेटा एक निजी संग्रहण में अधिकृत है, लेकिन सीधा पहुंच प्रतिबंधित है।
- कुछ एपीआई, जैसे HealthKit, ऐप एक्सटेंशन्स के लिए अनुमति नहीं हैं, जो लंबे समय तक चलने वाले कार्यों को आरंभ नहीं कर सकते, कैमरा या माइक्रोफोन तक पहुंच नहीं हो सकती, केवल iMessage एक्सटेंशन्स के लिए।
### स्थिर विश्लेषण
#### **ऐप एक्सटेंशन्स की पहचान करना**
स्रोत कोड में एप्लिकेशन एक्सटेंशन्स को खोजने के लिए Xcode में `NSExtensionPointIdentifier` खोजें या एप्लिकेशन बंडल को जांचें `.appex` फ़ाइलें जो एक्सटेंशन्स की सूचित करती हैं। स्रोत कोड के बिना, एप्लिकेशन बंडल के भीतर इन पहचानकर्ताओं को खोजने के लिए grep या SSH का उपयोग करें।
#### **समर्थित डेटा प्रकार**
एक एक्सटेंशन के `Info.plist` फ़ाइल की जाँच करें `NSExtensionActivationRule` के लिए समर्थित डेटा प्रकारों की पहचान करने के लिए। यह सेटअप सुनिश्चित करता है कि केवल संग्रहीत डेटा प्रकारों को मुख्य ऐप्स में एक्सटेंशन ट्रिगर करते हैं।
#### **डेटा साझा करना**
एक ऐप और उसके एक्सटेंशन के बीच डेटा साझा करने के लिए एक साझा संग्रहण आवश्यक है, जिसे "ऐप समूह" के माध्यम से सेटअप किया गया है और `NSUserDefaults` के माध्यम से पहुंचा जाता है। यह साझा स्थान एक्सटेंशन्स द्वारा प्रारंभ किए गए पृष्ठांतरणों के लिए आवश्यक है।
#### **एक्सटेंशनों की प्रतिबंधित करना**
ऐप्स किसी विशेष एक्सटेंशन प्रकारों को प्रतिबंधित कर सकते हैं, विशेषकर कस्टम कीबोर्ड्स, सुनिश्चित करते हुए कि संवेदनशील डेटा हैंडलिंग सुरक्षा प्रोटोकॉल के साथ मेल खाती है।
### गतिशील विश्लेषण
गतिशील विश्लेषण में शामिल हैं:
- **साझा आइटमों की जाँच**: `NSExtensionContext - inputItems` में हुक करें ताकि साझा डेटा प्रकार और मूल्यों को देख सकें।
- **एक्सटेंशन्स की पहचान करना**: `NSXPCConnection` जैसे आंतरिक तंत्रों को देखकर जानें कि आपके डेटा को कौन-कौन प्रक्रिया करती हैं।
`frida-trace` जैसे उपकरण अंतर-प्रक्रिया संचार के तकनीकी विवरणों में रुचि रखने वालों के लिए मूल प्रक्रियाओं को समझने में मदद कर सकते हैं।
## संदर्भ
* [https://mas.owasp.org/MASTG/iOS/0x06h-Testing-Platform-Interaction/](https://mas.owasp.org/MASTG/iOS/0x06h-Testing-Platform-Interaction/)
* [https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0072/](https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0072/)
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
HackTricks का समर्थन करने के अन्य तरीके:
2022-04-28 16:01:33 +00:00
* यदि आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें!
* [**आधिकारिक PEASS और HackTricks स्वैग**](https://peass.creator-spring.com) प्राप्त करें
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFTs**](https://opensea.io/collection/the-peass-family) संग्रह
* **शामिल हों** 💬 [**डिस्कॉर्ड समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) या हमें **ट्विटर** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)** पर फॉलो करें।**
* **हैकिंग ट्रिक्स साझा करें द्वारा PRs सबमिट करके** [**HackTricks**](https://github.com/carlospolop/hacktricks) और [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>