ما معمولاً بدافزار را یک لحظه بزرگ و دراماتیک تصور میکنیم. یک هشدار باجافزاری که بر صفحه میتابد. یک صفحه آبی ناگهانی و غیرقابل پیشبینی. در واقعیت، چیزهای واقعاً خطرناک بسیار شبحمانندتر هستند. این یک فرآیند مشکوک است که پردازنده شما را برای استخراج رمزنگاری مینوشد، یک برنامه «کمکی» کوچک که به آدرس IPای که تا به حال ندیدهاید تماس میگیرد، یا یک اسکریپت سرسخت که هر بار که سیستم را دوباره راهاندازی میکنید، خود را دوباره نصب میکند.
ما تمایل داریم بهعنوان بدافزار تصویر یک لحظه بزرگ و دراماتیک بسازیم. هشدار باجافزاری که روی صفحه میتابد. یک صفحهآبی ناگهانی و بدون مراسم. در دنیای واقعی، چیزهای واقعاً خطرناک بسیار ناشناختهتر هستند. این میتواند فرآیندی مبهم باشد که پردازنده شما را برای استخراج رمز ارز مینوشد، یک برنامه «مفید» کوچک که به یک آدرس IP ناشناخته تماس میگیرد، یا اسکریپتی سرسخت که هر بار راهاندازی مجدد، خود را دوباره نصب میکند.
مدیر وظایف ویندوز به ندرت برای آشکارسازی این نوع رفتار کافی است. وقتی چیزی نامعمول به نظر میرسد — یا وقتی صرفاً سلامت کلی سیستم را ارزیابی میکنم — من به مجموعه Windows Sysinternals Suite مراجعه میکنم. این ابزارها که توسط مارک راسینوویچ ساخته شدهاند و اکنون CTO مایکروسافت و Technical Fellow در Azure هستند، بهطور گستردهای به عنوان استاندارد طلایی برای بازرسی عمیق سیستم شناخته میشوند. آنها سبکتر، قابل حمل و دقیقاند.
من پنج ابزار Sysinternals را که بهصورت شخصی برای شکار ناهنجاریها در سیستم خود استفاده میکنم، به اشتراک میگذارم.

با مجموعه Sysinternals Suite میتوانید ویندوز را همانند یک حرفهای بررسی و عیبیابی کنید. این مجموعه ابزارهای پیشرفتهای برای مانیتورینگ فرآیندها، امنیت و عملکرد سیستم فراهم میکند.
Process Explorer
Task Manager’s smarter, scarier older brother
اگر مدیر وظایف یک چاقوی کرهی ساده باشد، Process Explorer یک اسکلپ است. این اولین ابزاری است که وقتی سیستم شروع به کندی یا رفتار عجیب میکند، باز میکنم. در نگاه اول ممکن است شبیه مدیر وظایف باشد، اما وقتی عمیقتر مینگری، عمق آن در یک سطح متفاوت است. هیچ چیز دیگری مانند این، شجرهی کامل پردازشهای در حال اجرا را نشان نمیدهد.
من برای شناسایی پردازشهای تقلبی به Process Explorer تکیه میکنم. بدافزارها دوست دارند خود را بهصورت یک برنامهی خستهکننده و قابل اعتماد مثل svchost.exe یا chrome.exe نشان دهند، به این امید که شما بهدقت به «فرآیندهای اساسی ویندوز که ممکن است ویروس پنهان داشته باشند» نگاه نکنید. Process Explorer به این ترفند نمیافتد. این نشان میدهد چه کسی «به دنیا آورد» چه چیزی. اگر یک svchost.exe را ببینم که از explorer.exe به جای services.exe میآید، فوراً متوجه میشوم. این معمولاً یک نشانه واضح است.
ویژگی مورد علاقه من بررسی داخلی VirusTotal است. دیگر نیازی به بازیهای حدسی نیست. با یک سوئیچ سریع در منوی Options، Process Explorer هش هر اجرایی در حال اجرا را در VirusTotal بررسی میکند و یک امتیاز تشخیص ساده را مستقیماً به فهرست پردازشها اضافه میکند. صفر تمیز از دهها مورد اطمینانبخش است. هر چیز دیگری بلافاصله به صدر لیست «این چه کاری اینجا انجام میدهد؟» من میآید.
TCPView
See who your computer is whispering to in the dark

این روزها، بدافزار تقریباً بدون اتصال به اینترنت بیدست و پاست. چه یک RAT که منتظر دستور باشد و چه یک کیلاگر که رمزهای عبور شما را میفرستد، در نهایت باید با سرور خود ارتباط برقرار کند. به همین دلیل TCPView ابزاری است که وقتی میخواهم آن گفتگوهای پستپسزمینه را در عمل بگیرم، به آن مراجعه میکنم.
بهجای یک دیوار متن خطدستوری مثل «دستور netstat»، TCPView تمام چیزها را در یک فهرست زنده و تمیز که بهصورت زمان‑واقعی بهروز میشود، نمایش میدهد. میتوانید واقعی دیده شوید که اتصالها ظاهر و ناپدید میشوند. من به دنبال برنامههایی میگردم که اصلاً نباید آنلاین باشند. اگر روزی چیزی شبیه Notepad یا Calculator را ببینم که یک لینک «Established» به یک IP تصادفی دارد، حس میکنم چیزی اشتباه است.
معمولاً من ستون State را مرتب میکنم تا همه اتصالهای فعال به بالای فهرست بروند، که سریعترین راه برای «بررسی وجود پورتهای باز TCP/IP» است. سپس به دنبال هر چیز عجیب میگردم، مثل ترافیک در پورتهای غیرمعمول یا پردازشهایی که حتی اسم یا آیکون مناسبی ندارند. یک کلیک راست سریع و جستجوی Whois به من میگوید صاحب IP کیست. اگر به یک سرور ابری در نیمکره دیگر اشاره کند که من هرگز با آن سروکار ندارم، بیش از حد فکر نمیکنم؛ فقط اتصال را میبندم.
Autoruns
Exorcising the ghosts that haunt your boot sequence
پایداری کل شخصیت بدافزار است. افراد پشت آن میدانند که سیستم را زود یا دیر بازنشانی خواهید کرد، بنابراین اسکریپتها و اجراییها را در مکانهای شروع میگذارند تا اطمینان حاصل کنند که کدشان دوباره پس از راهاندازی سیستم ظاهر میشود. ویندوز دارای دهها نقطه ورودی است و برگه Startup در مدیر وظایف تنها بخشی کوچک از آنها را نشان میدهد.

نگاهی سرد و بدون حس به آنچه زمان بوت شما را در گل و لای میکشد
به همین دلیل من به Autoruns تکیه میکنم. این ابزار به بهترین شکل ممکن کنجکاو است. رجیستری، زمانبند کار، WMI و شمارهای گوشهای که شاید حتی نمیدانستید ویندوز دارد را جستجو میکند. وقتی فهرست نهایی آرام شد، چشمم به هر موردی که بهرنگ صورتی برجسته شده نگاه میکند. این رنگ یعنی کد بدون امضای دیجیتال است که یک پرچم قرمز است. در یک سیستم سالم، بیشتر برنامههای شروع که میتوانید با اطمینان غیرفعال کنید، باید توسط مایکروسافت یا نامی شناختهشده مانند Adobe یا Google امضا شده باشند.
برای اینکه از سروصدا خسته نشوم، همیشه فیلتر موردعلاقهام را فعال میکنم. در Options → Scan Options، گزینه Verify Code Signatures را فعال میکنم و سپس ورودیهای مایکروسافت را مخفی میکنم. این کار هزاران مؤلفه قانونی ویندوز را حذف میکند و یک فهرست مختصر از نرمافزارهای شخص ثالث باقی میگذارد. اگر یک ورودی صورتی بدون امضا به فایلی که در مسیر موقت زندگی میکند — مانند
AppData\Local\Temp
— اشاره کند، تقریباً همیشه نشانگر بدافزاری است که سعی دارد پایداری داشته باشد.
AppData\Local\Temp
Process Monitor (ProcMon)
Drinking from the firehose to find the needle

وقتی با یک عفونت حقیقتاً مخفی که حاضر نیست مرده بماند سر و کار دارم، دیگر مؤدبانه نیستم و به Process Monitor روی میآورم. این اسلحهٔ سنگین است. فعالیت زمانواقعی را در سراسر سیستم فایل، رجیستری و پردازشهای در حال اجرا ضبط میکند و به من نمایی ریزبینانه از آنچه سیستم زیر پوستهاش انجام میدهد، میدهد.
اخطار: ProcMon پر سر و صداست. صدهاهزار رویداد در ثانیه. من از آن برای مرور راحت استفاده نمیکنم؛ فقط برای پاسخ به پرسشهای بسیار خاص و تقریباً جزئی، مثل «کدام فایل دقیقاً این کلید رجیستری مشکوک را هر بار که حذف میکنم، باز میسازد؟».
روال «قاتل» من با فشار دادن (Ctrl + E) برای متوقف کردن ضبط به محض راهاندازی ابزار شروع میشود تا از سیلاب اولیه دادهها جلوگیری شود. سپس نماد Target را از نوار ابزار انتخاب میکنم و روی یک پنجره مشکوک یا پیام خطا میکشم. Process Monitor بهطور خودکار لاگ رویدادها را فیلتر میکند تا فقط فعالیت مرتبط با آن پردازش نشان داده شود. از آنجا میتوانم دقیقاً ببینم کدام فایلها تحت تاثیر هستند و کجا دادههای پیکربندی خود را مخفی میکند.
Sysmon (System Monitor)
Retrospective justice for midnight malware

چهار ابزار اول که در بالا توضیح دادم برای گرفتن موارد در حین عمل عالی هستند، اما چه میشود با چیزهایی که فقط وقتی نگاه نمیکنید رخ میدهند؟ بدافزارها اغلب بهصورت زمینهآگاه طراحی میشوند تا وقتی فعالیت کاربر را حس میکنند، ساکت میشوند.
Subscribe to our newsletter for practical Sysinternals tips
به همین دلیل Sysmon نقش خود را ایفا میکند. این برنامه در پسزمینه اجرا میشود و همهٔ آنچه میبیند را در لاگ رویدادهای ویندوز مینویسد. من آن را روی ماشینهایی که میخواهم در طولانیمدت نظارت کنم، نصب میکنم. در مقایسه با بازرسی داخلی ویندوز، Sysmon بهصورت فوقالعادهای جزئیات را ثبت میکند. هشها برای هر برنامهای که بارگذاری میشود، هر اتصال شبکهای که فعال میشود و هر پردازشی که ساخته میشود، ضبط میشود.
ویژگیای که بیشتر به آن وابستهام، Event ID 1 است که ایجاد پردازش را ثبت میکند. این برایم زنجیرهٔ دیجیتالی شواهدی فراهم میکند. بنابراین اگر بیدار شوم و فایلی ناشناخته روی دسکتاپ من پیدا کنم، میتوانم شب قبل را برگردانم و دقیقاً ببینم چه چیزی آن را ساخته، چه زمانی و از چه خط فرمانی استفاده شده.
Stop guessing and start hunting
با استفاده از این پنج ابزار Sysinternals، احساس میکنم کنترل بیشتری بر امنیت PC ویندوزم دارم. آنها به من کمک کردند تا مشکلاتی را که نرمافزارهای ضدویروس استاندارد گاهی نادیده میگیرند، شناسایی و رفع کنم. بهترین بخش این است که همه این ابزارها رایگان و قابل حملاند؛ میتوانید آنها را روی هر ماشین ویندوزی اجرا کنید (و مایکروسافت بهروزرسانیهایشان را با نسخههای جدید سیستمعامل هماهنگ میکند). اگر کاربر فنی یا کنجکاو باشید، به شما پیشنهاد میکنم آنها را امتحان کنید. نه تنها تواناییتان در شناسایی رفتارهای مشکوک زودتر ارتقا مییابد، بلکه دربارهٔ نحوهٔ کار ویندوز زیر پوسته نیز چیزهای زیادی میآموزید.
در تجربهٔ من، کمی تحقیق مستقیم با ابزارهای Sysinternals میتواند راه طولانی برای پاک نگه داشتن سیستم و آرامش ذهنی شما باشد وقتی چیزی «نامعمول» به نظر میرسد. خوش بقیهگیری!