عادتی دارم که شاید آن را بدگمانی بنامید: همین که صدای فن رایانهام از حد معمول بلندتر میشود، در «مدیر وظایف» به جستوجو میافتم تا بهاصطلاح «دزد را وسط سرقت گیر بیندازم». هفتهٔ گذشته این عادت به کارم آمد؛ با این تفاوت که این بار «دزد» فرایندی بود که پیشتر هرگز به آن شک نکرده بودم.
سرانجام فهمیدم مشکل بزرگتر این نبود که فرایندی را نمیشناختم؛ مشکل این بود که راه مطمئنی برای تشخیص اینکه آیا اصلاً ارزش بررسی دارد یا نه، نداشتم.
فرایندی در فهرستم که واقعاً نمیتوانستم توضیحش دهم
نامش هیچ سرنخی نمیداد، اما فایل اصلی داستان دیگری داشت





هنگام مرور فهرست در Process Explorer، سطری که توجهم را جلب کرد RuntimeBroker.exe با شناسهٔ فرایند ۱۸۹۰۰ بود. این فرایند حدود ۷.8MB حافظهٔ خصوصی مصرف میکرد. شاید بهتنهایی اعتنایی به آن نمیکردم، اما وقتی چهار نمونهٔ دیگر از همین فرایند را دیدم، آنقدر کنجکاو شدم که بررسیاش کنم.
همهٔ آنها با شناسههای فرایند متفاوتی اجرا میشدند: ۱۸۹۰۰، ۲۳۰۳۶، ۱۹۶۱۶، ۲۰۹۳۶ و ۷۱۰۴؛ و هرکدام میزان اندکی متفاوت از حافظه را مصرف میکردند.
خود نام «RuntimeBroker» سرنخ چندانی به من نمیداد. حتی مدتی مطمئن بودم این دقیقاً همان نامی است که یک کلاهبردار روی فرایندی جعلی میگذارد؛ نامی که همزمان مبهم و رسمی به نظر میرسید.
بنابراین روی آن راستکلیک کردم و به سراغ ویژگیهایش رفتم. در پنجرهٔ «ویژگیها» اطلاعاتی فراتر از نام فرایند میدیدم؛ از جمله مسیر فایل اجرایی و اطلاعات امضای دیجیتال آن.
تنها چند ثانیه طول کشید تا از یک گمان به پاسخهای واقعی برسم. همین تجربه شیوهٔ برخوردم با فرایندها را تغییر داد. لازم نبود تکتک فرایندها را بشناسم؛ کافی بود راهی برای کسب اطلاعات بیشتر دربارهٔ آنها داشته باشم.
از یک نظر دوم کمک گرفتم
بررسی سابقهای که ویروستوتال از قبل داشت

با نگاه به ستون «نام شرکت» در Process Explorer دیدم که این فایل دارای امضای Microsoft Corporation است. مسیر فایل نیز نشان میداد که از System32 اجرا میشود. این دو نکته احتمال جعلیبودن RuntimeBroker را بسیار کمتر میکرد، اما حاضر نبودم به «ظاهراً مشکلی ندارد» بسنده کنم.
پس ستون دیگری را فعال کردم. مسیر «گزینهها > VirusTotal.com > بررسی VirusTotal.com» را پیمودم و سپس شرایط استفاده را که فقط همان یک بار نمایش داده میشد، پذیرفتم. چند ثانیه بعد، اطلاعات ستون نمایان شد.
نکتهای که پسندیدم این بود که Process Explorer ابتدا هش فایل را با دادههای VirusTotal تطبیق میداد و نسخهٔ فایل اجرایی موجود در رایانهام را خودکار بارگذاری نمیکرد. اگر آن هش پیشتر در پایگاه داده ثبت شده بود، VirusTotal میتوانست نتیجهٔ موجود را بازگرداند. اگر فایلی هنوز شناختهشده نباشد، Process Explorer گزینهای نیز برای فرستادن آن بهمنظور بررسی فراهم میکند؛ بنابراین این یکپارچگی را تضمینی برای خارجنشدن فایلها از رایانه نمیدانستم.
هنگامی که این فرایند مشخص را بررسی کردم، نتیجهٔ آن ۰/۷۶ بود. با کلیک روی مدخل VirusTotal، به صفحهای هدایت شدم که نوشته بود: «هیچیک از عرضهکنندگان محصولات امنیتی این فایل را مخرب تشخیص ندادهاند.»
تصور میکردم VirusTotal واقعاً همان لحظه پویش زندهٔ ویروس انجام میدهد، اما چنین نبود. این سرویس در عوض، پایگاه دادهای بزرگ و پیوسته بهروزشونده را جستوجو میکند تا ببیند آیا فایل پیشتر مشاهده شده است و شرکتهای امنیتی دربارهٔ آن چه گزارشی دادهاند.
آن عدد پاسخی نبود که گمان میکردم
تنها وقتی معنا یافت که دیگر جداگانه تفسیرش نکردم

وقتی نتیجهٔ پاک VirusTotal را دیدم، وسوسه شدم همان را پایان بررسی بدانم. اما نتیجهٔ «صفر شناسایی» ثابت نمیکند که فایل امن است؛ ممکن است صرفاً به این معنا باشد که هیچیک از موتورهای مشارکتکننده آن را مخرب تشخیص ندادهاند، یا فایل آنقدر تازه یا نامعمول است که امضاها و روشهای شناسایی موجود هنوز قادر به یافتنش نیستند.
از سوی دیگر، ثبت تنها یک مورد شناسایی در میان موتورهای گوناگون نیز لزوماً بدافزاربودن فایل را تأیید نمیکند. یک تشخیص منفرد ممکن است هشدار مثبت کاذب باشد.
بنابراین آنچه تکلیف را برایم روشن کرد، تنها VirusTotal نبود. با خواندن آن ستون و درنظرگرفتن همهٔ اطلاعاتی که Process Explorer پیشتر نشانم داده بود، به نتیجه رسیدم. دربارهٔ این فایل مشخص، مطمئن شدم که دقیقاً در مسیری قرار دارد که نسخهٔ واقعی RuntimeBroker باید آنجا باشد و امضای دیجیتالش نیز Microsoft را بهعنوان امضاکننده معرفی میکند. مجموع این شواهد مشخص کرد تا چه اندازه میتوانم به آن فرایند اعتماد کنم.
به این ترتیب بررسی میکردم که آیا مسیر فایل، امضاکننده و نتیجهٔ VirusTotal همگی روایت یکسانی دارند یا نه.
هنوز بیشتر فرایندهای در حال اجرا را نمیشناسم
وقتی Process Explorer را بستم، هنوز نمیدانستم نیمی از فرایندها در استفادهٔ روزمره از رایانهام دقیقاً چه میکنند؛ اما دیگر با این موضوع مشکلی ندارم.
| چه چیزی توجهم را جلب میکند | در گام بعد چه چیزی را بررسی میکنم |
|---|---|
| فرایندی که نمیشناسم | محل واقعی فایل آن |
| محل واقعی فایل آن | اینکه چه کسی آن را امضا کرده است |
| هنوز هم چیزی جور درنمیآید | آنچه VirusTotal از پیش دربارهاش میداند |
| چند نشانه که همگی به یک نتیجه میرسند | ارزش بررسی دقیقتر را دارد |
svchost.exe بهتر از RuntimeBroker.exe منظورم را روشن کرد. یکی از نمونههای آن (PID ۱۳۵۲) حدود ۲۰ MB حافظهٔ خصوصی مصرف میکرد. نام این فرایند یکی از آشناترین نامها در Windows است، اما این آشنایی نشان نمیدهد که آن نمونهٔ مشخص میزبان کدام سرویسهاست. نام فرایند بهتنهایی کافی نیست. از آنجا که بدافزارها گاهی از نامهای ظاهراً آشنا استفاده میکنند، باید بررسی کرد فایل اجرایی در کجای دستگاه قرار دارد و چه کسی آن را امضا کرده است.
هنوز هم بسیاری از فرایندها را نمیشناسم، اما شناختن همهٔ آنها دیگر هدفم نیست. حالا اگر فرایندی برایم ناآشنا باشد، بهجای آنکه تنها از روی نامش داوری کنم، راهی دارم تا بفهمم آیا ارزش بررسی بیشتر را دارد یا نه.
Process Explorer چندین راه برای بررسی این فرایندها در اختیارم میگذارد، بیآنکه لازم باشد از همان ابتدا تکتک آنها را بشناسم.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Afam Onyimadu است. مشاهده مقاله اصلی