تم اكتشاف دودة FritzFrog، والتي أصابت الخوادم عبر SSH وأنشأت شبكة روبوتات لامركزية

شركة Guardicore المتخصصة في حماية مراكز البيانات والأنظمة السحابية، مكشوف FritzFrog، برنامج ضار جديد عالي التقنية يهاجم الخوادم المستندة إلى Linux. يجمع FritzFrog بين دودة تنتشر من خلال هجوم وحشي على خوادم ذات منفذ SSH مفتوح، ومكونات لبناء شبكة روبوتات لا مركزية تعمل بدون عقد تحكم وليس لديها نقطة فشل واحدة.

لبناء شبكة الروبوتات، يتم استخدام بروتوكول P2P خاص، حيث تتفاعل العقد مع بعضها البعض، وتنسق تنظيم الهجمات، وتدعم تشغيل الشبكة وتراقب حالة بعضها البعض. يتم العثور على ضحايا جدد من خلال تنفيذ هجوم وحشي على الخوادم التي تقبل الطلبات عبر SSH. عند اكتشاف خادم جديد، يتم البحث في قاموس للمجموعات النموذجية لتسجيلات الدخول وكلمات المرور. يمكن إجراء التحكم من خلال أي عقدة، مما يجعل من الصعب تحديد مشغلي الروبوتات وحظرهم.

ووفقا للباحثين، فإن الروبوتات لديها بالفعل حوالي 500 عقدة، بما في ذلك خوادم العديد من الجامعات وشركة السكك الحديدية الكبيرة. ويشار إلى أن الأهداف الرئيسية للهجوم هي شبكات المؤسسات التعليمية والمراكز الطبية والهيئات الحكومية والبنوك وشركات الاتصالات. بعد اختراق الخادم، يتم تنظيم عملية تعدين عملة Monero المشفرة عليه. تم تتبع نشاط البرامج الضارة المعنية منذ يناير 2020.

الشيء المميز في FritzFrog هو أنه يحتفظ بجميع البيانات والتعليمات البرمجية القابلة للتنفيذ في الذاكرة فقط. تتكون التغييرات التي يتم إجراؤها على القرص فقط من إضافة مفتاح SSH جديد إلى ملف Author_keys، والذي يتم استخدامه لاحقًا للوصول إلى الخادم. لا يتم تغيير ملفات النظام، مما يجعل الدودة غير مرئية للأنظمة التي تتحقق من سلامتها باستخدام المجاميع الاختبارية. تقوم الذاكرة أيضًا بتخزين قواميس كلمات المرور وبيانات التعدين، والتي تتم مزامنتها بين العقد باستخدام بروتوكول P2P.

يتم تمويه المكونات الضارة كعمليات ifconfig وliexec وphp-fpm وnginx. تراقب عقد الروبوتات حالة جيرانها، وإذا تمت إعادة تشغيل الخادم أو حتى إعادة تثبيت نظام التشغيل (إذا تم نقل ملف مفاتيح_معتمدة معدل إلى النظام الجديد)، فإنها تعيد تنشيط المكونات الضارة على المضيف. للاتصال، يتم استخدام SSH القياسي - تقوم البرامج الضارة أيضًا بتشغيل "netcat" محلي يرتبط بواجهة المضيف المحلي ويستمع إلى حركة المرور على المنفذ 1234، والذي يصل إليه المضيفون الخارجيون من خلال نفق SSH، باستخدام مفتاح من المفاتيح المعتمدة للاتصال.

تم اكتشاف دودة FritzFrog، والتي أصابت الخوادم عبر SSH وأنشأت شبكة روبوتات لامركزية

تتم كتابة كود مكون FritzFrog في Go ويتم تشغيله في وضع متعدد الخيوط. تتضمن البرامج الضارة عدة وحدات تعمل في سلاسل مختلفة:

  • Cracker - يبحث عن كلمات المرور على الخوادم التي تعرضت للهجوم.
  • CryptoComm + Parser - ينظم اتصال P2P مشفر.
  • CastVotes هي آلية للاختيار المشترك للمضيفين المستهدفين للهجوم.
  • TargetFeed - يتلقى قائمة العقد للهجوم من العقد المجاورة.
  • DeployMgmt هو تطبيق لفيروس متنقل يوزع تعليمات برمجية ضارة على خادم مخترق.
  • مملوك - مسؤول عن الاتصال بالخوادم التي تقوم بالفعل بتشغيل تعليمات برمجية ضارة.
  • التجميع - يقوم بتجميع ملف في الذاكرة من كتل منقولة بشكل منفصل.
  • Antivir - وحدة نمطية لقمع البرامج الضارة المنافسة، وتحدد وتنهي العمليات باستخدام السلسلة "xmr" التي تستهلك موارد وحدة المعالجة المركزية.
  • Libexec هي وحدة لتعدين عملة Monero المشفرة.

يدعم بروتوكول P2P المستخدم في FritzFrog حوالي 30 أمرًا مسؤولاً عن نقل البيانات بين العقد، وتشغيل البرامج النصية، ونقل مكونات البرامج الضارة، وحالة الاستقصاء، وتبادل السجلات، وإطلاق الوكلاء، وما إلى ذلك. يتم نقل المعلومات عبر قناة مشفرة منفصلة مع تسلسل بتنسيق JSON. يستخدم التشفير تشفير AES غير المتماثل وترميز Base64. يتم استخدام بروتوكول DH لتبادل المفاتيح (ديفي-هيلمان). لتحديد الحالة، تقوم العقد بتبادل طلبات ping باستمرار.

تحتفظ جميع عقد الروبوتات بقاعدة بيانات موزعة تحتوي على معلومات حول الأنظمة التي تعرضت للهجوم والمخترقة. تتم مزامنة أهداف الهجوم عبر شبكة الروبوتات - حيث تهاجم كل عقدة هدفًا منفصلاً، على سبيل المثال. لن تهاجم عقدتان مختلفتان من الروبوتات نفس المضيف. تقوم العقد أيضًا بجمع الإحصائيات المحلية وإرسالها إلى الأجهزة المجاورة، مثل حجم الذاكرة الفارغة ووقت التشغيل وتحميل وحدة المعالجة المركزية ونشاط تسجيل الدخول إلى SSH. يتم استخدام هذه المعلومات لتحديد ما إذا كان سيتم بدء عملية التعدين أو استخدام العقدة فقط لمهاجمة الأنظمة الأخرى (على سبيل المثال، لا يبدأ التعدين على الأنظمة المحملة أو الأنظمة ذات اتصالات المسؤول المتكررة).

للتعرف على فريتزفروج، اقترح الباحثون طريقة بسيطة شيل. لتحديد تلف النظام
علامات مثل وجود اتصال الاستماع على المنفذ 1234، وجود مفتاح خبيث في المفاتيح المعتمدة (يتم تثبيت نفس مفتاح SSH على جميع العقد) ووجود العمليات الجارية "ifconfig" و"libexec" و"php-fpm" و"nginx" في الذاكرة والتي لا تحتوي على ملفات قابلة للتنفيذ مرتبطة بها ("/proc/ /exe" يشير إلى ملف بعيد). يمكن أن تكون العلامة أيضًا وجود حركة مرور على منفذ الشبكة 5555، والذي يحدث عندما تصل البرامج الضارة إلى المجمع النموذجي web.xmrpool.eu أثناء تعدين عملة Monero المشفرة.

المصدر: opennet.ru

إضافة تعليق