hacktricks/mobile-pentesting/android-app-pentesting/tapjacking.md

12 KiB
Raw Blame History

टैपजैकिंग

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

{% embed url="https://websec.nl/" %}

मूल जानकारी

टैपजैकिंग एक हमला है जहां एक दुरुपयोगी एप्लिकेशन शुरू की जाती है और खुद को एक पीड़ित एप्लिकेशन के ऊपर स्थित करती है। एक बार जब यह पीड़ित ऐप को दिखाई देता है, तो इसका उपयोगकर्ता इंटरफ़ेस इस प्रकार डिज़ाइन किया जाता है कि उपयोगकर्ता को इसके साथ बातचीत करने के लिए धोखा देने के लिए उकसाया जाता है, जबकि यह पीड़ित ऐप पर इंटरेक्शन को आगे बढ़ा रहा है।
असर में, यह उपयोगकर्ता को अंधेरे में रख देता है कि वे वास्तव में पीड़ित ऐप पर क्रियाएँ कर रहे हैं

पता लगाना

इस हमले के लिए विकल्पित ऐप्स को पता लगाने के लिए आपको एंड्रॉइड मैनिफ़ेस्ट में निर्यात क्रियाएँ की खोज करनी चाहिए (ध्यान दें कि एक इंटेंट-फ़िल्टर के साथ एक क्रिया स्वचालित रूप से निर्यात की जाती है)। एक बार जब आप निर्यात क्रियाएँ पाएं हैं, देखें कि क्या उन्हें कोई अनुमति की आवश्यकता है। यह इसलिए है क्योंकि दुरुपयोगी एप्लिकेशन को भी उस अनुमति की आवश्यकता होगी

सुरक्षा

एंड्रॉइड 12 (API 31,32) और उच्चतर

इस स्रोत के अनुसार, एंड्रॉइड 12 (API 31 और 30) और उच्चतर से एंड्रॉइड द्वारा टैपजैकिंग हमलों को स्वचालित रूप से रोका जाता है। इसलिए, यदि एप्लिकेशन वंशावली है तो आप इसका शोषण नहीं कर पाएंगे

filterTouchesWhenObscured

यदि android:filterTouchesWhenObscured को true पर सेट किया गया है, तो View जब भी एक और दृश्यमान विंडो द्वारा अंधेरे किया जाता है, तो स्पर्श प्राप्त नहीं करेगा।

setFilterTouchesWhenObscured

यदि एंड्रॉइड संस्करण कम है तो यह विकल्प setFilterTouchesWhenObscured किसी भी वंशावली का शोषण रोक सकता है।
यदि true पर सेट किया गया है, तो उदाहरण के लिए, एक बटन स्वचालित रूप से अक्षम हो सकता है अगर यह अंधेरे में है:

<Button android:text="Button"
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:filterTouchesWhenObscured="true">
</Button>

शोषण

टैपजैकिंग-निर्यातितगतिविधि

सबसे हाल का Android एप्लिकेशन जो टैपजैकिंग हमला कर रहा है (+ आक्रमित एप्लिकेशन की निर्यातित गतिविधि को पहले आमंत्रित करना), इसमें पाया जा सकता है: https://github.com/carlospolop/Tapjacking-ExportedActivity

उसका उपयोग करने के लिए README निर्देशों का पालन करें

FloatingWindowApp

एक उदाहरण परियोजना जो FloatingWindowApp को लागू करने के लिए उपयोग किया जा सकता है, जिसे अन्य गतिविधियों के ऊपर रखने के लिए उपयोग किया जा सकता है, FloatingWindowApp में मिल सकती है (थोड़ी पुरानी है, apk बनाने में शुभकामनाएं)।

Qark

{% hint style="danger" %} ऐसा लगता है कि यह परियोजना अब अनुरक्षित है और यह कार्यक्षमता अब सही ढंग से काम नहीं कर रही है {% endhint %}

आप qark का उपयोग कर सकते हैं --exploit-apk --sdk-path /Users/username/Library/Android/sdk पैरामीटर के साथ एक दुरुपयोगी एप्लिकेशन बनाने के लिए जांच करने के लिए संभावित टैपजैकिंग जोखिमों के लिए।

सुरक्षा उपाय अपेक्षाकृत सरल है क्योंकि डेवलपर यह चुन सकता है कि जब एक दूसरे द्वारा एक दृश्य ढका जाता है, तो एक दृश्य को छूने की घटनाएँ प्राप्त न करें। Android Developers Reference का उपयोग करना:

कभी-कभी एक ऐप्लिकेशन को यह सत्यापित करने की आवश्यकता होती है कि किसी कार्रवाई को पूर्ण जानकारी और सहमति के साथ उपयोगकर्ता द्वारा किया जा रहा है, जैसे कि अनुमति अनुरोध, खरीदारी करना या विज्ञापन पर क्लिक करना। दुर्भाग्य से, एक दुरुपयोगी ऐप्लिकेशन उपयोक्ता को इन कार्रवाइयों को करने के लिए धोखा देने की कोशिश कर सकता है, जिसे वह अनजान होकर कर रहा हो, दृश्य की इच्छित उद्देश्य को छुपाकर। इसके उपचार के रूप में, फ्रेमवर्क एक स्पर्श फ़िल्टरिंग तंत्र प्रदान करता है जिसका उपयोग किया जा सकता है जो सुरक्षित फ़ंक्शनलिटी तक पहुंच प्रदान करने वाले दृश्यों की सुरक्षा को सुधारने के लिए।

स्पर्श फ़िल्टरिंग को सक्षम करने के लिए, setFilterTouchesWhenObscured(boolean) को कॉल करें या android:filterTouchesWhenObscured लेआउट विशेषता को सत्य में सेट करें। जब सक्षम किया जाता है, तो फ्रेमवर्क उन स्पर्शों को छोड़ देगा जो प्राप्त होते हैं जब दृश्य का विंडो किसी अन्य दृश्य द्वारा ढका जाता है। इस परिणामस्वरूप, दृश्य को स्पर्श प्राप्त नहीं होगा जब एक टोस्ट, डायलॉग या अन्य विंडो दृश्य के विंडो के ऊपर प्रकट होती है।

{% embed url="https://websec.nl/" %}

जीरो से हीरो तक AWS हैकिंग सीखें htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके: