TL;DR

  • KakaoTalk 10.4.3 वर्ज़न में deep link validation की समस्या है, जिससे remote attacker WebView में मनचाहा JavaScript चला सकता है और HTTP request header से access token लीक कर सकता है।
  • इस token का उपयोग करके दूसरे यूज़र के account पर कब्ज़ा किया जा सकता है, उसे attacker-नियंत्रित डिवाइस पर register किया जा सकता है, और chat messages पढ़े जा सकते हैं।
  • इस bug को CVE-2023-51219 आवंटित किया गया है।

पृष्ठभूमि

  • KakaoTalk को 100 मिलियन से अधिक downloads मिले हैं और यह कोरिया का सबसे लोकप्रिय chat app है।
  • KakaoTalk डिफ़ॉल्ट रूप से end-to-end encryption (E2EE) का उपयोग नहीं करता।
  • Secure Chat नाम का एक optional E2EE feature है, लेकिन यह group messaging या voice calls को support नहीं करता।

Entry Point: CommerceBuyActivity

  • CommerceBuyActivity WebView एक प्रमुख entry point है जिस पर attacker ध्यान दे सकता है।
    • इसे deep link से शुरू किया जा सकता है (adb shell am start kakaotalk://buy)
    • JavaScript enabled है (settings.setJavaScriptEnabled(true);)
    • intent:// scheme को support करता है, जिससे दूसरे private app components को data भेजा जा सकता है।
    • intent:// URI की validation अपर्याप्त है, इसलिए संभावित रूप से सभी app components तक पहुँचा जा सकता है।
    • Authorization HTTP header में access token लीक हो जाता है।

URL redirect के ज़रिये DOM XSS

Deep link के ज़रिये Kakao Mail account takeover

  • एक malicious deep link के माध्यम से यूज़र का access token attacker server पर भेजा जा सकता है।
  • access token का उपयोग करके पीड़ित के Kakao Mail account पर कब्ज़ा किया जा सकता है, या नया mail account बनाकर मौजूदा email address को overwrite किया जा सकता है।

Burp का उपयोग कर KakaoTalk password reset

  • पीड़ित के Kakao Mail account तक पहुँचकर password reset की कोशिश की जा सकती है।
  • 2-factor authentication (2FA) को bypass करने के लिए Burp से requests को intercept और modify किया जाता है।

PoC

  • attacker एक malicious deep link तैयार करता है, और जैसे ही पीड़ित उस पर click करता है, access token लीक हो जाता है।
  • लीक हुए access token का उपयोग करके पीड़ित का password reset किया जाता है और attacker की डिवाइस को पीड़ित के KakaoTalk account में register कर दिया जाता है।

Takeaways

  • अब भी ऐसे लोकप्रिय chat apps मौजूद हैं जिनमें बहुत जटिल न होने वाली attack chain से यूज़र के messages पर कब्ज़ा किया जा सकता है।
  • अगर app developers कुछ साधारण गलतियाँ कर दें, तो Android का मजबूत security model और message encryption भी मदद नहीं कर पाते।
  • एशियाई chat apps अब भी security research community में कम आंके जाते हैं।

GN⁺ की राय

  1. सुरक्षा खामी की गंभीरता: KakaoTalk जैसे बड़े पैमाने पर इस्तेमाल होने वाले app में मिली सुरक्षा खामी फिर से याद दिलाती है कि user data protection कितना महत्वपूर्ण है।
  2. डेवलपर की ज़िम्मेदारी: app developers को security validation पूरी सख़्ती से करनी चाहिए, और खासकर sensitive data से जुड़े features में अतिरिक्त सावधानी रखनी चाहिए।
  3. यूज़र शिक्षा: यूज़र्स को भी संदिग्ध links पर click न करने, और 2-factor authentication को सक्षम करने जैसे कदमों से अपनी security awareness बढ़ानी चाहिए।
  4. सुरक्षा शोध की आवश्यकता: एशियाई chat apps पर security research और अधिक सक्रिय होनी चाहिए, ताकि और vulnerabilities पहले से खोजकर ठीक की जा सकें।
  5. विकल्पों पर विचार: KakaoTalk के अलावा Signal, Telegram जैसे security-केंद्रित messaging apps पर भी विचार किया जा सकता है।

अभी कोई टिप्पणी नहीं है.

अभी कोई टिप्पणी नहीं है.