<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert) के साथ</strong></a><strong>!</strong></summary>
* यदि आप अपनी **कंपनी का विज्ञापन HackTricks में देखना चाहते हैं** या **HackTricks को PDF में डाउनलोड करना चाहते हैं** तो [**सब्सक्रिप्शन प्लान्स देखें**](https://github.com/sponsors/carlospolop)!
Android विकास का एक महत्वपूर्ण पहलू WebViews के सही हैंडलिंग में शामिल है। यह गाइड WebView उपयोग से जुड़े जोखिमों को कम करने के लिए मुख्य कॉन्फ़िगरेशन और सुरक्षा अभ्यासों पर प्रकाश डालता है।
डिफ़ॉल्ट रूप से, WebViews फ़ाइल एक्सेस की अनुमति देते हैं। यह कार्य Android API स्तर 3 (कपकेक 1.5) से उपलब्ध `setAllowFileAccess()` मेथड द्वारा नियंत्रित होता है। **android.permission.READ\_EXTERNAL\_STORAGE** अनुमति वाले एप्लिकेशन फ़ाइल URL स्कीम (`file://path/to/file`) का उपयोग करके बाह्य संग्रह से फ़ाइल पढ़ सकते हैं।
* **फ़ाइल URLs से यूनिवर्सल एक्सेस**: यह पुरानी विशेषता फ़ाइल URLs से क्रॉस-ऑरिजिन अनुरोधों की अनुमति देती थी, जिससे संभावित XSS हमलों के कारण एक महत्वपूर्ण सुरक्षा जोखिम उत्पन्न होता था। एप्लिकेशन्स जो Android Jelly Bean और नए लक्ष्यित कर रहे हैं के लिए डिफ़ॉल्ट सेटिंग अक्षम (`false`) है।
* इस सेटिंग की जांच करने के लिए, `getAllowUniversalAccessFromFileURLs()` का उपयोग करें।
* इस सेटिंग को संशोधित करने के लिए, `setAllowUniversalAccessFromFileURLs(boolean)` का उपयोग करें।
* **फ़ाइल URLs से फ़ाइल एक्सेस**: यह विशेषता भी पुरानी है, जो अन्य फ़ाइल स्कीम URLs से सामग्री तक पहुंच को नियंत्रित करती थी। यूनिवर्सल एक्सेस की तरह, इसकी डिफ़ॉल्ट सेटिंग सुरक्षा के लिए अक्षम है।
* जांच करने के लिए `getAllowFileAccessFromFileURLs()` का उपयोग करें और सेट करने के लिए `setAllowFileAccessFromFileURLs(boolean)` का उपयोग करें।
* **जावास्क्रिप्ट**: वेबव्यूज में डिफ़ॉल्ट रूप से अक्षम होता है, इसे `setJavaScriptEnabled()` के माध्यम से सक्षम किया जा सकता है। सावधानी बरतना चाहिए क्योंकि जावास्क्रिप्ट को सही सुरक्षा उपायों के बिना सक्षम करना सुरक्षा खतरे उत्पन्न कर सकता है।
* **इंटेंट स्कीम**: वेबव्यूज `intent` स्कीम को हैंडल कर सकते हैं, जो सावधानीपूर्वक प्रबंधित नहीं किया गया हो सकता है, जिससे उत्पादन हो सकता है। एक उदाहरण भेद्यता में एक उदाहरण वेबव्यू पैरामीटर "support\_url" शामिल था जिसका शोध लिया जा सकता था ताकि क्रॉस-साइट स्क्रिप्टिंग (XSS) हमले को क्रियान्वित किया जा सके।
एंड्रॉइड द्वारा एक सुविधा प्रदान की गई है जो वेबव्यू में **जावास्क्रिप्ट** को **नेटिव एंड्रॉइड ऐप फंक्शन** को आमंत्रित करने की सुविधा प्रदान करती है। इसे `addJavascriptInterface` विधि का उपयोग करके प्राप्त किया जाता है, जो जावास्क्रिप्ट को नेटिव एंड्रॉइड कार्यक्षमताओं के साथ एकीकृत करता है, जिसे _वेबव्यू जावास्क्रिप्ट ब्रिज_ कहा जाता है। सावधानी बरतने की सलाह दी जाती है क्योंकि यह विधि वेबव्यू के सभी पृष्ठों को पंजीकृत जावास्क्रिप्ट इंटरफेस ऑब्ज
* जोखिम को कम करने के लिए, **JavaScript ब्रिज़ उपयोग को सीमित** करें APK के साथ शिप कोड तक और रिमोट स्रोत से JavaScript लोड करने से रोकें। पुराने डिवाइस के लिए, न्यूनतम API स्तर को 17 पर सेट करें।
* एक दस्तावेज़ीत विधि द्वारा रिफ्लेक्शन के माध्यम से RCE हासिल करने की अनुमति देती है एक विशिष्ट पेलोड को निष्पादित करके। हालांकि, `@JavascriptInterface` एनोटेशन अनधिकृत मेथड एक्सेस को रोकता है, हमले की सतह को सीमित करता है।
* **रिमोट डीबगिंग** **Chrome Developer Tools** के साथ संभव है, जो WebView सामग्री के भीतर अंतर्क्रिया और अर्बिट्रे JavaScript निष्पादन को संभव बनाता है।
<summary><strong>जानें AWS हैकिंग को शून्य से हीरो तक</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* यदि आप अपनी **कंपनी का विज्ञापन HackTricks में देखना चाहते हैं** या **HackTricks को PDF में डाउनलोड करना चाहते हैं** तो [**सब्सक्रिप्शन प्लान्स**](https://github.com/sponsors/carlospolop) देखें!