على الإنترنت ، أسئلة مثل "كيف يمكنني التحقق مما إذا كان جهاز التوجيه أو الكمبيوتر أو كاميرا IP أو أي جهاز آخر في شبكة الروبوت؟" حفزني هذا على التحدث عن واحدة من حالات الاصطدام القليلة مع الروبوتات من ممارستي.
أثناء دراسة حركة المرور المشبوهة ، صادفت عنوان IP لجهاز التوجيه ، والذي تم منه إجراء محاولات فاشلة للاتصال عبر SSH بـ HONEYPOT. في /var/log/auth.log رأيت هذا:
... Oct 9 23:52:04 dvrh sshd[3523]: Failed password for root from 129.***.***.29 port 35276 ssh2 Oct 9 23:52:04 dvrh sshd[3523]: Connection closed by authenticating user root 129.***.***.29 port 35276 [preauth] Oct 9 23:52:05 dvrh sshd[3525]: Connection closed by authenticating user root 129.***.***.29 port 35278 [preauth] Oct 9 23:52:06 dvrh sshd[3529]: Failed password for root from 129.***.***.29 port 35280 ssh2 Oct 9 23:52:06 dvrh sshd[3529]: Connection closed by authenticating user root 129.***.***.29 port 35280 [preauth] Oct 9 23:52:06 dvrh sshd[3531]: Invalid user admin from 129.***.***.29 port 35282 Oct 9 23:52:07 dvrh sshd[3531]: Failed password for invalid user admin from 129.***.***.29 port 35282 ssh2 Oct 9 23:52:07 dvrh sshd[3531]: Connection closed by invalid user admin 129.***.***.29 port 35282 [preauth] Oct 9 23:52:08 dvrh sshd[3533]: Invalid user test from 129.***.***.29 port 35286 Oct 9 23:52:11 dvrh sshd[3533]: Failed password for invalid user test from 129.***.***.29 port 35286 ssh2 Oct 9 23:52:11 dvrh sshd[3533]: Connection closed by invalid user test 129.***.***.29 port 35286 [preauth] Oct 9 23:52:11 dvrh sshd[3535]: Invalid user test from 129.***.***.29 port 35288 Oct 9 23:52:12 dvrh sshd[3535]: Failed password for invalid user test from 129.***.***.29 port 35288 ssh2 Oct 9 23:52:12 dvrh sshd[3535]: Connection closed by invalid user test 129.***.***.29 port 35288 [preauth] Oct 9 23:53:12 dvrh sshd[3537]: Invalid user admin from 129.***.***.29 port 35290 Oct 9 23:53:12 dvrh sshd[3537]: Connection closed by invalid user admin 129.***.***.29 port 35290 [preauth] ...
لم يكن الاستنتاج صعباً: حاول شخص ما الوصول إلى الخادم الخاص بي باستخدام مجموعة من عمليات تسجيل الدخول وكلمات المرور القياسية. علاوة على ذلك (إذا حكمنا من خلال الفواصل الزمنية) تم ذلك في الوضع التلقائي. هذا يعني أن هذا هو الأرجح جهاز توجيه آخر عضو في الروبوتات.
في الواقع ، هذه الصورة هي نموذجية للمضيفين مع فتح 22 ميناء. يمكنك التحقق من ذلك بنفسك: افتح ssh للوصول من الإنترنت الخارجي ، والسماح بإدخال كلمة المرور ، ولن تبقيك الروبوتات في الانتظار. في الوقت نفسه ، ستكون 80٪ من المحاولات من الصين.
لحسن الحظ ، بعد مرور بعض الوقت ، تمكنت من الوصول إلى عنوان IP السيئ هذا عبر ssh باستخدام أحد عمليات تسجيل الدخول وكلمات المرور القياسية (Surprised؟ أنا لا). ولكن اتضح أن هذا ليس جهاز توجيه عادي ، ولكن بعض الأجهزة تسمى Calix GigaSpire.
Calix GigaSpire هو نظام تحكم منزلي ذكي بموجب نظام التشغيل EXOS. يتضمن GigaSpire الميزات التالية:
- دعم Wi-Fi 6 (802.11ax) ، مع 8x8 @ 5 GHz و 4x4 بسرعة 2.4 غيغاهرتز
- متعدد جيجابت الخدمة
- خدمات المستوى 2 والمستوى 3
- تدار بواسطة Calix Support Cloud
- دعم إنترنت الأشياء (تقنية Bluetooth منخفضة الطاقة و Zigbee 3.0 و Z-Wave Pro)
- مساعد صوت امازون اليكسا
أول شيء فعلته ، بتسجيل الدخول إلى النظام ، نظرت إلى قائمة العمليات الجارية لإيجاد شيء مثير للاهتمام. وهذا "شيء مثير للاهتمام" بدا مثل هذا:
[router] / # ps ... 2978 root 1444 S {kkbs2l3mdqjq} ipjq2njq5qjq 9729 root 1584 S {kkbs2l3mdqjq} ipjq2njq5qjq 14871 root 5532 S {hgoj42jadsjvebc} m6ojj5oj5gojj2h08b8l 19037 root 308 S {hgoj42jadsjvebc} m6ojj5oj5gojj2h08b8l 19041 root 284 S {hgoj42jadsjvebc} m6ojj5oj5gojj2h08b8l ...
الشك هو "العشوائية" لأسماء هذه العمليات. لفهم ماهية هذه العمليات ، أقترح تذكر نظام ملفات / proc:
procfs هو نظام ملفات خاص يستخدم على أنظمة التشغيل المشابهة لـ UNIX. يتيح لك الوصول إلى المعلومات من النواة حول عمليات النظام. مطلوب لتنفيذ الأوامر مثل ps ، w ، top. وعادة ما يتم تركيبه على / proc. من هذا الدليل ، يمكنك الحصول على أي معلومات حول نظامك. على سبيل المثال ، مقدار ذاكرة المبادلة المستخدمة حاليًا ، ومدى حجم ذاكرة التخزين المؤقت للمعالج ، ووحدات kernel التي يتم تحميلها ، وعدد الأقراص أو الأقسام المتوفرة ، إلخ.
نحن مهتمون بالأدلة التي تحتوي على معلومات حول العمليات المشبوهة التي تم العثور عليها. لديهم النموذج / proc / PID ، حيث PID هو معرف العملية التي يحتوي هذا الدليل على معلومات. إذا نظرت إلى محتوياتها ، يمكنك العثور على الملفات التالية:
- cmdline - يحتوي على الأمر الذي تم بدء العملية به ، وكذلك المعلمات التي تم تمريرها إليها
- cwd - رابط رمزي إلى دليل العمل الحالي للعملية
- إكس - رابط إلى الملف القابل للتنفيذ
- الجذر - رابط إلى المجلد الجذر
- بيئة - متغيرات البيئة المتاحة لهذه العملية
- fd - يحتوي على واصفات الملفات والملفات والأجهزة التي تستخدمها العملية
- خرائط ، statm ، و mem - معالجة معلومات الذاكرة
- القانون الأساسي ، وحالة - حالة العملية
ماذا يمكننا أن نفعل حيال ذلك؟ أول ما يتبادر إلى الذهن هو حساب المجموع الاختباري لأحد الملفات القابلة للتنفيذ والبحث عن التطابقات على الإنترنت:
/ # md5sum /proc/2978/exe d204e97ac15a6d0a3ed7e415edfa582e /proc/2978/exe
لقد وجدت هذا md5 في
قائمة اختباري ميراي ، مما يدل على طبيعة أصل الملف. ولكن ماذا يمكننا أن نفعل الآن؟ للتخلص من بوت ميراي ، فقط أعد تشغيل جهاز التوجيه. ولكن في هذه الحالة ، لا فائدة من ذلك ، نظرًا لأن البرامج الضارة الجديدة ستصعد قريبًا على جهاز التوجيه بكلمة مرور بسيطة ، وتغيير كلمة مرور شخص آخر أمر زائد ، أنت تعرف ماذا.