यह पोस्ट जान सेरेडिन्सकी की उत्कृष्ट प्रस्तुति THS 2023 से प्रेरित है।
साइबर सुरक्षा बाइनरी मुद्दा नहीं है – यहां 100% सुरक्षा की गारंटी देने वाले समाधान नहीं हैं। वास्तव में, यह जोखिम का आकलन करने और उन समाधानों को चुनने के बारे में अधिक है जो हमलों के प्रति कम संवेदनशील हैं। बैंकिंग के संदर्भ में ऐसे आकलन का एक उदाहरण यह तथ्य है कि मोबाइल एप्लिकेशन के माध्यम से लेनदेन की पुष्टि करना लोकप्रिय एसएमएस कोड की तुलना में अधिक सुरक्षित है, हालांकि इन तरीकों में भी प्रभावी हमले हो सकते हैं। उदाहरण के लिए, बैंकिंग ऐप्लिकेशन का प्रतिरूपण करने वाले नकली ऐप्लिकेशन और पिगासस जैसे एक्स्प्लॉइट्स का उपयोग करने वाले ऐप्लिकेशन भी हो सकते हैं। हालांकि, मोबाइल बैंकिंग पर सबसे दिलचस्प हमलों में से एक ऐसा है जो पीड़ित के फोन पर एक निर्दोष दिखने वाले ऐप्लिकेशन को इंस्टॉल करता है जो एंड्रॉइड अनुमतियों का दुरुपयोग करता है।
संक्रमण आरेख अक्सर इस प्रकार शुरू होता है कि पीड़ित एक अविश्वसनीय स्रोत से ऐप्लिकेशन इंस्टॉल करता है। यह जानकारी मिलने के कारण उसकी प्रोत्साहित की जाती है कि इंस्टॉल किया गया संस्करण मुफ्त में प्रीमियम सुविधाओं को अनलॉक करता है।
दुर्भाग्य से, कभी-कभी आधिकारिक Google Play स्टोर में भी ऐप्लिकेशन दुर्भावनापूर्ण होते हैं। शुरुआत में वे हानिकारक कार्यक्षमताओं को शामिल नहीं करते हैं, लेकिन बाद के अद्यतनों में उन्हें प्राप्त करते हैं। साइबर अपराधी ऐसे ऐप्लिकेशन बनाते हैं जिनका उद्देश्य निर्दोष दिखता है। उदाहरण के लिए सादे फ्लैशलाइट एप्लिकेशन या कैमरा संचालन उपकरण। ऐसे ऐप्लिकेशन डिवाइस पर विभिन्न कार्यक्षमताओं के लिए अनुमतियों का अनुरोध करते हैं। कुछ महीनों के लिए, वे विश्वासों के अनुसार कार्य करते हैं और कोई समस्या उत्पन्न नहीं करते। उपयोगकर्ता अक्सर उन्हें सकारात्मक समीक्षा प्रदान करते हैं, जिससे ऐप्लिकेशन की प्रतिष्ठा बढ़ती है और अधिक उपयोगकर्ताओं को इसे डाउनलोड करने के लिए प्रोत्साहित करती है। हालांकि, कुछ समय बाद साइबर अपराधी ऐप्लिकेशन को संशोधित करते हैं, दुर्भावनापूर्ण कोड जोड़ते हैं या अनुमतियों को बदलते हैं ताकि वे डेटा चोरी कर सकें। इस प्रकार के विलंबित जोड़ से साइबर अपराधियों को Google Play स्टोर में सत्यापन प्रक्रिया को सफलतापूर्वक पास करने की अनुमति मिलती है।
मैलवेयर के संदर्भ में एक्सेसिबिलिटी सेवाओं और ओवरले का उपयोग कैसे होता है?
एक्सेसिबिलिटी सेवाएं (Accessibility Services) उपयोगकर्ताओं को कुछ कार्यक्षमताओं को निष्पादित करने में मदद करने के लिए डिज़ाइन की गई हैं, जैसे कि स्क्रीन पर दिखाई देने वाली जानकारी को पढ़ने और प्रपत्रों में फ़ील्ड को स्वचालित रूप से भरने में।
दुर्भावनापूर्ण ऐप्लिकेशन, विकलांग उपयोगकर्ताओं के लिए डिज़ाइन की गई एक्सेसिबिलिटी सुविधाओं का दुरुपयोग करते हुए, स्क्रीन पर होने वाली हर चीज़ को रिकॉर्ड कर सकता है और दर्ज की गई जानकारी तक पहुंच सकता है। इस प्रकार, यह मोबाइल ऐप का पासवर्ड जान सकता है और स्वचालित रूप से लेनदेन को निष्पादित और पुष्टि कर सकता है। संदिग्ध अनुमतियों का असाइनमेंट ओवरले (Overlay) नामक एक अन्य चाल का उपयोग करके किया जाता है। उपयोगकर्ता अक्सर यह महसूस नहीं करता है कि वह खतरनाक अनुमतियों को स्वीकार कर रहा है।
ओवरले सेवाओं (Overlay Services) का एक उदाहरण मैसेंजर से संदेश के साथ पॉपअप बबल है।
नीचे दिखाए गए संस्करण में, एक नकली स्क्रीन ओवरले स्क्रीन के वास्तविक हिस्से को छुपाता है और पीड़ित को जानकारी (आमतौर पर गोपनीय जानकारी जैसे कि बैंकिंग डेटा, पिन कोड या सुरक्षा प्रश्नों के उत्तर) दर्ज करने के लिए कहता है। पीड़ित सोचता है कि वह सुरक्षित ऐप्लिकेशन में गोपनीय जानकारी दर्ज कर रहा है, लेकिन वास्तव में वह जानकारी को सीधे हमलावर को भेज रहा होता है।
ओवरले हमलों का यह संस्करण अक्सर मोबाइल बैंकिंग, फिनटेक, ई-कॉमर्स, गेम्स या रिटेल ऐप्लिकेशन को लक्ष्य बनाता है। जब हमलावर पुष्टि पिन को जान लेता है, तो एक्सेसिबिलिटी सेवाओं का उपयोग करते हुए, असली बैंक ऐप्लिकेशन खोलने पर वह स्वचालित रूप से उसमें लॉग इन कर सकता है और ट्रांजैक्शन को निष्पादित और पुष्टि कर सकता है।
अब तक के वास्तविक हमलों के उदाहरण
- ब्रासडेक्स (BrasDex) एक प्रकार का मैलवेयर है जो एंड्रॉइड सिस्टम्स को लक्ष्य बनाता है, विशेष रूप से ब्राज़ील में बैंकिंग ऐप्लिकेशन पर ध्यान केंद्रित करता है। जब यह किसी डिवाइस को संक्रमित करता है, तो BrasDex केवल चुनिंदा ऐप्लिकेशन को पहचानता और उन पर हमला करता है। यह स्क्रीन मॉनिटरिंग, टच कंट्रोल, कीबोर्ड कंट्रोल और अन्य दुर्भावनापूर्ण कार्य के लिए एंड्रॉइड की एक्सेसिबिलिटी सेवाओं का उपयोग करता है। BrasDex का मुख्य उद्देश्य बैंकिंग ऐप्लिकेशन का उपयोग करते समय लॉगिन क्रेडेंशियल्स को चोरी करना और उपयोगकर्ता की जानकारी के बिना लेनदेन करना होता है।
- ERMAC 2.0 एक एंड्रॉइड ट्रोजन है जिसका उपयोग उपयोगकर्ता के लॉगिन क्रेडेंशियल्स को चोरी करने और उन्हें साइबर अपराधियों को भेजने के लिए किया जाता है। चोर इन क्रेडेंशियल्स का उपयोग बैंकिंग और क्रिप्टो करेंसी खातों को हथियाने और विभिन्न धोखाधड़ी गतिविधियों को अंजाम देने के लिए करते हैं। इसका एक उदाहरण एक नकली ऐप्लिकेशन था जिसे एक कानूनी खाद्य आपूर्ति वेबसाइट पर पाया जा सकता था। यह नकली ऐप्लिकेशन एक्सेसिबिलिटी सेवाओं और ओवरले के लिए 43 अनुमतियों का अनुरोध कर सकता था, जिससे लॉगिन क्रेडेंशियल्स की चोरी हो सके।
- Xenomorph एक मैलवेयर है जो हमलों में उपयोग किया जाता रहा है, यद्यपि यह दो साल पहले आया था। शुरुआत में इसे Google Play स्टोर के माध्यम से परफॉर्मेंस इंप्रूवमेंट ऐप्लिकेशन के रूप में वितरित किया गया था। जो उपयोगकर्ता इन ऐप्लिकेशनों को इंस्टॉल करते थे, वे अनजाने में अपने डिवाइस को संक्रमित करते थे, यह सोचते हुए कि परफॉर्मेंस इंप्रूवमेंट के लिए इतनी व्यापक अनुमतियों की आवश्यकता होती है। Xenomorph में टेक्स्ट मैसेजेज को इंटरसेप्ट करने की क्षमता है, जिससे वह लेनदेन की पुष्टि के लिए उपयोग किए गए डेटा को एकत्रित कर सकता है। इसके अलावा, यह एक्सेसिबिलिटी सेवाओं का उपयोग कर स्क्रीन पर सूक्ष्म ओवरले बना सकता है।
डेवलपर्स के लिए मैलवेयर से बचाव के सुझाव जो एक्सेसिबिलिटी सेवाओं का दुरुपयोग करते हैं:
- समस्त एक्सेसिबिलिटी सेवाओं को ब्लॉक करें: यह विकल्प विभिन्न विकलांगताओ वाले उपयोगकर्ताओं के लिए सबसे कम उपयोगकर्ता-अनुकूल होता है, लेकिन अनुमतियों के दुरुपयोग से बचने के सबसे सरल तरीकों में से एक है।
- केवल श्वेत सूची सेवाओं को अनुमति दें: एक्सेसिबिलिटी सेवाओं के लिए अधिक उपयोगकर्ता-अनुकूल दृष्टिकोण, जो सभी एक्सेसिबिलिटी सेवाओं को सूचीबद्ध करने के लिए एपीआई का उपयोग करता है, उनके पैकेज आईडी की पहचान करता है और केवल कुछ विश्वसनीय सेवाओं को ऐप्लिकेशन द्वारा चलाने की अनुमति देता है। हालांकि, बाहर से इंस्टॉल किए गए ऐप्लिकेशन किसी भी पैकेज आईडी की नकल कर सकते हैं, इसलिए यह सुरक्षा केवल Google Play स्टोर से आने वाले खतरों से बचाव करती है।
- सिस्टमयुक्त अनुमतियों वाली सेवाओं को अनुमति दें: आप (Android:重要ForAccessibility) फ़्लैग का उपयोग कर सकते हैं, जो यूजर इंटरफेस के महत्वपूर्ण तत्वों को एक्सेसिबिलिटी सेवाओं के लिए पहचानता है। इसे अपनी एप्लिकेशन में महत्वपूर्ण फ़ील्ड के लिए “नहीं” पर सेट करें और उन एक्सेसिबिलिटी सेवाओं को सीमित करें, जो असंचालित फ़ील्डों को पढ़ने में दिलचस्पी दिखाते हैं। आप इसे एक्सेसिबिलिटी सेवा फ्लैग प्रॉपर्टी की जांच करते हुए और FLAG_INCLUDE_NOT_IMPORTANT_VIEWS की जांच करते हुए कर सकते हैं।
- बायोमेट्रिक्स और सिस्टम डायलॉग का उपयोग करें: महत्वपूर्ण लेनदेन के लिए बायोमेट्रिक ऑथेंटिकेशन की आवश्यकता और इसका उपयोग करना साइबर अपराधियों द्वारा ऐप्लिकेशन में अनधिकृत लेनदेन को करने के लिए एक्सेसिबिलिटी सेवाओं का उपयोग करने से रोक सकता है। ऐप्लिकेशन के माध्यम से लेनदेन को अनिवार्य रूप से सिस्टम डायलॉग के माध्यम से करना भी ओवरले को प्रभावी ढंग से ब्लॉक कर सकता है। एंड्रॉइड के नए संस्करण सिस्टम विंडोज पर ओवरले के काम करने की अनुमति नहीं देते हैं।
- एंड्रॉइड एपीआई 34 का उपयोग करें: यह अपडेट सुनिश्चित करता है कि केवल सत्यापित एक्सेसिबिलिटी सेवाएं ऐप्लिकेशन में संवेदनशील जानकारी देख सकती हैं और उस तक पहुंच सकती हैं।
ओवरले के पहचान की सिफारिशें
Google ने कुछ उपयोगी API पेश किया है ताकि ओवरले का उपयोग करने वाले मैलवेयर के हमलों के पहचान और निषेध में सहायता मिल सके:
- API 9: जब टच फिल्टरिंग विकल्प सक्षम होती है (setFilterTouchesWhenObscured(boolean)), तो सिस्टम उपयोगकर्ता के टच को तब अनदेखा कर देता है जब दृश्य का विंडो ओवरले द्वारा अस्पष्ट होता है। इस मामले में, किसी अन्य दृश्य विंडो (या टॉस्ट/डायलॉग) का उल्लेख है जो टच के स्थान पर स्थित है।
- API 29: यह अपडेट प्रति निवेश स्रोत है पुराने अनुमतियों को पहचानने के लिए अधिक गोपनीयता के साथ (FLAG_WINDOW_IS_PARTIALLY_OBSCURED) का उपयोग करता है, जो तब संकेत देता है जब विंडो मूवमेंट इवेंट प्राप्त कर रहा है जिसे किसी अन्य दृश्य विंडो द्वारा आंशिक रूप से या पूरी तरह से अस्पष्ट किया गया है। महत्वपूर्ण बात यह है कि यह फ़्लैग उस इवेंट पर सेट होता है जहां मूवमेंट वास्तव में ओवरले से गुजरता है या नहीं।
- API 31: यह अपडेट डेवलपर्स को सेटहाइडओवरलेविंडोस(सत्य) का विकल्प देता है, जो स्वचालित रूप से नसंप्रभु ओवरले को छुपाता और हटाता है। वर्तमान में यह सबसे प्रभावी और कुशल दृष्टिकोण है।