قبل از شروع صحبت ، به تعریفی از service میپردازیم.

Service فقط یک application یا برنامه است، نه چیزی اضافه تر دارد و نه چیزی از یک برنامه کمتر دارد. مهمترین مزیتش هم این است که برای اجرا و انجام وظایفش نیاز به کاربر ندارد یعنی بدون دخالت کاربر فعالیتهای خود را انجام میدهد و کاربر تنها میتواند آنرا مدیریت کند. وظیفه اش هم این است که به مواردی مثل پایگاه های داده، بکاپ ها و مواردی این چنین اجازه اجرا میدهد و بدون دخالت کاربر فعالیت آنها را مدیریت میکند.

وقتی شما Task Manager  یا  Process Explorerرا باز میکنید، تعداد زیادی Service در حال اجرا میبینید. سوالی که پیش میاید این است که یک service  چه تاثیری روی سیستم ما دارد؟ به خصوص وقتی سیستم ما توسط یک نرم افزار مخرب (malware) صدمه میبیند.

برای جواب باید بررسی کنیم که کدام نرم افزار جاسوس یا مخربی میتواند یک Process را وارد سرویسی کند که نباید در آن باشد. Serviceها از svchost.exe استفاده میکنند، مانند تصویر زیر:

  • svchost.exe چیست؟ مطابق تعریف مایکروسافت، نام عمومی process میزبانیست برای سرویسهایی که از طریق dynamic-link libraries (dll) اجرا میشوند.

یعنی چه؟

چند سال پیش، مایکروسافت تمام عملکردهای داخلی serviceهای ویندوز را از exe  به dllها منتقل کرد. از نگاه برنامه نویسی، با این کار قابلیت استفاده مجدد را فراهم آورد. اما مشکل اینجاست که فایلهای dll را نمیتوان توسط ویندوز اجرا کرد و برای اجرا میبایست هر بار به یک فایل exe تبدیل شود. اینجا بود که svchost.exe به وجود آمد.**

با این توضیحات، آیا یک Service میتواند ورودی‌های کیبورد را ذخیره کند؟ یا Screenshot بگیرد؟ با اینترنت ارتباط برقرار کند؟ به بقیه Processها صدمه بزند؟ جوابمان بله است، همانطور که گفتیم یک Service از svchost استفاده میکند که کارش فراخوانی dllهاست و با دادن اجازه دسترسی مناسب، هر کاری میتواند انجام دهد.

 ویروسها و نرم افزارهای مخرب هم یا پشت پروسسهای svchost پنهان میشوند و یا نامشان را برای جلوگیری از شناسایی شدن به svchost.exe تغییر میدهند.

0
    0
    سبد خرید شما
    سبد خرید خالی استبازگشت به فروشگاه