نحوه شناسایی روت کیت ها در ویندوز 10 (راهنمای عمیق)

روت‌کیت‌ها توسط هکرها برای پنهان کردن بدافزارهای دائمی و به ظاهر غیرقابل شناسایی در دستگاه شما استفاده می‌شوند که گاهی در طی چندین سال بی‌صدا داده‌ها یا منابع را سرقت می‌کنند. آنها همچنین می توانند در حالت keylogger مورد استفاده قرار گیرند، جایی که ضربه های کلید و ارتباطات شما نظارت می شود و اطلاعات حریم خصوصی را در اختیار بیننده قرار می دهد.  

این روش هک خاص قبل از سال 2006، قبل از مایکروسافت ویستا(Microsoft Vista) که فروشندگان را ملزم به امضای دیجیتالی همه درایورهای رایانه می‌کرد، ارتباط بیشتری داشت. محافظت از وصله هسته(Kernel Patch Protection) ( KPP )(KPP) باعث شد تا بدافزارنویسان روش‌های حمله خود را تغییر دهند و اخیراً در سال 2018 با عملیات کلاهبرداری تبلیغات Zacinlo(Zacinlo ad fraud operation) ، روت‌کیت‌ها دوباره در کانون توجه قرار گرفتند.

روت‌کیت‌های مربوط به سال 2006 همگی به طور خاص مبتنی بر سیستم عامل بودند. موقعیت Zacinlo ، یک روت کیت از خانواده بدافزار Detrahere(Detrahere malware) ، چیزی خطرناک‌تر را در قالب یک روت‌کیت مبتنی بر سیستم عامل به ما داد. صرف نظر از این(Regardless) ، روت کیت ها تنها حدود یک درصد از کل خروجی بدافزاری است که سالانه مشاهده می شود. 

با این حال، به دلیل خطراتی که می توانند ایجاد کنند، عاقلانه است که بفهمیم شناسایی روت کیت هایی که ممکن است قبلاً به سیستم شما نفوذ کرده باشند چگونه کار می کند.

شناسایی روت کیت ها در ویندوز 10(Windows 10) ( در عمق(In-Depth) )

Zacinlo در واقع تقریباً شش سال در بازی بود تا اینکه کشف شد که پلتفرم ویندوز 10 را هدف قرار می دهد. (Windows 10)مؤلفه روت کیت بسیار قابل تنظیم بود و از خود در برابر فرآیندهایی که برای عملکردش خطرناک می دانست محافظت می کرد و می توانست ارتباطات SSL را رهگیری و رمزگشایی کند.

تمام داده های پیکربندی خود را در رجیستری ویندوز(Windows Registry) رمزگذاری و ذخیره می کرد و در حالی که ویندوز(Windows) در حال خاموش شدن بود، خود را از حافظه به دیسک با نام دیگری بازنویسی می کرد و کلید رجیستری خود را به روز می کرد. این به آن کمک کرد تا از شناسایی توسط نرم افزار آنتی ویروس استاندارد شما جلوگیری کند.

این نشان می دهد که یک آنتی ویروس یا نرم افزار ضد بدافزار استاندارد برای شناسایی روت کیت ها کافی نیست. اگرچه، چند برنامه ضد بدافزار درجه یک وجود دارد که به شما در مورد سوء ظن حمله rootkit هشدار می دهد. 

5 ویژگی کلیدی یک نرم افزار آنتی ویروس خوب(The 5 Key Attributes Of a Good Antivirus Software)

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

  • تجزیه و تحلیل مبتنی بر امضا(Signature-based Analysis) - نرم افزار آنتی ویروس فایل های ثبت شده را با امضاهای شناخته شده روت کیت ها مقایسه می کند. این تجزیه و تحلیل همچنین به دنبال الگوهای رفتاری است که فعالیت‌های عملیاتی خاصی از روت‌کیت‌های شناخته‌شده، مانند استفاده از پورت تهاجمی را تقلید می‌کنند.
  • تشخیص رهگیری(Interception Detection) - سیستم عامل ویندوز(Windows) از جداول اشاره گر برای اجرای دستوراتی استفاده می کند که معروف است که یک روت کیت را وادار می کند تا عمل کند. از آنجایی که روت‌کیت‌ها تلاش می‌کنند تا هر چیزی را که یک تهدید محسوب می‌شود جایگزین یا تغییر دهند، این کار سیستم شما را به حضور آن‌ها منصرف می‌کند.
  • مقایسه داده‌های چند منبع(Multi-Source Data Comparison) - Rootkits در تلاش برای پنهان ماندن، ممکن است داده‌های خاصی را که در یک بررسی استاندارد ارائه شده‌اند تغییر دهند. نتایج برگشتی فراخوانی‌های سیستمی سطح بالا و پایین می‌تواند حضور یک روت کیت را از بین ببرد. نرم افزار همچنین ممکن است حافظه پردازش بارگذاری شده در RAM را با محتوای فایل روی دیسک سخت مقایسه کند.
  • بررسی یکپارچگی(Integrity Check) - هر کتابخانه سیستم دارای یک امضای دیجیتال است که در زمانی که سیستم "تمیز" در نظر گرفته شد ایجاد می شود. نرم افزار امنیتی خوب می تواند کتابخانه ها را برای هر گونه تغییر در کد مورد استفاده برای ایجاد امضای دیجیتال بررسی کند.
  • مقایسه‌های رجیستری(Registry Comparisons) - اکثر برنامه‌های نرم‌افزار آنتی‌ویروس اینها را بر اساس یک زمان‌بندی از پیش تعیین شده دارند. یک فایل تمیز با یک فایل کلاینت در زمان واقعی مقایسه می شود تا مشخص شود آیا کلاینت یک فایل اجرایی (.exe) درخواست نشده است یا نه.

انجام اسکن Rootkit(Performing Rootkit Scans)

انجام اسکن روت کیت بهترین تلاش برای تشخیص عفونت روت کیت است. اغلب اوقات نمی توان به سیستم عامل شما برای شناسایی یک روت کیت به تنهایی اعتماد کرد و برای تعیین حضور آن چالشی ایجاد می کند. روت کیت ها جاسوسان چیره دستی هستند که تقریباً در هر نوبت ردپای خود را می پوشانند و می توانند در معرض دید عموم پنهان بمانند.

اگر مشکوک هستید که یک حمله ویروس rootkit به دستگاه شما روی داده است، یک استراتژی خوب برای تشخیص خاموش کردن رایانه و اجرای اسکن از یک سیستم تمیز شناخته شده است. یک راه مطمئن برای یافتن روت کیت در دستگاه شما از طریق تجزیه و تحلیل تخلیه حافظه است. یک روت کیت نمی تواند دستورالعمل هایی را که به سیستم شما می دهد در حین اجرای آنها در حافظه دستگاه پنهان کند.

استفاده از WinDbg برای تجزیه و تحلیل بدافزار(Using WinDbg For Malware Analysis)

مایکروسافت ویندوز(Microsoft Windows) ابزار اشکال زدایی چند منظوره خود را ارائه کرده است که می تواند برای انجام اسکن اشکال زدایی روی برنامه ها، درایورها یا خود سیستم عامل استفاده شود. این کد حالت هسته و حالت کاربر را اشکال زدایی می کند، به تجزیه و تحلیل خرابی ها کمک می کند، و رجیسترهای CPU را بررسی می کند.(CPU)

برخی از سیستم‌های ویندوز دارای (Windows)WinDbg از قبل همراه هستند. آنهایی که فاقد آن هستند باید آن را از فروشگاه مایکروسافت دانلود(Microsoft Store) کنند. پیش‌نمایش WinDbg(WinDbg Preview) نسخه مدرن‌تر WinDbg است که جلوه‌های بصری آسان‌تر، پنجره‌های سریع‌تر، اسکریپت‌نویسی کامل، و دستورات، برنامه‌های افزودنی و گردش‌های کاری مشابه نسخه اصلی را فراهم می‌کند.

حداقل، می‌توانید از WinDbg برای تحلیل حافظه یا خرابی، از جمله صفحه آبی (Blue Screen)مرگ(Death) ( BSOD ) استفاده کنید. از نتایج، می توانید به دنبال شاخص های حمله بدافزار باشید. اگر احساس می‌کنید که یکی از برنامه‌های شما ممکن است با وجود بدافزار مانع شود، یا از حافظه بیشتری نسبت به نیاز استفاده می‌کند، می‌توانید یک فایل dump ایجاد کنید و از WinDbg برای تجزیه و تحلیل آن استفاده کنید.

تخلیه کامل حافظه می‌تواند فضای دیسک قابل‌توجهی را اشغال کند، بنابراین بهتر است به جای آن از حالت(Kernel-Mode) هسته‌ای یا حافظه(Memory) کوچک استفاده کنید. یک حالت حذفی Kernel-Mode حاوی تمام اطلاعات استفاده از حافظه توسط هسته در زمان خرابی است. یک حافظه(Memory) کوچک حاوی اطلاعات اولیه در مورد سیستم های مختلف مانند درایورها، هسته و موارد دیگر است، اما در مقایسه بسیار کوچک است.

تخلیه حافظه(Memory) کوچک در تجزیه و تحلیل چرایی وقوع BSOD مفیدتر است. برای شناسایی روت کیت ها، نسخه کامل یا هسته مفیدتر خواهد بود.

ایجاد یک فایل Dump-Mode Kernel(Creating A Kernel-Mode Dump File)

یک فایل Dump -Mode Kernel(Kernel-Mode) را می توان به سه روش ایجاد کرد:

  • فایل dump را از کنترل پنل(Control Panel) فعال کنید تا سیستم به خودی خود خراب شود
  • فایل dump را از کنترل پنل(Control Panel) فعال کنید تا سیستم مجبور به خرابی شود
  • از یک ابزار دیباگر برای ایجاد یک ابزار برای شما استفاده کنید

ما با انتخاب شماره سه خواهیم رفت. 

برای اجرای فایل dump لازم، فقط باید دستور زیر را در پنجره Command WinDbg وارد کنید.

FileName را با یک نام مناسب برای فایل dump و "?" جایگزین کنید . با f _ مطمئن شوید که "f" کوچک باشد وگرنه نوع دیگری از فایل dump ایجاد خواهید کرد.

هنگامی که دیباگر کار خود را انجام داد (اولین اسکن چند دقیقه طول می کشد)، یک فایل dump ایجاد می شود و می توانید یافته های خود را تجزیه و تحلیل کنید.

درک آنچه که به دنبال آن هستید، مانند استفاده از حافظه فرار ( رم(RAM) )، برای تعیین وجود یک روت کیت نیازمند تجربه و آزمایش است. این امکان وجود دارد، اگرچه برای یک مبتدی توصیه نمی شود، اما آزمایش تکنیک های کشف بدافزار در یک سیستم زنده وجود دارد. برای انجام این کار دوباره به تخصص و دانش عمیق در مورد عملکرد WinDbg نیاز است تا به طور تصادفی یک ویروس زنده در سیستم شما مستقر نشود.

راه‌های امن‌تر و مبتدی‌تری برای کشف دشمن پنهان‌مان وجود دارد.

روش های اسکن اضافی(Additional Scanning Methods)

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

می‌توانید با استفاده از گزینه‌های نصب پیشرفته(Advanced) یا سفارشی(Custom) در حین نصب، به دنبال روت‌کیت‌ها در بسته‌های نرم‌افزار دانلود شده بگردید. آنچه شما باید به دنبال آن باشید، فایل های ناآشنا است که در جزئیات فهرست شده اند. این فایل‌ها باید دور ریخته شوند، یا می‌توانید برای یافتن هرگونه ارجاع به نرم‌افزارهای مخرب، جستجوی آنلاین سریع انجام دهید.

فایروال ها و گزارش های لاگ آن ها روشی فوق العاده موثر برای کشف روت کیت هستند. اگر شبکه شما تحت بررسی باشد، نرم افزار به شما اطلاع می دهد و باید هرگونه دانلود مشکوک یا غیرقابل تشخیص را قبل از نصب قرنطینه کند. 

اگر مشکوک هستید که یک روت کیت از قبل بر روی دستگاه شما وجود دارد، می توانید به گزارش های ثبت گزارش فایروال بروید و به دنبال هر رفتار غیرعادی باشید.

بررسی گزارش های ثبت فایروال(Reviewing Firewall Logging Reports)

می‌خواهید گزارش‌های گزارش‌گیری فایروال فعلی خود را مرور کنید، یک برنامه منبع باز مانند IP Traffic Spy با قابلیت فیلتر کردن گزارش فایروال، یک ابزار بسیار مفید بسازید. گزارش‌ها به شما نشان می‌دهند که در صورت وقوع حمله چه چیزی را باید ببینید. 

اگر یک شبکه بزرگ با فایروال فیلتر خروجی مستقل دارید، IP Traffic Spy ضروری نخواهد بود. در عوض، شما باید بتوانید بسته های ورودی و خروجی را به تمام دستگاه ها و ایستگاه های کاری در شبکه از طریق گزارش های فایروال مشاهده کنید.

چه در یک محیط خانه یا یک کسب و کار کوچک باشید، می توانید از مودم ارائه شده توسط ISP خود استفاده کنید یا اگر صاحب یکی از آنها هستید، از فایروال یا روتر شخصی برای بالا کشیدن گزارش های دیوار آتش استفاده کنید. شما می توانید ترافیک هر دستگاه متصل به همان شبکه را شناسایی کنید. 

همچنین ممکن است فعال کردن فایل‌های گزارش فایروال ویندوز مفید باشد. (Windows Firewall Log)به طور پیش فرض، فایل log غیرفعال است به این معنی که هیچ اطلاعات یا داده ای نوشته نشده است.

  • برای ایجاد یک فایل گزارش، تابع Run را با فشار دادن Windows key + R باز کنید.
  • wf.msc را در کادر تایپ کرده و Enter را(Enter) فشار دهید .

  • در پنجره Windows Firewall(Windows Firewall) and Advanced Security ، "Windows Defender Firewall with Advanced Security on Local Computer" را در منوی سمت چپ برجسته کنید. در منوی سمت راست، در قسمت «عملکردها»، روی Properties کلیک کنید .

  • در پنجره گفتگوی جدید، به برگه "Private Profile" بروید و Customize را انتخاب کنید ، که در بخش "Logging" یافت می شود.

  • پنجره جدید به شما این امکان را می‌دهد تا انتخاب کنید که چه مقدار از یک فایل گزارش بنویسید، کجا می‌خواهید فایل ارسال شود، و آیا فقط بسته‌های رها شده، اتصال موفق یا هر دو را ثبت کنید.

  • بسته(Dropped) های حذف شده آنهایی هستند که فایروال ویندوز(Windows Firewall) از طرف شما مسدود شده است.
  • به طور پیش‌فرض، ورودی‌های لاگ فایروال ویندوز(Windows Firewall) تنها 4 مگابایت آخرین داده را ذخیره می‌کنند و می‌توانند در %SystemRoot%\System32\LogFiles\Firewall\Pfirewall.log
  • به خاطر داشته باشید که افزایش محدودیت اندازه در استفاده از داده ها برای گزارش ها می تواند بر عملکرد رایانه شما تأثیر بگذارد.
  • پس از اتمام OK را فشار دهید.
  • در مرحله بعد، همان مراحلی را که قبلاً طی کردید، در برگه «نمایه خصوصی» و فقط این بار در برگه «نمایه عمومی» تکرار کنید.
    • اکنون گزارش‌ها برای اتصالات عمومی و خصوصی ایجاد می‌شوند. می توانید فایل ها را در یک ویرایشگر متنی مانند Notepad مشاهده کنید یا آنها را در صفحه گسترده وارد کنید.
    • اکنون می توانید فایل های گزارش ها را به یک برنامه تجزیه کننده پایگاه داده مانند IP Traffic Spy صادر کنید تا ترافیک را برای شناسایی آسان فیلتر و مرتب کنید.

مراقب هر چیز غیرعادی در فایل های گزارش باشید. حتی کوچکترین نقص سیستم می تواند نشان دهنده عفونت روت کیت باشد. چیزی در امتداد خطوط استفاده بیش از حد از CPU یا پهنای باند زمانی که شما از هیچ چیزی خیلی سخت استفاده نمی کنید یا اصلاً کار نمی کنید، می تواند یک سرنخ اصلی باشد.



About the author

من یک کارشناس باتجربه ویندوز 10 و 11/10 هستم که هم در مرورگرها و هم در برنامه های گوشی های هوشمند تجربه دارم. من بیش از 15 سال مهندس نرم افزار هستم و با تعدادی از شرکت های بزرگ از جمله مایکروسافت، گوگل، اپل، یوبی سافت و غیره کار کرده ام. من همچنین توسعه ویندوز 10/11 را در سطح کالج تدریس کرده ام.



Related posts