اختراق الواتس اب باستخدام هجوم QRLJacking

شرح هجوم QRLJacking للإختراق من خلال QR Code

2 تعليق yes 20- يوليو -2016 ابرام مرزوق

شرح هجوم QRLJacking للإختراق من خلال QR Code

قام الباحث الأمني المصري محمد عبد الباسط النوبي بنشر آخر أبحاثه الأمنية بعنوان QRLJacking وهي إختصار لـ Quick Response Code Login Jacking وهو ببساطة اسلوب جديد من الممكن استخدامه في إختراق الحسابات علي المواقع التي تستعمل QR Codes كخدمة لتسجيل الدخول, مثال لهذا هو WhatsApp Web, ما اقصده هنا ان بعض المواقع توفر لك QR Code ويجب عليك عمل Scan لهذا الكود من هاتفك حتي يتم ربط حسابك الموجود علي الهاتف بالموقع الإلكتروني علي الويب.

 

ماهو هجوم QRLJacking

QRLJacling هو اسلوب بسيط ولكن قوي والذي يستهدف المواقع والخدمات التي تعتمد علي QR Codes لتسجيل دخول المستخدمين, ببساطة فـ QRLJacking هو عبارة عن خداع او اقناع الضحية في عمل Scan للكود الخاص بالمهاجم, وبالتالي سيتم ربط حساب الضحية بجهاز المهاجم.

 

كيف يعمل هجوم QRLJacking

هذه هي خطوات استغلال هذا الأسلوب:

  1. يقوم المهاجم بأنشاء الـQR Code الخاص به والمتصل بالجلسة الخاصة به.
  2. يقوم المهاجم بعمل صفحة HTML ويتم تضمين الـQR Code الخاص بالمهاجم فيها بحيث انه يتم تحديث هذا الكود كلما تم تحديث الكود الأصلي
  3. يقوم المهاجم بكتابة نصوص لأقناع الضحية بعمل Scan للكود الظاهر امامه (والذي يخص المهاجم)
  4. يرسل المهاجم هذه الصفحة للضحية
  5. اذا قام الضحية بعمل Scan لهذا الكود, فسيحصل المهاجم علي صلاحيات كاملة علي حساب الضحية وهذا بسبب ان الضحية قام بعمل Scan لكود الجلسة الخاصة بالمهاجم.
كيفية إستخدام هجوم QRLJacking

كيفية عمل هجوم QRLJacking

خطورة QRLJacking

من خطورة QRLJacking انها تتيح للمهاجم اختراق حساب الضحية علي Whatsapp مثلا, وحصول علي صلاحيات كاملة عليه وهذا بسبب ان الضحية قام بعمل Scan للكود الخاص بالمهاجم وبالتالي فأن حساب الضحية سيتم ربطه بجهاز الضحية.

هناك عدة اشياء اخري ايضا مثل Information disclosure او كشف معلومات عن الضحية مثل GPS Location و IMEI الخاص بجهاز الضحية.

 

متطلبات القيام بـQRLJacking

كما ذكرنا من قبل, فإن احد مميزات هذا الهجوم هو بساطته. كل ما تحتاجه هو سكربت بسيط ويمكن عمله بـ JS مثلا وكل مهمة هذا السكربت هي القيام بتحديث الصورة/الكود الظاهر عند الضحية. هذا شئ مطلوب بسبب ان كل المواقع التي تستخدم تقنية Login with QR Code تقوم باظهار الـQR Code ولكن تقوم بتحديثه بعد مدة معينة, ولذلك مهمة هذا الاسكربت هي تحديث الصورة الظاهرة عند الضحية كلما تغيرت الصورة الأصلية الموجودة علي  جهاز المهاجم.

اخيرا.. هذا كل ما يحتاجه هذا الهجوم: مهاجم (لا يحتاج اي خبرات) + سكربت لتحديث الكود + صفحة لأقناع الضحية بعمل Scan للكود الخاص بالمهاجم.

 

استغلال QRLJacking بطرق متقدمة اكثر

هناك عدة طرق مختلفة ومتقدمة اكثر لأستغلال هجوم QRLJacking.

استخدام الهندسة الأجتماعية

بعض المهاجمين قد يستخدموا الهندسة الأجتماعية بمن اجل اقناع الضحية ان يفعل المطلوب منه, مثل عمل صفحة ممثالة تماما لصفحة تسجيل الدخول مثلا!

اختراق مواقع كبيرة وحقن البايلود فيها

هذه الطريقة جيدة جدا في موضوع اقناع الضحية, حيث من الممكن ان يقوم شخصا ما باختراق موقع مشهور ويقوم بعمل Inject لكود HTML بهذا الموقع والذي يطلب من الزوار عمل Scan للكود, وطبعا سيقوم الزوار بتنفيذ المطلوب لأن الموقع موثوق به.

عمل SSL Stripping

يمكن ايضا عمل هجوم SSL Stripping وهو هجوم يقوم بمنع تصفح المواقع علي HTTPS وبالتالي سيتم استخدام HTTP. يمكن للمهاجم في هذه الحالة القيام بالتلاعب الخاص بمحتوي الموقع او الصفحة التي يتصفحها االضحية والقيام بحقن محتوي الـHTML ألخاص به والذي يطلب من الضحية عمل Scan للكود.

الأتصالات الغير امنة علي الشبكة المحلية LAN

هذا الهجوم يعتبر الأفضل اذا كنت تستهدف ضحايا موجودين معك علي الشبكة المحلية والذي يقوم باستغلال المواقع التي لا تستخدم HTTPS, وبعدها يقوم المهاجم بعمل هجوم MITM (رجل في المنتصف) علي الضحية الموجود في نفس الشبكة المحلية مع المهاجم.ي يقوم المهاجم بعدها بحقن كود JS في هذه المواقع الغير امنة والتي تقوم بالطلب من المستخدم بعمل Scan للكود, ومثال لهذه الطريقة تجونه في الصورة التالية.

هجوم QRLJacking المستخدم لاختراق التطبيقات

هجوم QRLJacking المستخدم لاختراق الواتس اب

 

بعض الخدمات المعرضة لهذا الهجوم

هناك العديد من الخدمات المعرضة لهذا الهجوم. أهمهم هو:

خدمات التواصل (Chatting apps)

  • WhatsApp
  • WeChat
  • Line
  • Weibo
  • QQ Instant Messaging

خدمات البريد الإلكتروني

  • QQ Mail
  • Yandex Mail

eCommerce

  • Alibaba
  • Aliexpress
  • Taobao
  • Tmall
  • 1688.com
  • Alimama
  • Taobao Trips

مواقع الدفع الإلكتروني

  • AliPay
  • TenPay
  • Yandex Money

خدمات الـPassport (خطير جدا)

  • Yandex Passport (Yandex Mail, Yandex Money, Yandex Maps, Yandex Videos, etc…)

خدمات اخري مختلفة

  • AirDroid
  • MyDigiPass
  • Zapper
  • Trustly App
  • Yelophone
  • Alibaba Yunos

طبعا اي شخص يستخدم هذه المواقع فهو معرض لهجوم QRLJacking وهذا بسبب ان كل هذه المواقع بها خدمة تسجيل الدخول عن طريق Scan للـQR Code.

و أخيراً…

هذا الهجوم فعال جدا, و يؤدي إلي نتائج رائعة اذا تم استغلاله بطريقة صحيحة, من اجل الحماية فيجب عليك ان لا تقوم بعمل Scan لأي كود موجود في اي صفحة خارجية غير الموقع نفسه.. فمثلا لا تقوم بعمل سكان لكود واتساب علي موقع أمازون !!

 

يعض الفيديوهات والتي يقوم فيها محمد بأستغلال هذا الهجوم:

 

OWASP: https://www.owasp.org/index.php/QRLJacking

GitHub Repository: https://github.com/OWASP/QRLJacking

Documentation: https://github.com/OWASP/QRLJacking/wiki

ibram

ابرام, 14 سنة, مبرمج و باحث امني. كمبرمج فانا مطور مواقع بلغة PHP ومطور تطبيقات بلغة Python. كباحث أمني فأنا اصغر مصري في قائمة شرف Facebook و رابع اصغر شخص في العالم, اسمي موجود في العديد من المواقع الأخري. مهتم بأمن المعلومات وكل ما يخص التكنولوجيا, واحب مشاركة كل ما اعرفه.

إضافة تعليق

  • omar

    شكرا

  • فأن حساب الضحية سيتم ربطه بجهاز الضحية …

    اذ لم يخيب ضني اتوقع انك تقصد ربط حساب الضحية بحساب المهاجم

    شكرا لك