تم استغلال ثغرة أمنية من نوع “XSS” (البرمجة عبر المواقع) في إطار عمل الجولات الافتراضية من قبل جهات خبيثة لحقن سكريبتات ضارة عبر مئات المواقع، بهدف التلاعب بنتائج البحث وإطلاق حملة إعلانات غير مرغوب فيها على نطاق واسع.
تفاصيل الحملة الخبيثة 360XSS
وفقًا للباحث الأمني أوليغ زايتسيف، الذي شارك تقريره مع The Hacker News، فقد أثرت هذه الحملة، التي أُطلق عليها اسم 360XSS، على أكثر من 350 موقعًا، بما في ذلك:
- بوابات حكومية.
- مواقع حكومية أمريكية.
- جامعات أمريكية.
- سلاسل فنادق كبرى.
- مواقع إخبارية.
- وكالات بيع السيارات.
- شركات من قائمة Fortune 500.
وصرح زايتسيف قائلًا: “لم تكن مجرد عملية نشر إعلانات غير مرغوب فيها، بل كانت استغلالًا صناعيًا واسع النطاق للمجالات الموثوقة”.
كيف تم استغلال Krpano؟
تستخدم جميع هذه المواقع إطار عمل Krpano الشهير، والذي يُستخدم لعرض صور وفيديوهات بزاوية 360°، مما يسهل إنشاء جولات افتراضية وتجارب واقع افتراضي.
اكتشف الباحث الحملة بعد ملاحظته إعلانًا متعلقًا بالمحتوى الإباحي في نتائج بحث جوجل، مرتبطًا بنطاق يعود لجامعة ييل (“virtualtour.quantuminstitute.yale[.]edu”).
آلية الهجوم
يتمثل جوهر الهجوم في استغلال معامل XML ضمن إعدادات Krpano، مما يسمح للمهاجمين بإعادة توجيه الزوار إلى مواقع أخرى، حيث يتم تنفيذ حمولة ضارة مشفرة بقاعدة Base64.
تُستخدم هذه الثغرة بسبب ميزة “passQueryParameters” في Krpano، والتي تسمح بتمرير معلمات HTTP إلى العارض عند تضمينه في صفحة HTML. عند تفعيل هذا الخيار، يمكن للمهاجم إنشاء رابط مخصص يؤدي إلى تنفيذ كود ضار عند زيارة الموقع المستهدف.
ثغرة معروفة منذ 2020
تم الكشف عن ثغرة XSS الانعكاسية في Krpano لأول مرة في أواخر عام 2020 (CVE-2020-24901) بمعدل خطورة 6.1/10، مما يعني أن إمكانية الاستغلال كانت معروفة للعامة لأكثر من أربع سنوات.
كيف تم إصلاح الثغرة؟
في إصدار 1.20.10 من Krpano، تم إدخال تحديث يقيد “passQueryParameters” إلى قائمة مسموح بها لمنع الهجمات. ومع ذلك، اكتشف زايتسيف أن إضافة معامل XML يدويًا إلى القائمة المسموح بها يعيد فتح الثغرة.
وأشار الباحث: “لم يكن التثبيت الافتراضي لـ Krpano عرضة للخطر منذ الإصدار 1.20.10، لكن تعديل الإعدادات بشكل معين أعاد المشكلة”.
نطاق الحملة
استغلت هذه الحملة الثغرة لاختراق أكثر من 350 موقعًا لعرض إعلانات تتعلق بـ:
- المحتوى الإباحي.
- المكملات الغذائية.
- الكازينوهات الإلكترونية.
- الأخبار الكاذبة.
كما تم استخدام بعض هذه الصفحات لتعزيز مشاهدات فيديوهات على يوتيوب.
تقنيات استغلال الثغرة
تكمن خطورة الحملة في استغلالها للمجالات الموثوقة لجعل نتائج البحث أكثر موثوقية، مما يُعرف بأسلوب تسميم محركات البحث (SEO Poisoning).
وصف زايتسيف الأسلوب المستخدم قائلاً: “ثغرة XSS الانعكاسية عادةً تتطلب تفاعل المستخدم، ولكن استخدام محركات البحث كمنصة توزيع لهذه الثغرة هو طريقة مبتكرة وفعالة للغاية”.
إجراءات الأمان والتحديثات
بعد الإبلاغ المسؤول عن الثغرة، تم إصدار تحديث جديد Krpano 1.22.4، والذي يلغي دعم التكوين الخارجي عبر معامل XML، مما يقلل من مخاطر هجمات XSS.
التوصيات الأمنية
- تحديث Krpano إلى أحدث إصدار (1.22.4).
- تعطيل “passQueryParameters” لتقليل المخاطر.
- البحث عن الصفحات المصابة وإزالتها باستخدام Google Search Console.
هوية الجهة المهاجمة
لم يتم تحديد المسؤول عن هذه الحملة حتى الآن، ولكن نظرًا لأن الهجوم يقتصر على إعادة التوجيه للإعلانات وليس سرقة بيانات مثل ملفات تعريف الارتباط أو بيانات تسجيل الدخول، فهناك احتمال أن يكون الهجوم مدفوعًا من قبل شركة إعلانات ذات ممارسات مشبوهة كاستراتيجية لتحقيق الأرباح.
هذه الحملة تمثل تذكيرًا بأهمية تحديث البرمجيات بانتظام وتعطيل الميزات غير الضرورية لمنع استغلالها في الهجمات الإلكترونية. كما يجب على مالكي المواقع مراقبة محتواهم بشكل دوري لحماية نطاقاتهم من إساءة الاستخدام في حملات تسميم محركات البحث.