حمله باتنت FritzFrog به دهها میلیون سرور SSH
خلاصه: باتنت FritzFrog از ماه ژانویه، سرورهای SSH بسیاری را تسخیر کرده است. ویژگیهای قابلتوجّه این باتنت عبارتند از:ارتباط P2P، پیادهسازی به زبان Go، مؤلفهای بودن، چندنخی بودن و همچنین استفاده از الگوی کرمها برای انتشار و آلوده کردن سیستمهای جدید. از آنجا که باتنت FritzFrog از حملات جستجوی فراگیر برای بدست آوردن اعتبارنامههای سرور هدف استفاده میکند؛ توصیه میشود از کلمات عبور قوی استفاده شود تا احتمال آلوده شدن سیستم به این بدافزار کاهش یابد.
باتنت FritzFrog از ماه ژانویه، سرورهای SSH بسیاری را تسخیر کرده است. سرورهای SSH، قطعات نرمافزاری هستند که در مسیریابها و دستگاههای IoT و ... استفاده میشوند تا آنان را با کامپیوترهای از راه دور مرتبط سازند. به گزارش آزمایشگاه Guardicore، باتنت FritzFrog که بصورت یک کرم منتشر میشود؛ از حملات جستجوی فراگیر برای بدست آوردن اعتبارنامههای سرور هدف استفاده میکند. قربانیان این باتنت عموماً سایتهای دفاتر دولتی، مؤسسات آموزشی، مراکز پزشکی، بانکها و شرکتهای مخابراتی هستند و بیشتر در کشورهای چین، کرهجنوبی و ایالات متحده قرار دارند. تا کنون، باتنت FritzFrog درصدد نفوذ به دهها میلیون ماشین بوده که از میان آنها، بیش از 500 نفوذ موفّق داشته است.
از ویژگیهای مهم FritzFrog، استفاده از ارتباط P2P است. این ویژگی باعث شده تا این باتنت در برابر مکانیزمهای امنیتی مقاوم شود؛ چراکه بصورت غیرمتمرکز عمل میکند و خبری از نقطه شکست یا سرورهای فرمان و کنترل یا C&C نیست. به بیان دیگر برای اتصال با کامپیوتر جدید نیازی نیست تا به هسته یا سرور از پیش تعیینشدهای متصل شود؛ بلکه کافیست تا به یکی از گرههای باتنت متصل شده و نهایتاً حمله صورت میپذیرد. با بررسیهای انجام شده بر روی نوع ارتباط گرفتن FritzFrog با قربانیان خود، محققان دریافتند این نوع پیادهسازی از ارتباط نقطه به نقطه کاملاً حرفهایست و هیچ تشابهی با سایر پروتکلهای P2P شناختهشده مانند µTP ندارد. سایر ویژگیهای قابلتوجّه این باتنت، پیادهسازی به زبان Go، مؤلفهای بودن، چندنخی بودن و همچنین استفاده از الگوی کرمها برای انتشار و آلوده کردن سیستمهای جدید است. بعلاوه این بدافزار، یک درپشتی به شکل کلید عمومی SSH ایجاد و در ماشین تسخیرشده ذخیره میکند تا دسترسی مهاجم به قربانی حفظ شود و در برخی موارد کد استخراج رمزارز نیز بارگذاری کرده است.
عمده این اطلاعات از طریق ایزولهسازی FritzFrog و تحلیل آن حاصل شده است. شیوهای که آزمایشگاه Guardicore برای بررسی و تحقیق بر روی این بدافزار انتخاب کرد. آنها FritzFrog را در یک شبکه تزریق کردند و با بررسی ترافیک رد و بدل شده میان گرههای این شبکه به اطلاعات ارزشمندی در مورد ساختار آن رسیدهاند. مهمترین خصیصهای که پس از تحلیل FritzFrog به آن نسبت داده شد، منحصر به فرد بودن آن است. اما چه ویژگیهای از FritzFrog باعث شده تا منحصر به فرد باشد؟
- استفاده نکردن از IRC
- عملکرد «در حافظه» یا «in-memory» برخلاف سایر باتنتهای استخراج رمزارز
- حمله به ماشینهای مبتنی بر Unix برخلاف باتنتهای شناختهشده دیگر
- Fileless بودن پیلود بدافزار
در میان ویژگیهای FritzFrog قابلیت Fileless بودن آن بسیار جالب توجّه است. قابلیتی که باعث شده بدون ایجاد هیچ ردی بر روی دیسکِ سیستم قربانی، در آن اجرا شود.
اما چگونه؟
اگر بدافزار در گره «الف» بخواهد دادههای مورد نیاز خود را از گره «ب» بگیرد؛ ابتدا دستور getblobstats را فراخوانی کرده و پس از آن نود «الف» میتواند دادههای خود را در قالب blob از طریق ارتباط P2P یا از طریق درخواست HTTP دریافت کند. زمانی که تمام blob ها را دریافت کرد آنها را به یکدیگر متصل کرده و اجرا میکند. پس از نصب، بدافزار بر روی سیستم قربانی شروع به شنود پورت 1234 میکند تا دستورات اولیه برای هماهنگسازی سیستم با پایگاهدادهای که اطلاعات گرهها را در خود دارد، اجرا کند. در این زمان بجای ارسال دستورات از طریق پورت 1234 که احتمال شناسایی را افزایش میدهد از راه جایگزین استفاده میکند. راه جایگزین استفاده از SSH و اجرای یک کلاینت netcat بر روی سیستم قربانیست.
با وجود مقاومت و پیچیده بودن این بدافزار همچنان میتوان سیستم خود را در برابر آن ایمن کرد. بدین منظور توصیه میشود از کلمات عبور قوی استفاده شود تا احتمال آلوده شدن سیستم به این بدافزار کاهش یابد.