Bypass Biometric Authentication (Android)
Last updated
Last updated
सीखें और प्रैक्टिस करें AWS हैकिंग:HackTricks Training AWS Red Team Expert (ARTE) सीखें और प्रैक्टिस करें GCP हैकिंग: HackTricks Training GCP Red Team Expert (GRTE)
यहाँ ध्यान onAuthenticationSucceeded कॉलबैक पर है, जो ऑथेंटिकेशन प्रक्रिया में महत्वपूर्ण है। WithSecure के शोधकर्ताओं ने एक Frida स्क्रिप्ट विकसित की, जो onAuthenticationSucceeded(...) में NULL CryptoObject के बायपास को सक्षम बनाती है। यह स्क्रिप्ट विधि के आह्वान पर फिंगरप्रिंट ऑथेंटिकेशन का स्वचालित बायपास करने के लिए मजबूर करती है। नीचे एक सरल स्निपेट है जो एंड्रॉइड फिंगरप्रिंट संदर्भ में बायपास को प्रदर्शित करता है, पूरी एप्लिकेशन GitHub पर उपलब्ध है।
Frida स्क्रिप्ट चलाने के लिए कमांड:
Another Frida script by WithSecure addresses bypassing insecure crypto object usage. The script invokes onAuthenticationSucceeded with a CryptoObject that hasn't been authorized by a fingerprint. If the application tries to use a different cipher object, it will trigger an exception. The script prepares to invoke onAuthenticationSucceeded and handle the javax.crypto.IllegalBlockSizeException in the Cipher class, ensuring subsequent objects used by the application are encrypted with the new key.
Frida script चलाने के लिए कमांड:
फिंगरप्रिंट स्क्रीन पर पहुँचने और authenticate()
के आरंभ होने पर, बायपास सक्रिय करने के लिए Frida कंसोल में bypass()
टाइप करें:
इंस्ट्रुमेंटेशन फ्रेमवर्क्स जैसे Xposed या Frida का उपयोग रनटाइम पर एप्लिकेशन विधियों में हुक करने के लिए किया जा सकता है। फिंगरप्रिंट प्रमाणीकरण के लिए, ये फ्रेमवर्क कर सकते हैं:
प्रमाणीकरण कॉलबैक को मॉक करें: BiometricPrompt.AuthenticationCallback
के onAuthenticationSucceeded
, onAuthenticationFailed
, या onAuthenticationError
विधियों में हुक करके, आप फिंगरप्रिंट प्रमाणीकरण प्रक्रिया के परिणाम को नियंत्रित कर सकते हैं।
SSL पिनिंग को बायपास करें: यह एक हमलावर को क्लाइंट और सर्वर के बीच ट्रैफ़िक को इंटरसेप्ट और संशोधित करने की अनुमति देता है, संभावित रूप से प्रमाणीकरण प्रक्रिया को बदलने या संवेदनशील डेटा चुराने के लिए।
Frida के लिए उदाहरण कमांड:
रिवर्स इंजीनियरिंग उपकरण जैसे APKTool
, dex2jar
, और JD-GUI
का उपयोग एक Android एप्लिकेशन को डिकंपाइल करने, इसके स्रोत कोड को पढ़ने और इसके प्रमाणीकरण तंत्र को समझने के लिए किया जा सकता है। सामान्यतः चरणों में शामिल हैं:
APK को डिकंपाइल करना: APK फ़ाइल को एक अधिक मानव-पठनीय प्रारूप (जैसे Java कोड) में परिवर्तित करें।
कोड का विश्लेषण करना: फिंगरप्रिंट प्रमाणीकरण के कार्यान्वयन की तलाश करें और संभावित कमजोरियों की पहचान करें (जैसे बैकअप तंत्र या अनुचित मान्यता जांच)।
APK को फिर से संकलित करना: फिंगरप्रिंट प्रमाणीकरण को बायपास करने के लिए कोड को संशोधित करने के बाद, एप्लिकेशन को फिर से संकलित, साइन और परीक्षण के लिए डिवाइस पर स्थापित किया जाता है।
प्रमाणीकरण तंत्र का परीक्षण और बायपास करने के लिए विशेष उपकरण और स्क्रिप्ट डिज़ाइन की गई हैं। उदाहरण के लिए:
MAGISK मॉड्यूल: MAGISK एक Android के लिए उपकरण है जो उपयोगकर्ताओं को अपने उपकरणों को रूट करने और मॉड्यूल जोड़ने की अनुमति देता है जो हार्डवेयर-स्तरीय जानकारी, जिसमें फिंगरप्रिंट शामिल हैं, को संशोधित या स्पूफ कर सकते हैं।
कस्टम-निर्मित स्क्रिप्ट: स्क्रिप्ट को Android डिबग ब्रिज (ADB) के साथ बातचीत करने या एप्लिकेशन के बैकएंड के साथ सीधे फिंगरप्रिंट प्रमाणीकरण का अनुकरण या बायपास करने के लिए लिखा जा सकता है।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)