روت کیت چیست ؛ نحوه مقابله با rootkit

در میان بدافزارهای مختلفی که به سامانه‌های منفرد و زیرساخت‌ها حمله می‌کنند بدافزار روت کیت خطرناک‌ترین آن‌ها هستند،

زیرا در بیشتر موارد شناسایی آن‌ها سخت است و اگر موفق شوند خود را به هسته سیستم‌عامل یا میان‌افزار مولفه‌های زیرساختی نظیر پردازنده‌های مرکزی یا بایوس برسانند،

ممکن است برای همیشه روی سامانه باقی بمانند. در این مقاله قصد داریم به شکل کوتاه با rootkit و ماهیت مخرب آن‌ها آشنا شویم.

 

روت کیت چیست؟

روت کیت‌ها چگونه کار می‌کنند؟

وظایف روت کیت چیست؟

چرا شناسایی روت کیت‌ها سخت است؟

 

روت کیت چیست؟

 

ویروس Rootkit چیست؟ روت کیت خطرناک‌ترین گونه بدافزاری است. روت کیت‌ها همانند سایر گونه‌های بدافزاری، برنامه‌های کامپیوتری هستند ،

که قدرت بالایی در اختفا دارند و قادر هستند در فایل‌ها، تنظیمات رجیستری یا پردازه‌ها پنهان شوند و به سرقت اطلاعات کاربران بپردازند.

به‌طور کلی، روت کیت‌ها با هدف دسترسی از راه دور، کنترل سامانه‌های کامپیوتری یا شبکه‌های کامپیوتری و استخراج اطلاعات استفاده می‌شوند.

بارزترین نشانه وجود روت کیت در یک سامانه کند شدن سرعت سامانه است که نشان می‌دهد عامل مخربی در پس‌زمینه مشغول فعالیت است.

 

روت کیت‌ها چگونه کار می‌کنند؟

مکانیزم کاری بیشتر روت کیت‌ها پیچیده است. عملکرد روت کیت‌ها به این صورت است ،

که پردازه‌هایی را روی سیستم‌عامل قربانی (ویندوز، لینوکس و به ندرت مک) ایجاد کرده و به اجرا در می‌آورند ،

که نرم‌افزارهایی مثلTask Manager  قادر به مشاهده آن‌ها نیستند.

در ادامه در سیستم‌عامل‌هایی مثل ویندوز کلیدهایی در رجیستری ویندوز ایجاد می‌کنند،

که نقش پل ارتباطی را دارند و به روت کیت اجازه می‌دهند به اینترنت متصل شود.

کانال‌های ارتباطی به‌گونه‌ای ایجاد می‌شوند که ابزارهای شبکه مثل Netstat قادر به مشاهده آن‌ها نیستند.

در مرحله بعد روت کیت‌ها با ایجاد در‌های پشتی روی سامانه قربانیان راه را برای ورود بدافزارها به سیستم‌عامل هموار می‌کنند.

بدافزارهایی که توسط روت کیت‌ها به سیستم‌عامل قربانیان وارد می‌شوند به دو گروه تقسیم می‌شوند:

گروه اول، بدافزارهای پوششی هستند که توسط نرم‌افزارهای امنیتی به راحتی شناسایی می‌شوند.

این بدافزارها با هدف ایجاد رخنه‌ها یا به وجود آوردن شکاف‌هایی در حافظه اصلی به سیستم‌عامل قربانی وارد می‌شوند ،

و به منظور آماده‌سازی زمینه برای ورود بدافزارهای اصلی به کار گرفته می‌شوند.

گروه دوم بدافزارهایی هستند که توسط نرم‌افزارهای امنیتی شناسایی نمی‌شوند ،

و با هدف استراق سمع و جمع‌آوری اطلاعات کاربران به سامانه‌ها وارد می‌شوند.

روت کیت‌ها عمدتا با زبان برنامه‌نویسی اسمبلی و در نمونه‌های خاص‌تر با زبان سی ایجاد می‌شوند،

به همین دلیل کمترین اندازه را دارند، سرعت اجرای آن‌ها زیاد است و به راحتی از دید نرم افزارهای ضد روت کیت پنهان می‌شوند.

با توجه به این‌که روت کیت‌ها با هدف آلوده‌سازی هسته سیستم عامل طراحی می‌شوند قدرت و عملکرد آن‌ها تقریبا نامحدود است.

وظایف روت کیت چیست؟

 

هنگامی که روت کیت روی سامانه‌ای نصب می‌شود قادر به انجام چه کارهایی است؟

قدرت روت کیت‌ها نسبت به سایر گونه‌های بدافزاری زیاد و تقریبا نامحدود است.

هنگامی که یک روت کیت سامانه‌ای را آلوده کند به هکرها اجازه انجام کارهای زیر را می‌دهد:

اجرای دستورات از راه دور با مجوز مدیریتی.

استخراج و سرقت اطلاعات که شامل رمزهای عبور و نام‌های کاربری می‌شود.

تغییر پیکربندی و تنظیمات سیستم‌عامل با هدف دسترسی ساده‌تر هکر به سامانه قربانی.

نصب نرم‌افزارهای جعلی به جای نرم‌افزارهای امنیتی نصب شده یا نصب برنامه‌های ناخواسته.

خوشبختانه در این زمینه مایکروسافت گام‌های ارزشمندی برداشته و جدیدترین به‌روزرسانی ارایه شده برای ویندوز ۱۰ مانع نصب برنامه‌های ناخواسته می‌شود.

نصب بدافزارها، ویروس‌ها یا استخراج‌کنندگان رمزارز.

متصل کردن سامانه کامپیوتری به شبکه‌ای از بات‌نت‌ها که قرار است برای اهدافی همچون پیاده‌سازی حمله‌های DDoS استفاده شوند.

روت کیت‌ها با هدف آلوده‌سازی هسته سیستم عامل طراحی می‌شوند.

 

چرا شناسایی روت کیت‌ها سخت است؟

 

یکی از مهم‌ترین دلایلی که باعث می‌شود شناسایی روت کیت‌ها سخت یا گاهی غیر ممکن شود تغییر مستمر مکانیزم‌های حفاظتی این گونه مخرب است.

به همین دلیل است که بیشتر ضدویروس‌ها قادر به شناسایی روت کیت‌ها نیستند،

یا تنها هنگامی قادر به حذف آن‌ها هستند که اطلاعات کاملی از آن‌ها در دسترس باشد.

در حالت کلی ضدویروس‌ها و بدافزارها با ردیابی الگوهای رفتاری بدافزارها، امضا بدافزارها یا هرگونه مورد مشکوکی،

به سرعت فایل یا پردازه مخرب را به عنوان یک عامل مشکوک شناسایی کرده،

آن‌را قرنطینه کرده و نسخه‌ای از فایل مشکوک را برای آزمایشگاه ضدویروسی ارسال می‌کنند. بیشتر بدافزارها به این شکل شناسایی می‌شوند،

زیرا عملکردی در سطح لایه کاربری دارند و درست در همان نقطه‌ای کار می‌کنند که ضدویروس‌ها در آن متمرکز هستند.

اما بیشتر روت کیت‌ها برای ورود به لایه‌های پایین‌تر سیستم‌عامل‌ها نوشته می‌شوند،

و با توجه به این‌که شرکت‌هایی مثل مایکروسافت سیستم‌عامل‌هایی با کدهای بسته‌ دارند ،

و به تولید‌کنندگان ضدویروس‌ها اجازه دسترسی به این کدها را نمی‌دهند،

در نتیجه ورود به بخش‌های محافظت شده سیستم‌عامل برای ضدویروس‌ها کار سختی است ،

و مکانیزم‌های حفاظتی ویندوز  مانع دسترسی ضدویروس‌ها به این بخش‌ها می‌شوند.

پس چرا روت کیت‌ها می‌توانند به این بخش ورود پیدا کنند؟ زیرا هکرها سعی می‌کنند ،

از آسیب‌پذیری‌های روزصفر یا ضعف‌های امنیتی مستتر در مولفه‌های سخت‌افزاری برای ورود به این بخش استفاده کنند.

به همین دلیل است که هنگامی که آسیب‌پذیری‌هایی در برخی از پردازنده‌های سیستم‌عامل اینتل شناسایی شد،

این شرکت به سرعت وصله‌هایی برای آن‌ها ارایه کرد و در نهایت اعلام کرد ترمیم برخی از آسیب‌پذیری‌ها امکان‌پذیر نیست.

البته همه روت کیت‌ها نمی‌توانند به این سطح از کرنل سیستم‌عامل وارد شوند،

زیرا برنامه‌نویسی آن‌ها هزینه‌بر، زمان‌بر و خاص‌منظوره است و برای حمله به سازمان‌های بزرگ یا اقدام بر علیه دولت‌ها ساخته می‌شوند.