Tapjacking
मूल जानकारी
टैपजैकिंग एक हमला है जहां एक दुरुपयोगी एप्लिकेशन शुरू की जाती है और खुद को एक पीड़ित एप्लिकेशन के ऊपर स्थित करती है। एक बार जब यह पीड़ित ऐप को दिखाई देता है, तो इसका उपयोगकर्ता इंटरफ़ेस इस प्रकार डिज़ाइन किया जाता है कि उपयोगकर्ता को इसके साथ बातचीत करने के लिए धोखा देने के लिए उकसाया जाता है, जबकि यह पीड़ित ऐप पर इंटरेक्शन को आगे बढ़ा रहा है। असर में, यह उपयोगकर्ता को अंधेरे में रख देता है कि वे वास्तव में पीड़ित ऐप पर क्रियाएँ कर रहे हैं।
पता लगाना
इस हमले के लिए विकल्पित ऐप्स को पता लगाने के लिए आपको एंड्रॉइड मैनिफ़ेस्ट में निर्यात क्रियाएँ की खोज करनी चाहिए (ध्यान दें कि एक इंटेंट-फ़िल्टर के साथ एक क्रिया स्वचालित रूप से निर्यात की जाती है)। एक बार जब आप निर्यात क्रियाएँ पाएं हैं, देखें कि क्या उन्हें कोई अनुमति की आवश्यकता है। यह इसलिए है क्योंकि दुरुपयोगी एप्लिकेशन को भी उस अनुमति की आवश्यकता होगी।
सुरक्षा
एंड्रॉइड 12 (API 31,32) और उच्चतर
इस स्रोत के अनुसार, एंड्रॉइड 12 (API 31 और 30) और उच्चतर से एंड्रॉइड द्वारा टैपजैकिंग हमलों को स्वचालित रूप से रोका जाता है। इसलिए, यदि एप्लिकेशन वंशावली है तो आप इसका शोषण नहीं कर पाएंगे।
filterTouchesWhenObscured
filterTouchesWhenObscured
यदि android:filterTouchesWhenObscured
को true
पर सेट किया गया है, तो View
जब भी एक और दृश्यमान विंडो द्वारा अंधेरे किया जाता है, तो स्पर्श प्राप्त नहीं करेगा।
setFilterTouchesWhenObscured
setFilterTouchesWhenObscured
यदि एंड्रॉइड संस्करण कम है तो यह विकल्प setFilterTouchesWhenObscured
किसी भी वंशावली का शोषण रोक सकता है।
यदि true
पर सेट किया गया है, तो उदाहरण के लिए, एक बटन स्वचालित रूप से अक्षम हो सकता है अगर यह अंधेरे में है:
शोषण
टैपजैकिंग-निर्यातितगतिविधि
सबसे हाल का Android एप्लिकेशन जो टैपजैकिंग हमला कर रहा है (+ आक्रमित एप्लिकेशन की निर्यातित गतिविधि को पहले आमंत्रित करना), इसमें पाया जा सकता है: https://github.com/carlospolop/Tapjacking-ExportedActivity।
उसका उपयोग करने के लिए README निर्देशों का पालन करें।
FloatingWindowApp
एक उदाहरण परियोजना जो FloatingWindowApp को लागू करने के लिए उपयोग किया जा सकता है, जिसे अन्य गतिविधियों के ऊपर रखने के लिए उपयोग किया जा सकता है, FloatingWindowApp में मिल सकती है (थोड़ी पुरानी है, apk बनाने में शुभकामनाएं)।
Qark
ऐसा लगता है कि यह परियोजना अब अनुरक्षित है और यह कार्यक्षमता अब सही ढंग से काम नहीं कर रही है
आप qark का उपयोग कर सकते हैं --exploit-apk
--sdk-path /Users/username/Library/Android/sdk
पैरामीटर के साथ एक दुरुपयोगी एप्लिकेशन बनाने के लिए जांच करने के लिए संभावित टैपजैकिंग जोखिमों के लिए।
सुरक्षा उपाय अपेक्षाकृत सरल है क्योंकि डेवलपर यह चुन सकता है कि जब एक दूसरे द्वारा एक दृश्य ढका जाता है, तो एक दृश्य को छूने की घटनाएँ प्राप्त न करें। Android Developer’s Reference का उपयोग करना:
कभी-कभी एक ऐप्लिकेशन को यह सत्यापित करने की आवश्यकता होती है कि किसी कार्रवाई को पूर्ण जानकारी और सहमति के साथ उपयोगकर्ता द्वारा किया जा रहा है, जैसे कि अनुमति अनुरोध, खरीदारी करना या विज्ञापन पर क्लिक करना। दुर्भाग्य से, एक दुरुपयोगी ऐप्लिकेशन उपयोक्ता को इन कार्रवाइयों को करने के लिए धोखा देने की कोशिश कर सकता है, जिसे वह अनजान होकर कर रहा हो, दृश्य की इच्छित उद्देश्य को छुपाकर। इसके उपचार के रूप में, फ्रेमवर्क एक स्पर्श फ़िल्टरिंग तंत्र प्रदान करता है जिसका उपयोग किया जा सकता है जो सुरक्षित फ़ंक्शनलिटी तक पहुंच प्रदान करने वाले दृश्यों की सुरक्षा को सुधारने के लिए।
स्पर्श फ़िल्टरिंग को सक्षम करने के लिए,
setFilterTouchesWhenObscured(boolean)
को कॉल करें या android:filterTouchesWhenObscured लेआउट विशेषता को सत्य में सेट करें। जब सक्षम किया जाता है, तो फ्रेमवर्क उन स्पर्शों को छोड़ देगा जो प्राप्त होते हैं जब दृश्य का विंडो किसी अन्य दृश्य द्वारा ढका जाता है। इस परिणामस्वरूप, दृश्य को स्पर्श प्राप्त नहीं होगा जब एक टोस्ट, डायलॉग या अन्य विंडो दृश्य के विंडो के ऊपर प्रकट होती है।
Last updated