किसी फ़ाइल आधारित XSS जोखिम को ठीक करना

यह जानकारी ऐसे डेवलपर के लिए है जिनके ऐप्लिकेशन में File-based Cross-Site Scripting होने का जोखिम हो सकता है.

क्या हो रहा है

आपके एक या उससे ज़्यादा ऐप्लिकेशन में फ़ाइल आधारित क्रॉस-साइट स्क्रिप्टिंग का जोखिम है जिसे ठीक करना ज़रूरी है. कृपया अपने Play कंसोल में दी गई सूचना देखें.आपके Play कंसोल में दिखाई दे रही आखिरी तारीख के बाद, Google Play से ऐसे ऐप्लिकेशन हटाए जा सकते हैं जिनमें सुरक्षा के जोखिमों को ठीक नहीं किया गया है.

कार्रवाई करना ज़रूरी है​

  1. अपने Play कंसोल में साइन इन करें और 'चेतावनियां' सेक्शन पर जाकर देखें कि किन ऐप्लिकेशन पर असर हुआ है. साथ ही, इन समस्याओं को ठीक करने की आखिरी तारीख क्या है.
  2. आपके जिन ऐप्लिकेशन पर असर हुआ है उन्हें अपडेट करें. साथ ही, उसके जोखिम को ठीक करें.
  3. आपके जिन ऐप्लिकेशन पर असर हुआ है उनके अपडेट किए गए वर्शन सबमिट करें.

फिर से सबमिट करने पर, आपके ऐप्लिकेशन की एक बार फिर समीक्षा की जाएगी. इस प्रक्रिया में कई घंटे लग सकते हैं. अगर ऐप्लिकेशन समीक्षा में पास हो जाता है और उसे प्रकाशित कर दिया जाता है, तो फिर और कुछ करने की ज़रूरत नहीं है. अगर ऐप्लिकेशन समीक्षा में फ़ेल हो जाता है, तो ऐप्लिकेशन का नया वर्शन प्रकाशित नहीं किया जाएगा. साथ ही, आपको ईमेल से इसकी सूचना मिल जाएगी.

कुछ और जानकारी

WebSettings वाले ऐसे WebViews जो setAllowFileAccessFromFileURLs या setAllowUniversalAccessFromFileURLs को सही पर सेट करते हैं उन्हें कोई भी गैर-भरोसेमंद वेब सामग्री लोड नहीं करनी चाहिए. इसमें भरोसेमंद डोमेन की ऐसी सामग्री शामिल है जिसे एचटीटीपी पर लोड किया गया है. नुकसान पहुंचाने वाली वेब सामग्री या नेटवर्क, WebView को किसी नुकसान करने वाली डिवाइस में मौजूद फ़ाइल पर रीडायरेक्ट करने के लिए स्क्रिप्ट इंजेक्ट कर सकते हैं. साथ ही, निजी डिवाइस में मौजूद फ़ाइलें या कुकी एक्सेस करने के लिए Cross-Site Scripting वाला हमला लॉन्च कर सकते हैं.

आपको इस जोखिम को आगे दिए गए किसी एक तरीके से रोकना चाहिए:

  1. पक्का करें कि WebViews में खतरनाक सेटिंग नहीं हैं
  2. पक्का करें कि WebViews डिवाइस में मौजूद फ़ाइलें लोड नहीं कर सकते या JavaScript नहीं चला सकते
  3. पक्का करें कि खतरनाक सेटिंग वाले WebViews गैर भरोसेमंद वेब सामग्री लोड न करें

1. पक्का करना कि WebViews में खतरनाक सेटिंग नहीं हैं

WebView की सुरक्षित डिफ़ॉल्ट सेटिंग का इस्तेमाल करने के लिए, अपने मेनिफ़ेस्ट में अपने android:targetSdkVersion को कम से कम 16 होने के लिए अपडेट करें. इसका दूसरा तरीका यह है कि setAllowFileAccessFromFileURLs(false) और setAllowUniversalAccessFromFileURLs(false) को कॉल करके पक्का करें कि उनके WebViews सुरक्षित हैं.

2. यह पक्का करना कि WebViews डिवाइस में मौजूद फ़ाइलें लोड नहीं कर सकते या JavaScript नहीं चला सकते

खतरनाक सेटिंग वाले WebViews को डिवाइस में मौजूद फ़ाइलें लोड करने से रोकने के लिए setAllowFileAccess(false) कॉल करें या खतरनाक सेटिंग वाले WebViews को JavaScript कोड चलाने से रोकने के लिए setJavaScriptEnabled(false) कॉल करें.

3. यह पक्का करना कि खतरनाक सेटिंग वाले WebViews गैर भरोसेमंद वेब सामग्री लोड न करें

अगर कोई WebView इन खतरनाक सेटिंग को चालू करना चाहता है, तो आपको पक्का करना होगा कि वह गैर-भरोसेमंद वेब सामग्री लोड न करे. इसमें एचटीटीपी पर लोड की गई वेब सामग्री शामिल है. आप android:usesCleartextTraffic=false सेट कर सकते हैं या ऐसा Network Security Config सेट कर सकते हैं जो आपके मेनिफ़ेस्ट में एचटीटीपी ट्रैफ़िक की मंज़ूरी नहीं देता. इसके विकल्प के रूप में, आप यह पक्का कर सकते हैं कि खतरनाक सेटिंग वाला कोई भी WebView एचटीटीपी वाला कोई भी यूआरएल लोड न करे.

आपको यह भी पक्का करना चाहिए कि खतरनाक सेटिंग वाले WebViews गैर-भरोसेमंद स्रोतों से मिले यूआरएल लोड न करें.

हम सहायता के लिए उपलब्ध हैं

अगर आप जोखिम की संभावना के बारे में तकनीकी सवाल पूछना चाहते हैं, तो आप Stack Overflow पर पोस्ट कर सकते हैं. साथ ही, “android-security” टैग का इस्तेमाल कर सकते हैं. इस समस्या को ठीक करने के लिए आपको जो कदम उठाने हैं उनके बारे में ज़्यादा जानकारी के लिए, आप हमारी डेवलपर सहायता टीम से संपर्क कर सकते हैं.

false
मुख्य मेन्यू
3864287876980387748
true
खोज मदद केंद्र
true
true
true
true
true
5016068
false
false